Skip to content

Commit 7b4a05b

Browse files
committed
Closes #631
1 parent bb3b13a commit 7b4a05b

File tree

9 files changed

+41
-3
lines changed

9 files changed

+41
-3
lines changed

src/Interface/Application/ModuleProxyWidget.cc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,9 @@ void ModuleProxyWidget::showAndColor(const QColor& color)
149149

150150
void ModuleProxyWidget::showAndColorImpl(const QColor& color, int milliseconds)
151151
{
152+
if (timeLine_)
153+
return;
154+
152155
animateColor_ = color;
153156
timeLine_ = new QTimeLine(milliseconds, this);
154157
connect(timeLine_, SIGNAL(valueChanged(qreal)), this, SLOT(colorAnimate(qreal)));
@@ -186,7 +189,11 @@ void ModuleProxyWidget::colorAnimate(qreal val)
186189
}
187190
}
188191
else // 1 = done coloring
192+
{
189193
setGraphicsEffect(nullptr);
194+
delete timeLine_;
195+
timeLine_ = nullptr;
196+
}
190197
}
191198

192199
void ModuleProxyWidget::adjustHeight(int delta)

src/Interface/Application/ModuleWidget.cc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1281,6 +1281,14 @@ void ModuleWidget::showUI()
12811281
dockable_->show();
12821282
}
12831283

1284+
void ModuleWidget::collapsePinnedDialog()
1285+
{
1286+
if (!isViewScene_ && dockable_ && !dockable_->isFloating())
1287+
{
1288+
dialog_->collapse();
1289+
}
1290+
}
1291+
12841292
void ModuleWidget::executeButtonPushed()
12851293
{
12861294
auto skipUpstream = QApplication::keyboardModifiers() == Qt::ShiftModifier;

src/Interface/Application/ModuleWidget.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,7 @@ class ModuleWidget : public QStackedWidget,
164164

165165
QString metadataToString() const;
166166
QDialog* dialog();
167+
void collapsePinnedDialog();
167168

168169
static double highResolutionExpandFactor_;
169170

src/Interface/Application/NetworkEditor.cc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1453,7 +1453,10 @@ void NetworkEditor::restoreAllModuleUIs()
14531453
{
14541454
auto module = getModule(item);
14551455
if (module)
1456+
{
14561457
module->showUI();
1458+
module->collapsePinnedDialog();
1459+
}
14571460
}
14581461
}
14591462

src/Interface/Modules/Base/ModuleButtonBar.cc

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,15 @@ ModuleButtonBar::ModuleButtonBar(ModuleDialogGeneric* parent) : QWidget(parent)
4545
executeToolButton_->setIcon(QPixmap(":/general/Resources/new/modules/run_all.png"));
4646
findToolButton_->setIcon(QPixmap(":/general/Resources/zoom_reset.png"));
4747
helpToolButton_->setIcon(QPixmap(":/general/Resources/new/modules/help.png"));
48+
collapseToolButton_->setIcon(QApplication::style()->standardIcon(QStyle::SP_ToolBarVerticalExtensionButton));
4849

4950
connect(executeDownOnlyToolButton_, SIGNAL(clicked()), parent->getExecuteDownstreamAction(), SIGNAL(triggered()));
5051
connect(executeToolButton_, SIGNAL(clicked()), parent->getExecuteAction(), SIGNAL(triggered()));
5152
connect(closeToolButton_, SIGNAL(clicked()), parent, SIGNAL(closeButtonClicked()));
5253
connect(helpToolButton_, SIGNAL(clicked()), parent, SIGNAL(helpButtonClicked()));
5354
connect(findToolButton_, SIGNAL(clicked()), parent, SIGNAL(findButtonClicked()));
55+
connect(collapseToolButton_, SIGNAL(clicked()), parent, SLOT(toggleCollapse()));
56+
connect(collapseToolButton_, SIGNAL(clicked()), this, SLOT(switchIcons()));
5457
}
5558

5659
void ModuleButtonBar::setTitle(const QString& title)
@@ -62,3 +65,11 @@ void ModuleButtonBar::setTitleVisible(bool visible)
6265
{
6366
titleLabel_->setVisible(visible);
6467
}
68+
69+
void ModuleButtonBar::switchIcons()
70+
{
71+
//TODO
72+
//qDebug() << collapseToolButton_->styleSheet();
73+
//collapseToolButton_->setIcon(QApplication::style()->standardIcon(QStyle::SP_TitleBarShadeButton));
74+
//collapseToolButton_->setIcon(QApplication::style()->standardIcon(QStyle::SP_TitleBarUnshadeButton));
75+
}

src/Interface/Modules/Base/ModuleButtonBar.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ namespace Gui {
4545
explicit ModuleButtonBar(ModuleDialogGeneric* parent = nullptr);
4646
void setTitle(const QString& title);
4747
void setTitleVisible(bool visible);
48+
private Q_SLOTS:
49+
void switchIcons();
4850
};
4951

5052

src/Interface/Modules/Base/ModuleButtonBar.ui

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,13 @@
102102
</property>
103103
</spacer>
104104
</item>
105+
<item>
106+
<widget class="QToolButton" name="collapseToolButton_">
107+
<property name="text">
108+
<string>...</string>
109+
</property>
110+
</widget>
111+
</item>
105112
<item>
106113
<widget class="QToolButton" name="helpToolButton_">
107114
<property name="toolTip">

src/Interface/Modules/Base/ModuleDialogGeneric.cc

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -240,15 +240,13 @@ void ModuleDialogGeneric::doCollapse()
240240
{
241241
if (collapsed_)
242242
{
243-
oldSize_ = size();
243+
oldSize_ = dock_->size();
244244
const int h = std::min(40, oldSize_.height());
245245
const int w = std::min(400, oldSize_.width());
246-
setFixedSize(w, h);
247246
dock_->setFixedSize(w, h);
248247
}
249248
else
250249
{
251-
setFixedSize(oldSize_);
252250
dock_->setFixedSize(oldSize_);
253251
}
254252
}

src/Interface/Modules/Base/ModuleDialogGeneric.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ namespace Gui {
9292
virtual void pull() final;
9393
void moduleSelected(bool selected);
9494
void toggleCollapse();
95+
void collapse() { if (!collapsed_) toggleCollapse(); }
9596
virtual void updateFromPortChange(int numPorts, const std::string& portName, DynamicPortChange type) {}
9697
Q_SIGNALS:
9798
void pullSignal();

0 commit comments

Comments
 (0)