diff options
author | Tomaz Canabrava <tcanabrava@kde.org> | 2013-08-13 10:49:59 -0300 |
---|---|---|
committer | Tomaz Canabrava <tcanabrava@kde.org> | 2013-08-13 10:49:59 -0300 |
commit | 6da2d40d3c6f288695ece0384bbad229b345f2b8 (patch) | |
tree | 6f3983578ba05e134f32872d6b041828743ed807 /qt-ui | |
parent | 84f73a5fb199d79bcf79eaeab52ce1198668c3cb (diff) | |
download | subsurface-6da2d40d3c6f288695ece0384bbad229b345f2b8.tar.gz |
Added completion for buddy, divemaster, location and suit.
Added completion for buddy, divemaster, location and suit.
The completions uses some models that I created in the last
commit - everytime that a divelog file is loaded, it creates
a list of completion items.
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Diffstat (limited to 'qt-ui')
-rw-r--r-- | qt-ui/maintab.cpp | 16 | ||||
-rw-r--r-- | qt-ui/maintab.h | 10 |
2 files changed, 26 insertions, 0 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp index f2fed0921..44429f8c8 100644 --- a/qt-ui/maintab.cpp +++ b/qt-ui/maintab.cpp @@ -12,8 +12,10 @@ #include "divelistview.h" #include "modeldelegates.h" #include "globe.h" +#include "completionmodels.h" #include <QLabel> +#include <QCompleter> #include <QDebug> #include <QSet> #include <QSettings> @@ -94,6 +96,16 @@ MainTab::MainTab(QWidget *parent) : QTabWidget(parent), ui->weights->setItemDelegateForColumn(WeightModel::TYPE, new WSInfoDelegate()); connect(this, SIGNAL(currentChanged(int)), this, SLOT(tabChanged(int))); + + completers.buddy = new QCompleter(BuddyCompletionModel::instance(), ui->buddy); + completers.divemaster = new QCompleter(DiveMasterCompletionModel::instance(), ui->divemaster); + completers.location = new QCompleter(LocationCompletionModel::instance(), ui->location); + completers.suit = new QCompleter(SuitCompletionModel::instance(), ui->suit); + ui->buddy->setCompleter(completers.buddy); + ui->divemaster->setCompleter(completers.divemaster); + ui->location->setCompleter(completers.location); + ui->suit->setCompleter(completers.suit); + initialUiSetup(); } @@ -348,6 +360,10 @@ void MainTab::addWeight_clicked() void MainTab::reload() { + SuitCompletionModel::instance()->updateModel(); + BuddyCompletionModel::instance()->updateModel(); + LocationCompletionModel::instance()->updateModel(); + DiveMasterCompletionModel::instance()->updateModel(); } void MainTab::on_editAccept_clicked(bool edit) diff --git a/qt-ui/maintab.h b/qt-ui/maintab.h index 745f401a4..8c398a77d 100644 --- a/qt-ui/maintab.h +++ b/qt-ui/maintab.h @@ -12,6 +12,8 @@ #include "models.h" +class QCompleter; + namespace Ui { class MainTab; @@ -27,6 +29,13 @@ struct NotesBackup{ QString divemaster; }; +struct Completers{ + QCompleter *location; + QCompleter *divemaster; + QCompleter *buddy; + QCompleter *suit; +}; + class MainTab : public QTabWidget { Q_OBJECT @@ -72,6 +81,7 @@ private: QPushButton *addCylinder; QPushButton *addWeight; enum { NONE, DIVE, TRIP } editMode; + Completers completers; void enableEdition(); }; |