1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
| #include "qmnation.h"
#include "ui_qmbase.h"
#include <QLabel>
#include <QHBoxLayout>
#include <QGraphicsView>
#include <QDataWidgetMapper>
#include <QSqlTableModel>
QMNation::QMNation(QWidget *parent) :
QMBase("nation",0,true,parent)
{
setupUI(this);
populateMapper();
}
void QMNation::retranslateUI(QWidget *w)
{
lAbrev->setText(QApplication::translate("QMNation","Abr\303\251viation :", 0, QApplication::UnicodeUTF8));
lDrap->setText(QApplication::translate("QMNation","Drapeau :", 0, QApplication::UnicodeUTF8));
}
void QMNation::setupUI(QWidget *w)
{
// Retirer le spacer vertical pour le remettre correctement plus tard
getUi()->glContenu->removeItem(getUi()->verticalSpacer_2);
// Label pour l'abréviation
lAbrev = new QLabel(w);
lAbrev->setObjectName(QString::fromUtf8("lAbrev"));
lAbrev->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
hl1 = new QHBoxLayout(w);
hl1->setObjectName(QString::fromUtf8("hl1"));
hl1->setContentsMargins(0, 0, 0, 0);
// Edit pour l'abréviation
eAbrev = new QLineEdit(w);
eAbrev->setObjectName(QString::fromUtf8("eAbrev"));
QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(eAbrev->sizePolicy().hasHeightForWidth());
eAbrev->setSizePolicy(sizePolicy);
eAbrev->setMaximumSize(QSize(50, 16777215));
hl1->addWidget(eAbrev);
// Espaceur pour la bonne place
hsp1 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
// Insérer les contrôles dans le layout.
getUi()->glContenu->addWidget(lAbrev, 1, 0, 1, 1);
getUi()->glContenu->addItem(hl1, 1, 1, 1, 1);
hl1->addWidget(eAbrev);
hl1->addItem(hsp1);
// Drapeau - de la même façon
lDrap = new QLabel(w);
lDrap->setObjectName(QString::fromUtf8("lDrap"));
lDrap->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
hl2 = new QHBoxLayout(w);
hl2->setObjectName(QString::fromUtf8("hl2"));
hl2->setContentsMargins(0, 0, 0, 0);
glDrap = new QGraphicsView(w);
glDrap->setObjectName(QString::fromUtf8("glDrap"));
QSizePolicy sizePolicy2(QSizePolicy::Fixed, QSizePolicy::Fixed);
sizePolicy2.setHorizontalStretch(0);
sizePolicy2.setVerticalStretch(0);
sizePolicy2.setHeightForWidth(glDrap->sizePolicy().hasHeightForWidth());
glDrap->setSizePolicy(sizePolicy2);
glDrap->setMaximumSize(QSize(120, 80));
hl2->addWidget(glDrap);
// Espaceur pour la bonne place
hsp2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
// Insérer les contrôles dans le layout.
getUi()->glContenu->addWidget(lDrap, 2, 0, 1, 1);
getUi()->glContenu->addItem(hl2, 2, 1, 1, 1);
hl2->addWidget(glDrap);
hl2->addItem(hsp2);
// On déplace le compresseur de lignes
getUi()->glContenu->addItem(getUi()->verticalSpacer_2, 3, 0, 1, 1);
QMetaObject::connectSlotsByName(w);
retranslateUI(w);
}
void QMNation::populateMapper()
{
getMapper()->addMapping(eAbrev, dynamic_cast<QSqlTableModel *>(getMapper()->model())->fieldIndex("Abréviation"));
getMapper()->toFirst();
} |
Partager