diff options
Diffstat (limited to 'Source/QtDialog')
-rw-r--r-- | Source/QtDialog/CMakeSetupDialog.cxx | 42 | ||||
-rw-r--r-- | Source/QtDialog/CMakeSetupDialog.h | 2 | ||||
-rw-r--r-- | Source/QtDialog/CMakeSetupDialog.ui | 16 |
3 files changed, 43 insertions, 17 deletions
diff --git a/Source/QtDialog/CMakeSetupDialog.cxx b/Source/QtDialog/CMakeSetupDialog.cxx index 0da6543..32e6516 100644 --- a/Source/QtDialog/CMakeSetupDialog.cxx +++ b/Source/QtDialog/CMakeSetupDialog.cxx @@ -78,9 +78,11 @@ CMakeSetupDialog::CMakeSetupDialog() this->AddEntry->setEnabled(false); bool groupView = settings.value("GroupView", false).toBool(); - this->CacheValues->cacheModel()->setViewType(groupView ? - QCMakeCacheModel::GroupView : QCMakeCacheModel::FlatView); - this->CacheValues->setRootIsDecorated(groupView); + if(groupView) + { + this->setViewType(2); + this->ViewType->setCurrentIndex(2); + } QMenu* FileMenu = this->menuBar()->addMenu(tr("&File")); this->ReloadCacheAction = FileMenu->addAction(tr("&Reload Cache")); @@ -118,11 +120,6 @@ CMakeSetupDialog::CMakeSetupDialog() this, SLOT(setDebugOutput(bool))); OptionsMenu->addSeparator(); - QAction* groupAction = OptionsMenu->addAction(tr("&Group Entries")); - groupAction->setCheckable(true); - groupAction->setChecked(this->CacheValues->cacheModel()->viewType() == QCMakeCacheModel::GroupView); - QObject::connect(groupAction, SIGNAL(toggled(bool)), - this, SLOT(toggleGroupView(bool))); QAction* expandAction = OptionsMenu->addAction(tr("&Expand Grouped Entries")); QObject::connect(expandAction, SIGNAL(triggered(bool)), this->CacheValues, SLOT(expandAll())); @@ -214,8 +211,8 @@ void CMakeSetupDialog::initialize() SIGNAL(outputMessage(QString)), this, SLOT(message(QString))); - QObject::connect(this->Advanced, SIGNAL(clicked(bool)), - this->CacheValues, SLOT(setShowAdvanced(bool))); + QObject::connect(this->ViewType, SIGNAL(currentIndexChanged(int)), + this, SLOT(setViewType(int))); QObject::connect(this->Search, SIGNAL(textChanged(QString)), this->CacheValues, SLOT(setSearchFilter(QString))); @@ -931,13 +928,30 @@ void CMakeSetupDialog::setDebugOutput(bool flag) "setDebugOutput", Qt::QueuedConnection, Q_ARG(bool, flag)); } -void CMakeSetupDialog::toggleGroupView(bool f) +void CMakeSetupDialog::setViewType(int v) { - this->CacheValues->cacheModel()->setViewType(f ? QCMakeCacheModel::GroupView : QCMakeCacheModel::FlatView); - this->CacheValues->setRootIsDecorated(f); + if(v == 0) // simple view + { + this->CacheValues->cacheModel()->setViewType(QCMakeCacheModel::FlatView); + this->CacheValues->setRootIsDecorated(false); + this->CacheValues->setShowAdvanced(false); + } + else if(v == 1) // advanced view + { + this->CacheValues->cacheModel()->setViewType(QCMakeCacheModel::FlatView); + this->CacheValues->setRootIsDecorated(false); + this->CacheValues->setShowAdvanced(true); + } + else if(v == 2) // grouped view + { + this->CacheValues->cacheModel()->setViewType(QCMakeCacheModel::GroupView); + this->CacheValues->setRootIsDecorated(true); + this->CacheValues->setShowAdvanced(true); + } QSettings settings; settings.beginGroup("Settings/StartPath"); - settings.setValue("GroupView", this->CacheValues->cacheModel()->viewType() == QCMakeCacheModel::GroupView); + settings.setValue("GroupView", v == 2); + } diff --git a/Source/QtDialog/CMakeSetupDialog.h b/Source/QtDialog/CMakeSetupDialog.h index a1be993..964ed61 100644 --- a/Source/QtDialog/CMakeSetupDialog.h +++ b/Source/QtDialog/CMakeSetupDialog.h @@ -75,7 +75,7 @@ protected slots: void addCacheEntry(); void startSearch(); void setDebugOutput(bool); - void toggleGroupView(bool); + void setViewType(int); protected: diff --git a/Source/QtDialog/CMakeSetupDialog.ui b/Source/QtDialog/CMakeSetupDialog.ui index 3f68555..8fab9d5 100644 --- a/Source/QtDialog/CMakeSetupDialog.ui +++ b/Source/QtDialog/CMakeSetupDialog.ui @@ -127,10 +127,22 @@ </widget> </item> <item> - <widget class="QCheckBox" name="Advanced" > + <widget class="QComboBox" name="ViewType" > + <item> <property name="text" > - <string>Show Ad&vanced Entries</string> + <string>Simple View</string> </property> + </item> + <item> + <property name="text" > + <string>Advanced View</string> + </property> + </item> + <item> + <property name="text" > + <string>Grouped View</string> + </property> + </item> </widget> </item> <item> |