Gui: implement handling of Combo, Property and Tree view

This commit is contained in:
wmayer
2022-09-16 10:10:28 +02:00
parent 4fcddc71ab
commit dc6ce5a08b
5 changed files with 68 additions and 53 deletions

View File

@@ -469,11 +469,11 @@ void MainWindow::setupDockWindows()
if (ht != config.end())
hiddenDockWindows = ht->second;
bool treeView = setupTreeView(hiddenDockWindows);
bool propertyView = setupPropertyView(hiddenDockWindows);
setupTreeView(hiddenDockWindows);
setupPropertyView(hiddenDockWindows);
setupTaskView(hiddenDockWindows);
setupSelectionView(hiddenDockWindows);
setupComboView(hiddenDockWindows, !treeView || !propertyView);
setupComboView(hiddenDockWindows);
// Report view must be created before PythonConsole!
setupReportView(hiddenDockWindows);
@@ -492,7 +492,7 @@ bool MainWindow::setupTreeView(const std::string& hiddenDockWindows)
bool enabled = group->GetBool("Enabled", true);
if (enabled != group->GetBool("Enabled", false)) {
enabled = App::GetApplication().GetUserParameter().GetGroup("BaseApp")
->GetGroup("MainWindow")->GetGroup("DockWindows")->GetBool("Std_TreeView",false);
->GetGroup("MainWindow")->GetGroup("DockWindows")->GetBool("Std_TreeView", true);
}
group->SetBool("Enabled", enabled); //ensure entry exists.
if (enabled) {
@@ -537,7 +537,7 @@ bool MainWindow::setupPropertyView(const std::string& hiddenDockWindows)
bool enabled = group->GetBool("Enabled", true);
if (enabled != group->GetBool("Enabled", false)) {
enabled = App::GetApplication().GetUserParameter().GetGroup("BaseApp")
->GetGroup("MainWindow")->GetGroup("DockWindows")->GetBool("Std_PropertyView",false);
->GetGroup("MainWindow")->GetGroup("DockWindows")->GetBool("Std_PropertyView", true);
}
group->SetBool("Enabled", enabled); //ensure entry exists.
if (enabled) {
@@ -572,23 +572,23 @@ bool MainWindow::setupSelectionView(const std::string& hiddenDockWindows)
return false;
}
bool MainWindow::setupComboView(const std::string& hiddenDockWindows, bool enable)
bool MainWindow::setupComboView(const std::string& hiddenDockWindows)
{
// Combo view
if (hiddenDockWindows.find("Std_ComboView") == std::string::npos) {
if (!enable) {
ParameterGrp::handle group = App::GetApplication().GetUserParameter().
GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("DockWindows")->GetGroup("ComboView");
enable = group->GetBool("Enabled", true);
ParameterGrp::handle group = App::GetApplication().GetUserParameter().
GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("DockWindows")->GetGroup("ComboView");
bool enable = group->GetBool("Enabled", false);
if (enable) {
auto pcComboView = new ComboView(nullptr, this);
pcComboView->setObjectName(QString::fromLatin1(QT_TRANSLATE_NOOP("QDockWidget", "Model")));
pcComboView->setMinimumWidth(150);
DockWindowManager* pDockMgr = DockWindowManager::instance();
pDockMgr->registerDockWindow("Std_ComboView", pcComboView);
return true;
}
auto pcComboView = new ComboView(nullptr, this);
pcComboView->setObjectName(QString::fromLatin1(QT_TRANSLATE_NOOP("QDockWidget", "Model")));
pcComboView->setMinimumWidth(150);
DockWindowManager* pDockMgr = DockWindowManager::instance();
pDockMgr->registerDockWindow("Std_ComboView", pcComboView);
return true;
}
return false;