From a7fd9f600e4f03227d8c994c53576f41eaf4f294 Mon Sep 17 00:00:00 2001 From: Peinthor Rene Date: Tue, 16 Apr 2013 17:24:32 +0200 Subject: [PATCH] insert tables/views sorted in browse combobox --- src/MainWindow.cpp | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index 628df4ce..db529009 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -319,15 +319,27 @@ void MainWindow::populateTable( const QString & tablename) void MainWindow::resetBrowser() { - QString sCurrentTable = ui->comboBrowseTable->currentText(); + const QString sCurrentTable = ui->comboBrowseTable->currentText(); ui->comboBrowseTable->clear(); - objectMap tab = db.getBrowsableObjects(); + const objectMap& tab = db.getBrowsableObjects(); + + // fill a objmap which is sorted by table/view names + QMap objmap; for(objectMap::ConstIterator i=tab.begin();i!=tab.end();++i) { - ui->comboBrowseTable->addItem(QIcon(QString(":icons/%1").arg(i.value().gettype())), i.value().getname()); - - //ui->comboBrowseTable->addItems(tab); + objmap[i.value().getname()] = i.value();; } + + // finaly fill the combobox in sorted order + for(QMap::ConstIterator it=objmap.constBegin(); + it!=objmap.constEnd(); + ++it) + { + ui->comboBrowseTable->addItem( + QIcon(QString(":icons/%1").arg((*it).gettype())), + (*it).getname()); + } + setRecordsetLabel(); int pos = ui->comboBrowseTable->findText(sCurrentTable); pos = pos == -1 ? 0 : pos;