From 68fa327407b9bd99a78543ea0ec051ae5d97c797 Mon Sep 17 00:00:00 2001
From: hjk <qtc-committer@nokia.com>
Date: Fri, 26 Jun 2009 13:17:44 +0200
Subject: [PATCH] debugger: set default values for all saved options

---
 src/plugins/debugger/debuggeractions.cpp | 39 ++++++++++++++++++++----
 1 file changed, 33 insertions(+), 6 deletions(-)

diff --git a/src/plugins/debugger/debuggeractions.cpp b/src/plugins/debugger/debuggeractions.cpp
index 4db85dcf01d..5d4f0a5990d 100644
--- a/src/plugins/debugger/debuggeractions.cpp
+++ b/src/plugins/debugger/debuggeractions.cpp
@@ -64,7 +64,10 @@ DebuggerSettings::~DebuggerSettings()
     
 void DebuggerSettings::insertItem(int code, SavedAction *item)
 {
-    QTC_ASSERT(!m_items.contains(code), qDebug() << code << item->toString(); return);
+    QTC_ASSERT(!m_items.contains(code),
+        qDebug() << code << item->toString(); return);
+    QTC_ASSERT(item->settingsKey().isEmpty() || item->defaultValue().isValid(),
+        qDebug() << "NO DEFAULT VALUE FOR " << item->settingsKey());
     m_items[code] = item;
 }
 
@@ -90,9 +93,13 @@ QString DebuggerSettings::dump() const
 {
     QString out;
     QTextStream ts(&out);
-    ts  << "Debugger settings: ";
-    foreach (SavedAction *item, m_items)
-        ts << '\n' << item->value().toString();
+    ts << "Debugger settings: ";
+    foreach (SavedAction *item, m_items) {
+        QString key = item->settingsKey();
+        if (!key.isEmpty())
+            ts << '\n' << key << ": " << item->value().toString()
+               << "  (default: " << item->defaultValue().toString() << ")";
+    }
     return out;
 }
 
@@ -169,18 +176,22 @@ DebuggerSettings *DebuggerSettings::instance()
     instance->insertItem(UseDebuggingHelpers, item);
 
     item = new SavedAction(instance);
-    item->setSettingsKey(debugModeGroup, QLatin1String("CustomDebuggingHelperLocation"));
-    instance->insertItem(UseCustomDebuggingHelperLocation, item);
+    item->setSettingsKey(debugModeGroup, QLatin1String("UseCustomDebuggingHelperLocation"));
     item->setCheckable(true);
+    item->setDefaultValue(false);
+    instance->insertItem(UseCustomDebuggingHelperLocation, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("CustomDebuggingHelperLocation"));
+    item->setCheckable(true);
+    item->setDefaultValue(QString());
     instance->insertItem(CustomDebuggingHelperLocation, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("DebugDebuggingHelpers"));
     item->setText(tr("Debug debugging helper"));
     item->setCheckable(true);
+    item->setDefaultValue(false);
     instance->insertItem(DebugDebuggingHelpers, item);
 
 
@@ -208,6 +219,7 @@ DebuggerSettings *DebuggerSettings::instance()
     item->setCheckable(true);
     item->setSettingsKey(debugModeGroup, QLatin1String("FormatHexadecimal"));
     item->setChecked(true);
+    item->setDefaultValue(false);
     item->setData(FormatHexadecimal);
     instance->insertItem(FormatHexadecimal, item);
     instance->m_registerFormatGroup->addAction(item);
@@ -216,6 +228,7 @@ DebuggerSettings *DebuggerSettings::instance()
     item->setText(tr("Decimal"));
     item->setCheckable(true);
     item->setSettingsKey(debugModeGroup, QLatin1String("FormatDecimal"));
+    item->setDefaultValue(false);
     item->setData(FormatDecimal);
     instance->insertItem(FormatDecimal, item);
     instance->m_registerFormatGroup->addAction(item);
@@ -224,6 +237,7 @@ DebuggerSettings *DebuggerSettings::instance()
     item->setText(tr("Octal"));
     item->setCheckable(true);
     item->setSettingsKey(debugModeGroup, QLatin1String("FormatOctal"));
+    item->setDefaultValue(false);
     item->setData(FormatOctal);
     instance->insertItem(FormatOctal, item);
     instance->m_registerFormatGroup->addAction(item);
@@ -232,6 +246,7 @@ DebuggerSettings *DebuggerSettings::instance()
     item->setText(tr("Binary"));
     item->setCheckable(true);
     item->setSettingsKey(debugModeGroup, QLatin1String("FormatBinary"));
+    item->setDefaultValue(false);
     item->setData(FormatBinary);
     instance->insertItem(FormatBinary, item);
     instance->m_registerFormatGroup->addAction(item);
@@ -240,6 +255,7 @@ DebuggerSettings *DebuggerSettings::instance()
     item->setText(tr("Raw"));
     item->setCheckable(true);
     item->setSettingsKey(debugModeGroup, QLatin1String("FormatRaw"));
+    item->setDefaultValue(false);
     item->setData(FormatRaw);
     instance->insertItem(FormatRaw, item);
     instance->m_registerFormatGroup->addAction(item);
@@ -248,6 +264,7 @@ DebuggerSettings *DebuggerSettings::instance()
     item->setText(tr("Natural"));
     item->setCheckable(true);
     item->setSettingsKey(debugModeGroup, QLatin1String("FormatNatural"));
+    item->setDefaultValue(true);
     item->setData(FormatNatural);
     instance->insertItem(FormatNatural, item);
     instance->m_registerFormatGroup->addAction(item);
@@ -262,40 +279,47 @@ DebuggerSettings *DebuggerSettings::instance()
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("Environment"));
+    item->setDefaultValue(QString());
     instance->insertItem(GdbEnvironment, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("ScriptFile"));
+    item->setDefaultValue(QString());
     instance->insertItem(GdbScriptFile, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("AutoQuit"));
     item->setText(tr("Automatically quit debugger"));
     item->setCheckable(true);
+    item->setDefaultValue(false);
     instance->insertItem(AutoQuit, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("UseToolTips"));
     item->setText(tr("Use tooltips when debugging"));
     item->setCheckable(true);
+    item->setDefaultValue(false);
     instance->insertItem(UseToolTips, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("ListSourceFiles"));
     item->setText(tr("List source files"));
     item->setCheckable(true);
+    item->setDefaultValue(false);
     instance->insertItem(ListSourceFiles, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("SkipKnownFrames"));
     item->setText(tr("Skip known frames"));
     item->setCheckable(true);
+    item->setDefaultValue(false);
     instance->insertItem(SkipKnownFrames, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("EnableReverseDebugging"));
     item->setText(tr("Enable reverse debugging"));
     item->setCheckable(true);
+    item->setDefaultValue(false);
     instance->insertItem(EnableReverseDebugging, item);
 
     item = new SavedAction(instance);
@@ -305,14 +329,17 @@ DebuggerSettings *DebuggerSettings::instance()
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("SelectedPluginBreakpoints"));
+    item->setDefaultValue(false);
     instance->insertItem(SelectedPluginBreakpoints, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("NoPluginBreakpoints"));
+    item->setDefaultValue(false);
     instance->insertItem(NoPluginBreakpoints, item);
 
     item = new SavedAction(instance);
     item->setSettingsKey(debugModeGroup, QLatin1String("SelectedPluginBreakpointsPattern"));
+    item->setDefaultValue(QString(".*"));
     instance->insertItem(SelectedPluginBreakpointsPattern, item);
 
     item = new SavedAction(instance);
-- 
GitLab