diff widgets/ListResultGeneralItemWidget.cpp @ 112:1c638a8e9897

bye bye from silo114
author benoitrigolleau
date Wed, 19 Sep 2007 15:54:32 +0000
parents c107866fd387
children c26c73ca6d37
line wrap: on
line diff
--- a/widgets/ListResultGeneralItemWidget.cpp	Mon Sep 17 16:19:27 2007 +0000
+++ b/widgets/ListResultGeneralItemWidget.cpp	Wed Sep 19 15:54:32 2007 +0000
@@ -16,6 +16,9 @@
 
 #include "CriteriaDialog.h"
 #include <QPixmap>
+#include <QDesktopWidget>
+#include <QSize>
+#include <iostream>
 
 ListResultGeneralItemWidget::ListResultGeneralItemWidget(QWidget *parent):QWidget(parent){
 	vLayout1 = new QVBoxLayout(); 
@@ -31,8 +34,8 @@
 	label4 = new QLabel("4");
 	label5 = new QLabel("le super mega truc des options que même que c'est trop bien");
 
-	m_buttonPrev = new QPushButton("prev");
-	m_buttonSimilar = new QPushButton("similar");
+	m_buttonPrev = new QPushButton();
+	m_buttonSimilar = new QPushButton();
 
 	m_confidenceListWidget= new ConfidenceListWidget();
 	m_confidenceListWidget->setMaximumWidth(180);
@@ -50,10 +53,25 @@
 	m_labelRank->setAlignment(Qt::AlignCenter);
 	m_labelIcon->setAlignment(Qt::AlignCenter);
 
-	m_buttonPrev->setMaximumWidth(60);
-	//m_buttonPrev->setMaximumHeight(40);
-	m_buttonSimilar->setMaximumWidth(60);
-	//m_buttonSimilar->setMaximumHeight(40);
+	m_buttonPrev->setMaximumSize(68,34);
+	m_buttonPrev->setMinimumSize(68,34);
+	m_buttonSimilar->setMaximumSize(64,34);
+	m_buttonSimilar->setMinimumSize(64,34);
+	QSize similarIconSize;
+	QSize prevIconSize;
+	similarIconSize.setHeight(34);
+	similarIconSize.setWidth(64);
+	prevIconSize.setHeight(34);
+	prevIconSize.setWidth(68);
+
+	m_buttonSimilar->setIconSize(similarIconSize);
+	m_buttonPrev->setIconSize(prevIconSize);
+
+
+	m_buttonPrev->setIcon(QIcon(":icons/prev.png"));
+	m_buttonPrev->setFlat(true);
+	m_buttonSimilar->setIcon(QIcon(":icons/similar.png"));
+	m_buttonSimilar->setFlat(true);
 
 	//////////////
 	/*QFrame *vLine = new QFrame();
@@ -178,10 +196,39 @@
 	m_criteriaDialog->addCriteria("criteria 1");
 	m_criteriaDialog->addCriteria("criteria 2");
 	m_criteriaDialog->addCriteria("criteria 3");
-	m_criteriaDialog->setLocation(1000,200);
+
+	QDesktopWidget screen;
+	
+	int wscreen = screen.screenGeometry().width();
+	int hscreen = screen.screenGeometry().height();
+	int wcursor = QCursor::pos().x();
+	int hcursor = QCursor::pos().y();
+	int wdialog = m_criteriaDialog->width();
+	int hdialog = m_criteriaDialog->height();
+	
+	int posx = wcursor;
+	int posy = hcursor;
+
+	if(wcursor+wdialog > wscreen){
+		posx = wscreen - wdialog;
+	}
+	if(hcursor+(hdialog+40) > hscreen){
+		posy = hscreen - (hdialog+40);
+	}
+
+
+	std::cerr << "wscreen:"<< wscreen
+				<<" hscreen:"<<hscreen
+				<<" wdialog:"<<wdialog
+				<<" hdialog:"<<hdialog		
+				<< std::endl;
+
+	m_criteriaDialog->setLocation(posx,posy);
 	m_criteriaDialog->setOpacity(0.9);
 	if(m_criteriaDialog->exec()){
 		 m_waitingWidget->setAnimation(true);
+	}else{
+		 m_waitingWidget->setAnimation(false);
 	}
 	delete m_criteriaDialog;
 }