summaryrefslogtreecommitdiffstats
path: root/qt-ui/completionmodels.cpp
diff options
context:
space:
mode:
authorGravatar Maximilian Güntner <maximilian.guentner@gmail.com>2013-11-02 02:20:02 +0100
committerGravatar Maximilian Güntner <maximilian.guentner@gmail.com>2013-11-02 03:37:31 +0100
commit04cdfce782f2a104ab5d0ee92de67c7b6271835b (patch)
treef937c8c8a005ef00f880bbcd3d7c56fd043ddfeb /qt-ui/completionmodels.cpp
parent6fe8cb652191728586f3731dcf6688b5a5b3efbb (diff)
downloadsubsurface-04cdfce782f2a104ab5d0ee92de67c7b6271835b.tar.gz
Added a custom widget for tagging dives
A custom tag widget has been added to MainTab. Tags are seperated by a comma ",". The implementation supports escaping a comma by using "\,". While typing, the widget supports the user by suggesting tags using a QCompleter. Signed-off-by: Maximilian Güntner <maximilian.guentner@gmail.com>
Diffstat (limited to 'qt-ui/completionmodels.cpp')
-rw-r--r--qt-ui/completionmodels.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/qt-ui/completionmodels.cpp b/qt-ui/completionmodels.cpp
index 8bd4f5441..31733addb 100644
--- a/qt-ui/completionmodels.cpp
+++ b/qt-ui/completionmodels.cpp
@@ -12,6 +12,7 @@ CREATE_SINGLETON(BuddyCompletionModel);
CREATE_SINGLETON(DiveMasterCompletionModel);
CREATE_SINGLETON(LocationCompletionModel);
CREATE_SINGLETON(SuitCompletionModel);
+CREATE_SINGLETON(TagCompletionModel);
#undef CREATE_SINGLETON
@@ -35,3 +36,15 @@ CREATE_UPDATE_METHOD(DiveMasterCompletionModel, divemaster);
CREATE_UPDATE_METHOD(LocationCompletionModel, location);
CREATE_UPDATE_METHOD(SuitCompletionModel, suit);
+void TagCompletionModel::updateModel()
+{
+ if(g_tag_list == NULL)
+ return;
+ QStringList list;
+ struct tag_entry *current_tag_entry = g_tag_list->next;
+ while (current_tag_entry != NULL) {
+ list.append(QString(current_tag_entry->tag->name));
+ current_tag_entry = current_tag_entry->next;
+ }
+ setStringList(list);
+}