From cf154b3bc301a9fe7d854552e784fdaf1c3cd7c8 Mon Sep 17 00:00:00 2001
From: hjk <qtc-committer@nokia.com>
Date: Tue, 30 Nov 2010 08:59:22 +0100
Subject: [PATCH] debugger: make breakpoint enables state visible in the
 breakpoint dialog

---
 src/plugins/debugger/breakpoint.ui      | 36 +++++++++++++++++--------
 src/plugins/debugger/breakwindow.cpp    |  4 +++
 src/plugins/debugger/debuggerrunner.cpp | 12 ++++++---
 src/plugins/debugger/gdb/gdbengine.cpp  |  1 +
 4 files changed, 38 insertions(+), 15 deletions(-)

diff --git a/src/plugins/debugger/breakpoint.ui b/src/plugins/debugger/breakpoint.ui
index 5842e70aca6..c1c63bd82bf 100644
--- a/src/plugins/debugger/breakpoint.ui
+++ b/src/plugins/debugger/breakpoint.ui
@@ -47,67 +47,81 @@
       <widget class="QLineEdit" name="lineEditLineNumber"/>
      </item>
      <item row="3" column="1">
-      <widget class="QCheckBox" name="checkBoxUseFullPath">
+      <widget class="QCheckBox" name="checkBoxEnabled">
        <property name="text">
         <string/>
        </property>
       </widget>
      </item>
      <item row="3" column="0">
+      <widget class="QLabel" name="labelEnabled">
+       <property name="text">
+        <string>Enabled:</string>
+       </property>
+      </widget>
+     </item>
+     <item row="4" column="1">
+      <widget class="QCheckBox" name="checkBoxUseFullPath">
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+     <item row="4" column="0">
       <widget class="QLabel" name="labelUseFullPath">
        <property name="text">
         <string>Use full path:</string>
        </property>
       </widget>
      </item>
-     <item row="4" column="0">
+     <item row="5" column="0">
       <widget class="QLabel" name="labelAddress">
        <property name="text">
         <string>Address:</string>
        </property>
       </widget>
      </item>
-     <item row="4" column="1">
+     <item row="5" column="1">
       <widget class="QLineEdit" name="lineEditAddress"/>
      </item>
-     <item row="5" column="0">
+     <item row="6" column="0">
       <widget class="QLabel" name="labelFunction">
        <property name="text">
         <string>Function:</string>
        </property>
       </widget>
      </item>
-     <item row="5" column="1">
+     <item row="6" column="1">
       <widget class="QLineEdit" name="lineEditFunction"/>
      </item>
-     <item row="6" column="0">
+     <item row="7" column="0">
       <widget class="QLabel" name="labelCondition">
        <property name="text">
         <string>Condition:</string>
        </property>
       </widget>
      </item>
-     <item row="6" column="1">
+     <item row="7" column="1">
       <widget class="QLineEdit" name="lineEditCondition"/>
      </item>
-     <item row="7" column="0">
+     <item row="8" column="0">
       <widget class="QLabel" name="labelIgnoreCount">
        <property name="text">
         <string>Ignore count:</string>
        </property>
       </widget>
      </item>
-     <item row="7" column="1">
+     <item row="8" column="1">
       <widget class="QLineEdit" name="lineEditIgnoreCount"/>
      </item>
-     <item row="8" column="0">
+     <item row="9" column="0">
       <widget class="QLabel" name="labelThreadSpec">
        <property name="text">
         <string>Thread specification:</string>
        </property>
       </widget>
      </item>
-     <item row="8" column="1">
+     <item row="9" column="1">
       <widget class="QLineEdit" name="lineEditThreadSpec"/>
      </item>
     </layout>
diff --git a/src/plugins/debugger/breakwindow.cpp b/src/plugins/debugger/breakwindow.cpp
index 984eed4fd2a..490417570cf 100644
--- a/src/plugins/debugger/breakwindow.cpp
+++ b/src/plugins/debugger/breakwindow.cpp
@@ -193,6 +193,8 @@ void BreakpointDialog::clearParts(unsigned partsMask)
 
 void BreakpointDialog::getParts(unsigned partsMask, BreakpointParameters *data) const
 {
+    data->enabled = m_ui.checkBoxEnabled->isChecked();
+
     if (partsMask & FileAndLinePart) {
         data->lineNumber = m_ui.lineEditLineNumber->text().toInt();
         data->useFullPath = m_ui.checkBoxUseFullPath->isChecked();
@@ -207,6 +209,8 @@ void BreakpointDialog::getParts(unsigned partsMask, BreakpointParameters *data)
 
 void BreakpointDialog::setParts(unsigned mask, const BreakpointParameters &data)
 {
+    m_ui.checkBoxEnabled->setChecked(data.enabled);
+
     if (mask & FileAndLinePart) {
         m_ui.pathChooserFileName->setPath(data.fileName);
         m_ui.lineEditLineNumber->setText(QString::number(data.lineNumber));
diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp
index 5ba3a1f2f51..c0fd349492e 100644
--- a/src/plugins/debugger/debuggerrunner.cpp
+++ b/src/plugins/debugger/debuggerrunner.cpp
@@ -460,8 +460,6 @@ static DebuggerEngineType engineForToolChain(int toolChainType)
         case ProjectExplorer::ToolChain_RVCT_ARMV5_GNUPOC:
         case ProjectExplorer::ToolChain_GCCE_GNUPOC:
         case ProjectExplorer::ToolChain_GCC_MAEMO:
-            if (getenv("QTC_LLDB_GUEST"))
-                return LldbEngineType;
 #ifdef WITH_LLDB
             // lldb override
             if (Core::ICore::instance()->settings()->value("LLDB/enabled").toBool())
@@ -503,6 +501,12 @@ void DebuggerRunControl::createEngine(const DebuggerStartParameters &startParams
         }
     }
 
+    if (getenv("QTC_LLDB_GUEST")) {
+        engineType = LldbEngineType;
+        sp.executable = sp.processArgs;
+        qDebug() << "DEBUGGING" << sp.executable;
+    }
+
     // Fixme: 1 of 3 testing hacks.
     if (sp.processArgs.startsWith(__("@tcf@ ")))
         engineType = GdbEngineType;
@@ -561,8 +565,8 @@ void DebuggerRunControl::createEngine(const DebuggerStartParameters &startParams
             break;
         case LldbEngineType:
             d->m_engine = createLldbEngine(sp);
-       case NoEngineType:
-       case AllEngineTypes:
+        case NoEngineType:
+        case AllEngineTypes:
             break;
     }
 
diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index e2aa312e431..e7f5057d337 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -1809,6 +1809,7 @@ void GdbEngine::continueInferiorInternal()
 
 void GdbEngine::autoContinueInferior()
 {
+    resetLocation();
     continueInferiorInternal();
     showStatusMessage(tr("Continuing after temporary stop..."), 1000);
 }
-- 
GitLab