@@ -20,7 +20,7 @@ QgsLoadStyleFromDBDialog::QgsLoadStyleFromDBDialog( QWidget *parent )
20
20
{
21
21
setupUi ( this );
22
22
setWindowTitle ( " Load style from database" );
23
- mSelectedStyleId = tr ( " " ) ;
23
+ mSelectedStyleId = " " ;
24
24
25
25
mLoadButton ->setDisabled ( true );
26
26
mRelatedTable ->setEditTriggers ( QTableWidget::NoEditTriggers );
@@ -35,10 +35,8 @@ QgsLoadStyleFromDBDialog::QgsLoadStyleFromDBDialog( QWidget *parent )
35
35
36
36
connect ( mRelatedTable , SIGNAL ( cellClicked ( int , int ) ), this , SLOT ( cellSelectedRelatedTable ( int ) ) );
37
37
connect ( mOthersTable , SIGNAL ( cellClicked ( int , int ) ), this , SLOT ( cellSelectedOthersTable ( int ) ) );
38
- connect ( mRelatedTable , SIGNAL ( doubleClicked ( QModelIndex ) ),
39
- this , SLOT ( accept () ) );
40
- connect ( mOthersTable , SIGNAL ( doubleClicked ( QModelIndex ) ),
41
- this , SLOT ( accept () ) );
38
+ connect ( mRelatedTable , SIGNAL ( doubleClicked ( QModelIndex ) ), this , SLOT ( accept () ) );
39
+ connect ( mOthersTable , SIGNAL ( doubleClicked ( QModelIndex ) ), this , SLOT ( accept () ) );
42
40
connect ( mCancelButton , SIGNAL ( clicked () ), this , SLOT ( reject () ) );
43
41
connect ( mLoadButton , SIGNAL ( clicked () ), this , SLOT ( accept () ) );
44
42
@@ -59,35 +57,36 @@ QgsLoadStyleFromDBDialog::~QgsLoadStyleFromDBDialog()
59
57
60
58
void QgsLoadStyleFromDBDialog::initializeLists ( QStringList ids, QStringList names, QStringList descriptions, int sectionLimit )
61
59
{
62
- mIds = ids;
63
- mNames = names;
64
- mDescriptions = descriptions;
65
60
mSectionLimit = sectionLimit;
66
- int relatedTableNOfCols = ( sectionLimit > 0 ) ? 2 : 1 ;
67
- int othersTableNOfCols = ( ids.count () - sectionLimit > 0 ) ? 2 : 1 ;
61
+ int relatedTableNOfCols = sectionLimit > 0 ? 2 : 1 ;
62
+ int othersTableNOfCols = ids.count () - sectionLimit > 0 ? 2 : 1 ;
68
63
QString twoColsHeader ( " Name;Description" );
69
64
QString oneColsHeader ( " No styles found in the database" );
70
- QString relatedTableHeader = ( relatedTableNOfCols == 1 ) ? oneColsHeader : twoColsHeader;
71
- QString othersTableHeader = ( othersTableNOfCols == 1 ) ? oneColsHeader : twoColsHeader;
65
+ QString relatedTableHeader = relatedTableNOfCols == 1 ? oneColsHeader : twoColsHeader;
66
+ QString othersTableHeader = othersTableNOfCols == 1 ? oneColsHeader : twoColsHeader;
72
67
73
68
mRelatedTable ->setColumnCount ( relatedTableNOfCols );
74
69
mOthersTable ->setColumnCount ( othersTableNOfCols );
75
70
mRelatedTable ->setHorizontalHeaderLabels ( relatedTableHeader.split ( " ;" ) );
76
71
mOthersTable ->setHorizontalHeaderLabels ( othersTableHeader.split ( " ;" ) );
77
72
mRelatedTable ->setRowCount ( sectionLimit );
78
73
mOthersTable ->setRowCount ( ids.count () - sectionLimit );
79
- mRelatedTable ->setDisabled (( relatedTableNOfCols == 1 ) );
80
- mOthersTable ->setDisabled (( othersTableNOfCols == 1 ) );
74
+ mRelatedTable ->setDisabled ( relatedTableNOfCols == 1 );
75
+ mOthersTable ->setDisabled ( othersTableNOfCols == 1 );
81
76
82
77
for ( int i = 0 ; i < sectionLimit; i++ )
83
78
{
84
- mRelatedTable ->setItem ( i, 0 , new QTableWidgetItem ( names.value ( i, " " ) ) );
79
+ QTableWidgetItem *item = new QTableWidgetItem ( names.value ( i, " " ) );
80
+ item->setData ( Qt::UserRole, ids[i] );
81
+ mRelatedTable ->setItem ( i, 0 , item );
85
82
mRelatedTable ->setItem ( i, 1 , new QTableWidgetItem ( descriptions.value ( i, " " ) ) );
86
83
}
87
84
for ( int i = sectionLimit; i < ids.count (); i++ )
88
85
{
89
86
int j = i - sectionLimit;
90
- mOthersTable ->setItem ( j, 0 , new QTableWidgetItem ( names.value ( i, " " ) ) );
87
+ QTableWidgetItem *item = new QTableWidgetItem ( names.value ( i, " " ) );
88
+ item->setData ( Qt::UserRole, ids[i] );
89
+ mOthersTable ->setItem ( j, 0 , item );
91
90
mOthersTable ->setItem ( j, 1 , new QTableWidgetItem ( descriptions.value ( i, " " ) ) );
92
91
}
93
92
}
@@ -100,11 +99,11 @@ QString QgsLoadStyleFromDBDialog::getSelectedStyleId()
100
99
void QgsLoadStyleFromDBDialog::cellSelectedRelatedTable ( int r )
101
100
{
102
101
mLoadButton ->setEnabled ( true );
103
- mSelectedStyleId = mIds . value ( r );
102
+ mSelectedStyleId = mRelatedTable -> item ( r, 0 )-> data ( Qt::UserRole ). toString ( );
104
103
}
105
104
106
105
void QgsLoadStyleFromDBDialog::cellSelectedOthersTable ( int r )
107
106
{
108
107
mLoadButton ->setEnabled ( true );
109
- mSelectedStyleId = mIds . value ( r + mSectionLimit );
108
+ mSelectedStyleId = mOthersTable -> item ( r, 0 )-> data ( Qt::UserRole ). toString ( );
110
109
}
0 commit comments