forked from qt-creator/qt-creator
debugger: remove reference to dumper build step from debugger UI
This commit is contained in:
@@ -64,6 +64,7 @@ DebuggerSettings::~DebuggerSettings()
|
|||||||
|
|
||||||
void DebuggerSettings::insertItem(int code, SavedAction *item)
|
void DebuggerSettings::insertItem(int code, SavedAction *item)
|
||||||
{
|
{
|
||||||
|
QTC_ASSERT(!m_items.contains(code), return);
|
||||||
m_items[code] = item;
|
m_items[code] = item;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -240,11 +241,6 @@ DebuggerSettings *theDebuggerSettings()
|
|||||||
item->setText(QObject::tr("Use tooltips when debugging"));
|
item->setText(QObject::tr("Use tooltips when debugging"));
|
||||||
item->setCheckable(true);
|
item->setCheckable(true);
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
|
||||||
instance->insertItem(ListSourceFiles, item);
|
|
||||||
item->setText(QObject::tr("List source files"));
|
|
||||||
item->setCheckable(true);
|
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Settings
|
// Settings
|
||||||
@@ -272,30 +268,30 @@ DebuggerSettings *theDebuggerSettings()
|
|||||||
item->setSettingsKey("DebugMode", "UseToolTips");
|
item->setSettingsKey("DebugMode", "UseToolTips");
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(UseDumpers, item);
|
instance->insertItem(DisplayRawData, item);
|
||||||
item->setSettingsKey("DebugMode", "UseCustomDumpers");
|
item->setSettingsKey("DebugMode", "DisplayRawData");
|
||||||
item->setText(QObject::tr("Use custom dumpers"));
|
item->setText(QObject::tr("Display raw data"));
|
||||||
item->setCheckable(true);
|
item->setCheckable(true);
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(BuildDumpersOnTheFly, item);
|
instance->insertItem(UseDefaultDumperLocation, item);
|
||||||
item->setDefaultValue(true);
|
item->setDefaultValue(true);
|
||||||
item->setSettingsKey("DebugMode", "BuildDumpersOnTheFly");
|
item->setSettingsKey("DebugMode", "UseDefaultDumperLocation");
|
||||||
item->setCheckable(true);
|
item->setCheckable(true);
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(UseQtDumpers, item);
|
instance->insertItem(UseCustomDumperLocation, item);
|
||||||
item->setSettingsKey("DebugMode", "UseQtDumpers");
|
item->setSettingsKey("DebugMode", "CustomDumperLocation");
|
||||||
item->setCheckable(true);
|
item->setCheckable(true);
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(UsePrebuiltDumpers, item);
|
instance->insertItem(DisplayRawData, item);
|
||||||
item->setSettingsKey("DebugMode", "UsePrebuiltDumpers");
|
item->setSettingsKey("DebugMode", "DisplayRawData");
|
||||||
item->setCheckable(true);
|
item->setCheckable(true);
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(PrebuiltDumpersLocation, item);
|
instance->insertItem(CustomDumperLocation, item);
|
||||||
item->setSettingsKey("DebugMode", "PrebuiltDumpersLocation");
|
item->setSettingsKey("DebugMode", "CustomDumperLocation");
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(TerminalApplication, item);
|
instance->insertItem(TerminalApplication, item);
|
||||||
@@ -305,6 +301,8 @@ DebuggerSettings *theDebuggerSettings()
|
|||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(ListSourceFiles, item);
|
instance->insertItem(ListSourceFiles, item);
|
||||||
item->setSettingsKey("DebugMode", "ListSourceFiles");
|
item->setSettingsKey("DebugMode", "ListSourceFiles");
|
||||||
|
item->setText(QObject::tr("List source files"));
|
||||||
|
item->setCheckable(true);
|
||||||
|
|
||||||
item = new SavedAction(instance);
|
item = new SavedAction(instance);
|
||||||
instance->insertItem(SkipKnownFrames, item);
|
instance->insertItem(SkipKnownFrames, item);
|
||||||
|
|||||||
@@ -87,11 +87,10 @@ enum DebuggerActionCode
|
|||||||
CollapseItem,
|
CollapseItem,
|
||||||
|
|
||||||
RecheckDumpers,
|
RecheckDumpers,
|
||||||
UsePrebuiltDumpers,
|
DisplayRawData,
|
||||||
UseQtDumpers,
|
UseCustomDumperLocation,
|
||||||
PrebuiltDumpersLocation,
|
UseDefaultDumperLocation,
|
||||||
BuildDumpersOnTheFly,
|
CustomDumperLocation,
|
||||||
UseDumpers,
|
|
||||||
DebugDumpers,
|
DebugDumpers,
|
||||||
|
|
||||||
// Source List
|
// Source List
|
||||||
|
|||||||
@@ -362,26 +362,24 @@ QWidget *DumperOptionPage::createPage(QWidget *parent)
|
|||||||
m_ui.dumperLocationChooser->setInitialBrowsePathBackup(
|
m_ui.dumperLocationChooser->setInitialBrowsePathBackup(
|
||||||
Core::ICore::instance()->resourcePath() + "../../lib");
|
Core::ICore::instance()->resourcePath() + "../../lib");
|
||||||
|
|
||||||
connect(m_ui.radioButtonUsePrebuiltDumpers, SIGNAL(toggled(bool)),
|
connect(m_ui.radioButtonUseCustomDumperLocation, SIGNAL(toggled(bool)),
|
||||||
m_ui.dumperLocationChooser, SLOT(setEnabled(bool)));
|
m_ui.dumperLocationChooser, SLOT(setEnabled(bool)));
|
||||||
|
|
||||||
m_group.clear();
|
m_group.clear();
|
||||||
m_group.insert(theDebuggerAction(UseQtDumpers),
|
m_group.insert(theDebuggerAction(DisplayRawData),
|
||||||
m_ui.radioButtonUseQtDumpers);
|
m_ui.radioButtonDisplayRawData);
|
||||||
m_group.insert(theDebuggerAction(UsePrebuiltDumpers),
|
m_group.insert(theDebuggerAction(UseCustomDumperLocation),
|
||||||
m_ui.radioButtonUsePrebuiltDumpers);
|
m_ui.radioButtonUseCustomDumperLocation);
|
||||||
m_group.insert(theDebuggerAction(BuildDumpersOnTheFly),
|
m_group.insert(theDebuggerAction(UseDefaultDumperLocation),
|
||||||
m_ui.radioButtonBuildDumpersOnTheFly);
|
m_ui.radioButtonUseDefaultDumperLocation);
|
||||||
m_group.insert(theDebuggerAction(PrebuiltDumpersLocation),
|
m_group.insert(theDebuggerAction(CustomDumperLocation),
|
||||||
m_ui.dumperLocationChooser);
|
m_ui.dumperLocationChooser);
|
||||||
|
|
||||||
m_group.insert(theDebuggerAction(UseDumpers),
|
|
||||||
m_ui.checkBoxUseDumpers);
|
|
||||||
m_group.insert(theDebuggerAction(DebugDumpers),
|
m_group.insert(theDebuggerAction(DebugDumpers),
|
||||||
m_ui.checkBoxDebugDumpers);
|
m_ui.checkBoxDebugDumpers);
|
||||||
|
|
||||||
m_ui.dumperLocationChooser->
|
m_ui.dumperLocationChooser->
|
||||||
setEnabled(theDebuggerAction(UsePrebuiltDumpers)->value().toBool());
|
setEnabled(theDebuggerAction(UseCustomDumperLocation)->value().toBool());
|
||||||
|
|
||||||
#ifndef QT_DEBUG
|
#ifndef QT_DEBUG
|
||||||
#if 0
|
#if 0
|
||||||
|
|||||||
@@ -20,27 +20,20 @@
|
|||||||
<string>Location of data dumper helper library</string>
|
<string>Location of data dumper helper library</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QRadioButton" name="radioButtonUseQtDumpers">
|
|
||||||
<property name="text">
|
|
||||||
<string>Use Qt dumpers</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QRadioButton" name="radioButtonBuildDumpersOnTheFly">
|
<widget class="QRadioButton" name="radioButtonUseDefaultDumperLocation">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>This is the slowest but safest option.</string>
|
<string>This will load a dumper library</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Build and load data dumpers on-the-fly</string>
|
<string>Use dumpers from default location</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QRadioButton" name="radioButtonUsePrebuiltDumpers">
|
<widget class="QRadioButton" name="radioButtonUseCustomDumperLocation">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Load pre-built data dumpers</string>
|
<string>Use dumpers from custom location</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
@@ -74,6 +67,16 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QRadioButton" name="radioButtonDisplayRawData">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>This will disable nice display of Qt and Standard Library objects in the Locals&Watchers view</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Do not use data dumpers</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
@@ -100,13 +103,6 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
|
||||||
<widget class="QCheckBox" name="checkBoxUseDumpers">
|
|
||||||
<property name="text">
|
|
||||||
<string>Use data dumpers</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<customwidgets>
|
<customwidgets>
|
||||||
|
|||||||
@@ -210,8 +210,8 @@ void GdbEngine::initializeConnections()
|
|||||||
q, SLOT(showApplicationOutput(QString)),
|
q, SLOT(showApplicationOutput(QString)),
|
||||||
Qt::QueuedConnection);
|
Qt::QueuedConnection);
|
||||||
|
|
||||||
connect(theDebuggerAction(UseDumpers), SIGNAL(valueChanged(QVariant)),
|
connect(theDebuggerAction(DisplayRawData), SIGNAL(valueChanged(QVariant)),
|
||||||
this, SLOT(setUseDumpers(QVariant)));
|
this, SLOT(setDisplayRawData(QVariant)));
|
||||||
connect(theDebuggerAction(DebugDumpers), SIGNAL(valueChanged(QVariant)),
|
connect(theDebuggerAction(DebugDumpers), SIGNAL(valueChanged(QVariant)),
|
||||||
this, SLOT(setDebugDumpers(QVariant)));
|
this, SLOT(setDebugDumpers(QVariant)));
|
||||||
connect(theDebuggerAction(RecheckDumpers), SIGNAL(triggered()),
|
connect(theDebuggerAction(RecheckDumpers), SIGNAL(triggered()),
|
||||||
@@ -1077,7 +1077,7 @@ void GdbEngine::handleAqcuiredInferior()
|
|||||||
#if defined(Q_OS_MAC)
|
#if defined(Q_OS_MAC)
|
||||||
sendCommand("info pid", GdbInfoProc, QVariant(), NeedsStop);
|
sendCommand("info pid", GdbInfoProc, QVariant(), NeedsStop);
|
||||||
#endif
|
#endif
|
||||||
if (theDebuggerBoolSetting(UseDumpers))
|
if (theDebuggerBoolSetting(ListSourceFiles))
|
||||||
reloadSourceFiles();
|
reloadSourceFiles();
|
||||||
tryLoadCustomDumpers();
|
tryLoadCustomDumpers();
|
||||||
|
|
||||||
@@ -2849,7 +2849,7 @@ static void setWatchDataSAddress(WatchData &data, const GdbMi &mi)
|
|||||||
data.saddr = mi.data();
|
data.saddr = mi.data();
|
||||||
}
|
}
|
||||||
|
|
||||||
void GdbEngine::setUseDumpers(const QVariant &on)
|
void GdbEngine::setDisplayRawData(const QVariant &on)
|
||||||
{
|
{
|
||||||
qDebug() << "SWITCHING ON/OFF DUMPER DEBUGGING:" << on;
|
qDebug() << "SWITCHING ON/OFF DUMPER DEBUGGING:" << on;
|
||||||
// FIXME: a bit too harsh, but otherwise the treeview sometimes look funny
|
// FIXME: a bit too harsh, but otherwise the treeview sometimes look funny
|
||||||
@@ -2860,7 +2860,7 @@ void GdbEngine::setUseDumpers(const QVariant &on)
|
|||||||
|
|
||||||
bool GdbEngine::isCustomValueDumperAvailable(const QString &type) const
|
bool GdbEngine::isCustomValueDumperAvailable(const QString &type) const
|
||||||
{
|
{
|
||||||
if (!theDebuggerBoolSetting(UseDumpers))
|
if (theDebuggerBoolSetting(DisplayRawData))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (q->startMode() == AttachCore) {
|
if (q->startMode() == AttachCore) {
|
||||||
@@ -3989,17 +3989,12 @@ void GdbEngine::assignValueInDebugger(const QString &expression, const QString &
|
|||||||
|
|
||||||
QString GdbEngine::dumperLibraryName() const
|
QString GdbEngine::dumperLibraryName() const
|
||||||
{
|
{
|
||||||
if (theDebuggerAction(UsePrebuiltDumpers)->value().toBool())
|
if (theDebuggerAction(UseCustomDumperLocation)->value().toBool())
|
||||||
return theDebuggerAction(PrebuiltDumpersLocation)->value().toString();
|
return theDebuggerAction(CustomDumperLocation)->value().toString();
|
||||||
if (theDebuggerAction(UseQtDumpers)->value().toBool())
|
if (theDebuggerAction(UseDefaultDumperLocation)->value().toBool())
|
||||||
return q->m_dumperLib;
|
return q->m_dumperLib;
|
||||||
#if defined(Q_OS_WIN)
|
QTC_ASSERT(false, /**/);
|
||||||
return q->m_buildDir + "/qtc-gdbmacros/debug/gdbmacros.dll";
|
return QString();
|
||||||
#elif defined(Q_OS_MAC)
|
|
||||||
return q->m_buildDir + "/qtc-gdbmacros/libgdbmacros.dylib";
|
|
||||||
#else // generic UNIX
|
|
||||||
return q->m_buildDir + "/qtc-gdbmacros/libgdbmacros.so";
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void GdbEngine::tryLoadCustomDumpers()
|
void GdbEngine::tryLoadCustomDumpers()
|
||||||
|
|||||||
@@ -131,7 +131,7 @@ private:
|
|||||||
void loadAllSymbols();
|
void loadAllSymbols();
|
||||||
|
|
||||||
Q_SLOT void setDebugDumpers(const QVariant &on);
|
Q_SLOT void setDebugDumpers(const QVariant &on);
|
||||||
Q_SLOT void setUseDumpers(const QVariant &on);
|
Q_SLOT void setDisplayRawData(const QVariant &on);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Own stuff
|
// Own stuff
|
||||||
|
|||||||
@@ -177,7 +177,7 @@ void WatchWindow::contextMenuEvent(QContextMenuEvent *ev)
|
|||||||
|
|
||||||
menu.addSeparator();
|
menu.addSeparator();
|
||||||
menu.addAction(theDebuggerAction(RecheckDumpers));
|
menu.addAction(theDebuggerAction(RecheckDumpers));
|
||||||
menu.addAction(theDebuggerAction(UseDumpers));
|
menu.addAction(theDebuggerAction(DisplayRawData));
|
||||||
menu.addSeparator();
|
menu.addSeparator();
|
||||||
menu.addAction(theDebuggerAction(SettingsDialog));
|
menu.addAction(theDebuggerAction(SettingsDialog));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user