From 75c20e4dce0c53cfb5c860fedf165af01acbc66b Mon Sep 17 00:00:00 2001
From: Christian Kandeler <christian.kandeler@nokia.com>
Date: Fri, 24 Feb 2012 16:03:08 +0100
Subject: [PATCH] Run configuration: Make debugger aspect display more
 configurable.

Change-Id: I4da0d92552146b9fa7a2236bce2f2ed0c9fe6147
Reviewed-by: hjk <qthjk@ovi.com>
---
 src/plugins/debugger/debuggerrunner.cpp       |  6 +++++
 .../projectexplorer/runconfiguration.cpp      | 24 +++++++++++++++++++
 .../projectexplorer/runconfiguration.h        |  6 +++++
 3 files changed, 36 insertions(+)

diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp
index 3a3869024c3..daf1e0950e4 100644
--- a/src/plugins/debugger/debuggerrunner.cpp
+++ b/src/plugins/debugger/debuggerrunner.cpp
@@ -212,12 +212,18 @@ DebuggerRunConfigWidget::DebuggerRunConfigWidget(RunConfiguration *runConfigurat
     connect(m_debugServerPort, SIGNAL(valueChanged(int)),
             SLOT(qmlDebugServerPortChanged(int)));
 
+    if (m_aspect->isDisplaySuppressed())
+        hide();
+
     if (m_aspect->areQmlDebuggingOptionsSuppressed()) {
         m_debugServerPortLabel->hide();
         m_debugServerPort->hide();
         m_useQmlDebugger->hide();
     }
 
+    if (m_aspect->areCppDebuggingOptionsSuppressed())
+        m_useCppDebugger->hide();
+
     if (m_aspect->isQmlDebuggingSpinboxSuppressed()) {
         m_debugServerPort->hide();
         m_debugServerPortLabel->hide();
diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp
index 5ccd94de636..765b22b0e15 100644
--- a/src/plugins/projectexplorer/runconfiguration.cpp
+++ b/src/plugins/projectexplorer/runconfiguration.cpp
@@ -203,7 +203,9 @@ DebuggerRunConfigurationAspect::DebuggerRunConfigurationAspect(RunConfiguration
     m_useCppDebugger(true),
     m_useQmlDebugger(AutoEnableQmlDebugger),
     m_qmlDebugServerPort(Constants::QML_DEFAULT_DEBUG_SERVER_PORT),
+    m_suppressDisplay(false),
     m_suppressQmlDebuggingOptions(false),
+    m_suppressCppDebuggingOptions(false),
     m_suppressQmlDebuggingSpinbox(false)
 {}
 
@@ -212,7 +214,9 @@ DebuggerRunConfigurationAspect::DebuggerRunConfigurationAspect(DebuggerRunConfig
     m_useCppDebugger(other->m_useCppDebugger),
     m_useQmlDebugger(other->m_useQmlDebugger),
     m_qmlDebugServerPort(other->m_qmlDebugServerPort),
+    m_suppressDisplay(other->m_suppressDisplay),
     m_suppressQmlDebuggingOptions(other->m_suppressQmlDebuggingOptions),
+    m_suppressCppDebuggingOptions(other->m_suppressCppDebuggingOptions),
     m_suppressQmlDebuggingSpinbox(other->m_suppressQmlDebuggingSpinbox)
 {}
 
@@ -262,21 +266,41 @@ void DebuggerRunConfigurationAspect::setQmllDebugServerPort(uint port)
     m_qmlDebugServerPort = port;
 }
 
+void DebuggerRunConfigurationAspect::suppressDisplay()
+{
+    m_suppressDisplay = true;
+}
+
 void DebuggerRunConfigurationAspect::suppressQmlDebuggingOptions()
 {
     m_suppressQmlDebuggingOptions = true;
 }
 
+void DebuggerRunConfigurationAspect::suppressCppDebuggingOptions()
+{
+    m_suppressCppDebuggingOptions = true;
+}
+
 void DebuggerRunConfigurationAspect::suppressQmlDebuggingSpinbox()
 {
     m_suppressQmlDebuggingSpinbox = true;
 }
 
+bool DebuggerRunConfigurationAspect::isDisplaySuppressed() const
+{
+    return m_suppressDisplay;
+}
+
 bool DebuggerRunConfigurationAspect::areQmlDebuggingOptionsSuppressed() const
 {
     return m_suppressQmlDebuggingOptions;
 }
 
+bool DebuggerRunConfigurationAspect::areCppDebuggingOptionsSuppressed() const
+{
+    return m_suppressCppDebuggingOptions;
+}
+
 bool DebuggerRunConfigurationAspect::isQmlDebuggingSpinboxSuppressed() const
 {
     return m_suppressQmlDebuggingSpinbox;
diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h
index facc6839479..aa6981f0d8b 100644
--- a/src/plugins/projectexplorer/runconfiguration.h
+++ b/src/plugins/projectexplorer/runconfiguration.h
@@ -112,9 +112,13 @@ public:
     bool useQmlDebugger() const;
     uint qmlDebugServerPort() const;
     void setQmllDebugServerPort(uint port);
+    void suppressDisplay();
     void suppressQmlDebuggingOptions();
+    void suppressCppDebuggingOptions();
     void suppressQmlDebuggingSpinbox();
+    bool isDisplaySuppressed() const;
     bool areQmlDebuggingOptionsSuppressed() const;
+    bool areCppDebuggingOptionsSuppressed() const;
     bool isQmlDebuggingSpinboxSuppressed() const;
     RunConfiguration *runConfiguration();
 
@@ -126,7 +130,9 @@ public:
     bool m_useCppDebugger;
     QmlDebuggerStatus m_useQmlDebugger;
     uint m_qmlDebugServerPort;
+    bool m_suppressDisplay;
     bool m_suppressQmlDebuggingOptions;
+    bool m_suppressCppDebuggingOptions;
     bool m_suppressQmlDebuggingSpinbox;
 };
 
-- 
GitLab