diff options
author | Alessandro Portale <alessandro.portale@theqtcompany.com> | 2016-04-16 20:59:42 +0200 |
---|---|---|
committer | Alessandro Portale <alessandro.portale@theqtcompany.com> | 2016-04-18 11:25:37 +0000 |
commit | 397ebcac92ad9ca620ef280b8fc6c7f697c6e28b (patch) | |
tree | d073de33d3fb802236efdc06c52b20627a0b6a89 | |
parent | 7c0e76aee415300b4c391fca191164321e78b035 (diff) |
Debugger: Enabled state of "Threads:" label depends on thread combobox
...and making sure that items of a disabled combobox are visibly
disabled.
This prevents users from clicking on the Threads label before debugging
even started.
Change-Id: I59cc9b7e875fe8c126a9ee4221ff9d8322e4b1a8
Reviewed-by: hjk <hjk@theqtcompany.com>
-rw-r--r-- | src/plugins/coreplugin/manhattanstyle.cpp | 11 | ||||
-rw-r--r-- | src/plugins/debugger/debuggerplugin.cpp | 8 |
2 files changed, 14 insertions, 5 deletions
diff --git a/src/plugins/coreplugin/manhattanstyle.cpp b/src/plugins/coreplugin/manhattanstyle.cpp index 913ca572d3..7233e6d5c5 100644 --- a/src/plugins/coreplugin/manhattanstyle.cpp +++ b/src/plugins/coreplugin/manhattanstyle.cpp @@ -245,7 +245,10 @@ QPalette panelPalette(const QPalette &oldPalette, bool lightColored = false) pal.setBrush(QPalette::All, QPalette::WindowText, color); pal.setBrush(QPalette::All, QPalette::ButtonText, color); pal.setBrush(QPalette::All, QPalette::Foreground, color); - color.setAlpha(100); + if (lightColored) + color.setAlpha(100); + else + color = creatorTheme()->color(Theme::IconsDisabledColor); pal.setBrush(QPalette::Disabled, QPalette::WindowText, color); pal.setBrush(QPalette::Disabled, QPalette::ButtonText, color); pal.setBrush(QPalette::Disabled, QPalette::Foreground, color); @@ -740,9 +743,9 @@ void ManhattanStyle::drawControl(ControlElement element, const QStyleOption *opt painter->setPen(StyleHelper::toolBarDropShadowColor()); painter->drawText(editRect.adjusted(1, 0, -1, 0), Qt::AlignLeft | Qt::AlignVCenter, text); } - if (!(option->state & State_Enabled)) - painter->setOpacity(0.8); - painter->setPen(creatorTheme()->color(Theme::ComboBoxTextColor)); + painter->setPen(creatorTheme()->color((option->state & State_Enabled) + ? Theme::ComboBoxTextColor + : Theme::IconsDisabledColor)); painter->drawText(editRect.adjusted(1, 0, -1, 0), Qt::AlignLeft | Qt::AlignVCenter, text); painter->restore(); diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 42fc00a867..89e9023aa4 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -966,6 +966,7 @@ public: QIcon m_locationMarkIcon; + QLabel *m_threadLabel = 0; QComboBox *m_threadBox = 0; BaseTreeView *m_breakView = 0; @@ -1788,7 +1789,9 @@ bool DebuggerPluginPrivate::initialize(const QStringList &arguments, } toolbar.addWidget(new StyledSeparator); - toolbar.addWidget(new QLabel(tr("Threads:"))); + + m_threadLabel = new QLabel(tr("Threads:")); + toolbar.addWidget(m_threadLabel); m_threadBox = new QComboBox; m_threadBox->setSizeAdjustPolicy(QComboBox::AdjustToContents); @@ -2489,6 +2492,8 @@ void DebuggerPluginPrivate::setInitialState() action(AutoDerefPointers)->setEnabled(true); action(ExpandStack)->setEnabled(false); + + m_threadLabel->setEnabled(false); } void DebuggerPluginPrivate::updateState(DebuggerEngine *engine) @@ -2586,6 +2591,7 @@ void DebuggerPluginPrivate::updateState(DebuggerEngine *engine) m_attachToUnstartedApplication->setEnabled(true); m_threadBox->setEnabled(state == InferiorStopOk || state == InferiorUnrunnable); + m_threadLabel->setEnabled(m_threadBox->isEnabled()); const bool isCore = engine->runParameters().startMode == AttachCore; const bool stopped = state == InferiorStopOk; |