| @@ -1,6 +1,6 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | |||
| <!DOCTYPE QtCreatorProject> | |||
| <!-- Written by QtCreator 3.0.1, 2014-05-22T15:25:49. --> | |||
| <!-- Written by QtCreator 3.0.1, 2014-05-23T09:46:50. --> | |||
| <qtcreator> | |||
| <data> | |||
| <variable>ProjectExplorer.Project.ActiveTarget</variable> | |||
| @@ -48,12 +48,12 @@ MainWindow::MainWindow(QWidget *parent) : | |||
| QList<ProduitInfo> listInfoProd; | |||
| content >> listInfoProd; | |||
| //QMessageBox::information(this, "test", QString::number(listInfoProd.count())); | |||
| for(ProduitInfo i : listInfoProd) | |||
| ajouterProduit(new ProduitItem(i.nomProduit, i.dateAchat, i.dateFinGarantie, i.image, i.indexMagasin, i.enSAV, i.factures, i.garanties)); | |||
| ajouterProduit(new ProduitItem(this, i.nomProduit, i.dateAchat, i.dateFinGarantie, i.image, i.indexMagasin, i.enSAV, i.factures, i.garanties)); | |||
| } | |||
| ui->actionSupprimerProduit->setEnabled(false); | |||
| ui->statusBar->hide(); | |||
| } | |||
| void MainWindow::searchProduit(QString search) | |||
| @@ -82,7 +82,7 @@ void MainWindow::searchProduit(QString search) | |||
| void MainWindow::on_actionNouveauProduit_triggered() | |||
| { | |||
| ProduitItem *prod = new ProduitItem("Nouveau produit", QDate::currentDate(), QDate::currentDate().addYears(1)); | |||
| ProduitItem *prod = new ProduitItem(this, "Nouveau produit", QDate::currentDate(), QDate::currentDate().addYears(1)); | |||
| prod->openDialog(); | |||
| ajouterProduit(prod); | |||
| } | |||
| @@ -110,9 +110,11 @@ void MainWindow::on_actionGererMagasins_triggered() | |||
| void MainWindow::ajouterProduit(ProduitItem *produit) | |||
| { | |||
| QListWidgetItem *widgetItem = new QListWidgetItem(); | |||
| widgetItem->setSizeHint(produit->getImage().size()); | |||
| widgetItem->setSizeHint(QSize(0, 128)); | |||
| ui->listeProduits->addItem(widgetItem); | |||
| ui->listeProduits->setItemWidget(widgetItem, produit); | |||
| //ui->statusBar->showMessage(QString::number(ui->listeProduits->count())+" produits affichés."); | |||
| } | |||
| void MainWindow::on_listeProduits_currentRowChanged() | |||
| @@ -30,7 +30,7 @@ | |||
| <x>0</x> | |||
| <y>0</y> | |||
| <width>707</width> | |||
| <height>25</height> | |||
| <height>21</height> | |||
| </rect> | |||
| </property> | |||
| <property name="nativeMenuBar"> | |||
| @@ -56,6 +56,9 @@ | |||
| <addaction name="menuAide"/> | |||
| </widget> | |||
| <widget class="QToolBar" name="mainToolBar"> | |||
| <property name="movable"> | |||
| <bool>false</bool> | |||
| </property> | |||
| <attribute name="toolBarArea"> | |||
| <enum>TopToolBarArea</enum> | |||
| </attribute> | |||
| @@ -67,6 +70,11 @@ | |||
| <addaction name="separator"/> | |||
| <addaction name="actionGererMagasins"/> | |||
| </widget> | |||
| <widget class="QStatusBar" name="statusBar"> | |||
| <property name="sizeGripEnabled"> | |||
| <bool>false</bool> | |||
| </property> | |||
| </widget> | |||
| <action name="actionNouveauProduit"> | |||
| <property name="text"> | |||
| <string>Nouveau produit...</string> | |||
| @@ -17,9 +17,9 @@ QDataStream &operator >>(QDataStream &in, ProduitInfo &prod) | |||
| return in; | |||
| } | |||
| ProduitItem::ProduitItem(QString nomProduit, QDate dateAchat, QDate dateFinGarantie, QPixmap image, int magasin, | |||
| ProduitItem::ProduitItem(QWidget *parent, QString nomProduit, QDate dateAchat, QDate dateFinGarantie, QPixmap image, int magasin, | |||
| bool enSAV, QHash<QString, QByteArray> factures, QHash<QString, QByteArray> garanties) : | |||
| QWidget(), | |||
| QWidget(parent), | |||
| ui(new Ui::ProduitItem) | |||
| { | |||
| ui->setupUi(this); | |||
| @@ -40,17 +40,9 @@ ProduitItem::ProduitItem(QString nomProduit, QDate dateAchat, QDate dateFinGaran | |||
| ui->btnMoreInfo->setToolTip("Ouvre une fenêtre contenant toutes les informations\nsur votre "+nomProduit+"."); | |||
| } | |||
| ProduitItem::ProduitItem(ProduitInfo prod) : | |||
| QWidget(), | |||
| ui(new Ui::ProduitItem) | |||
| { | |||
| ProduitItem(prod.nomProduit, prod.dateAchat, prod.dateFinGarantie, prod.image, prod.indexMagasin, prod.enSAV, prod.factures, prod.garanties); | |||
| ui->setupUi(this); | |||
| } | |||
| void ProduitItem::on_btnMoreInfo_clicked() | |||
| { | |||
| InfosProduitDialog *winInfoProd = new InfosProduitDialog(this, nomProduit, dateAchat, dateFinGarantie, image, indexMagasin, enSAV, factures, garanties); | |||
| InfosProduitDialog *winInfoProd = new InfosProduitDialog(this->parentWidget(), nomProduit, dateAchat, dateFinGarantie, image, indexMagasin, enSAV, factures, garanties); | |||
| winInfoProd->setModal(true); | |||
| winInfoProd->show(); | |||
| } | |||
| @@ -32,19 +32,10 @@ class ProduitItem : public QWidget | |||
| Q_OBJECT | |||
| public: | |||
| explicit ProduitItem(QString nomProduit, QDate dateAchat, QDate dateFinGarantie, QPixmap image = QPixmap(":/images/no-picture.jpg"), int magasin = 0, | |||
| explicit ProduitItem(QWidget *parent, QString nomProduit, QDate dateAchat, QDate dateFinGarantie, QPixmap image = QPixmap(":/images/no-picture.jpg"), int magasin = 0, | |||
| bool enSAV = false, QHash<QString, QByteArray> factures = QHash<QString, QByteArray>(), QHash<QString, QByteArray> garanties = QHash<QString, QByteArray>()); | |||
| explicit ProduitItem(ProduitInfo prod); | |||
| explicit ProduitItem(); | |||
| /*QVector<ProduitItem*> items; | |||
| ProduitInfo info(); | |||
| QVector<ProduitItem> extractInfo(QVector<ProduitItem*> const& v); | |||
| static void save(QDataStream & out, QVector<ProduitInfo> const& v); | |||
| ProduitItem* create(ProduitInfo const& info); | |||
| QVector<ProduitItem*> load(QDataStream & in);*/ | |||
| // Pour la sérialisation | |||
| ProduitInfo getProduitInfo(); | |||