From ebe71e90c0103108ab7510d1283f2d72dd6e581f Mon Sep 17 00:00:00 2001 From: "Zheng, Lei" Date: Sat, 16 Apr 2022 09:58:15 +0800 Subject: [PATCH] Gui: hiding detail dependency information in DlgObjectSelection --- src/Gui/DlgObjectSelection.cpp | 21 +++++++++++++++++++++ src/Gui/DlgObjectSelection.h | 1 + src/Gui/DlgObjectSelection.ui | 12 +++++++++++- 3 files changed, 33 insertions(+), 1 deletion(-) diff --git a/src/Gui/DlgObjectSelection.cpp b/src/Gui/DlgObjectSelection.cpp index 3aec2b367c..e34675a1d6 100644 --- a/src/Gui/DlgObjectSelection.cpp +++ b/src/Gui/DlgObjectSelection.cpp @@ -95,6 +95,14 @@ void DlgObjectSelection::init(const std::vector &objs, ui->checkBoxAutoDeps->setChecked(hGrp->GetBool("ObjectSelectionAutoDeps", true)); connect(ui->checkBoxAutoDeps, SIGNAL(toggled(bool)), this, SLOT(onAutoDeps(bool))); + ui->checkBoxShowDeps->setChecked(hGrp->GetBool("ObjectSelectionShowDeps", false)); + QObject::connect(ui->checkBoxShowDeps, &QCheckBox::toggled, + [this](bool checked) { + hGrp->SetBool("ObjectSelectionShowDeps", checked); + onShowDeps(); + }); + QMetaObject::invokeMethod(this, "onShowDeps", Qt::QueuedConnection); + // make sure to show a horizontal scrollbar if needed ui->depList->header()->setSectionResizeMode(0, QHeaderView::ResizeToContents); ui->depList->header()->setSectionResizeMode(1, QHeaderView::ResizeToContents); @@ -661,4 +669,17 @@ void DlgObjectSelection::onAutoDeps(bool checked) onItemSelectionChanged(); } +void DlgObjectSelection::onShowDeps() +{ + bool checked = ui->checkBoxShowDeps->isChecked(); + auto sizes = ui->vsplitter->sizes(); + if (!checked && sizes[1] > 0) + sizes[1] = 0; + else if (checked && (sizes[0] == 0 || sizes[1] == 0)) + sizes[0] = sizes[1] = this->width()/2; + else + return; + ui->vsplitter->setSizes(sizes); +} + #include "moc_DlgObjectSelection.cpp" diff --git a/src/Gui/DlgObjectSelection.h b/src/Gui/DlgObjectSelection.h index cb7ade0e1c..2cf17723bb 100644 --- a/src/Gui/DlgObjectSelection.h +++ b/src/Gui/DlgObjectSelection.h @@ -102,6 +102,7 @@ private Q_SLOTS: void onAutoDeps(bool); void onItemExpanded(QTreeWidgetItem *item); void onUseOriginalsBtnClicked(); + void onShowDeps(); private: QTreeWidgetItem *getItem(App::DocumentObject *obj, diff --git a/src/Gui/DlgObjectSelection.ui b/src/Gui/DlgObjectSelection.ui index af4c6fdd1e..b6180d4491 100644 --- a/src/Gui/DlgObjectSelection.ui +++ b/src/Gui/DlgObjectSelection.ui @@ -6,7 +6,7 @@ 0 0 - 621 + 795 375 @@ -158,6 +158,16 @@ + + + + Show dependencies + + + true + + +