Mercurial > hg > easaier-soundaccess
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; }