summaryrefslogtreecommitdiffstats
path: root/Source/QtDialog
diff options
context:
space:
mode:
Diffstat (limited to 'Source/QtDialog')
-rw-r--r--Source/QtDialog/CMakeSetupDialog.cxx42
-rw-r--r--Source/QtDialog/CMakeSetupDialog.h2
-rw-r--r--Source/QtDialog/CMakeSetupDialog.ui16
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&amp;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>