Debugger: Re-enable retrieval of register content

Less use of magical object names.

Change-Id: I2da17f1cefe1a72f4ea8be4c041e7443265def93
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
This commit is contained in:
hjk
2016-03-14 18:14:06 +01:00
parent 0f066bd3d9
commit c09ebb8f13
5 changed files with 13 additions and 8 deletions

View File

@@ -2008,9 +2008,9 @@ void CdbEngine::processStop(const GdbMi &stopReason, bool conditionalBreakPointT
// Fire off remaining commands asynchronously
if (!m_pendingBreakpointMap.isEmpty() && !m_pendingSubBreakpointMap.isEmpty())
listBreakpoints();
if (Internal::isDockVisible(QLatin1String(DOCKWIDGET_REGISTER)))
if (Internal::isRegistersWindowVisible())
reloadRegisters();
if (Internal::isDockVisible(QLatin1String(DOCKWIDGET_MODULES)))
if (Internal::isModulesWindowVisible())
reloadModules();
}
// After the sequence has been sent off and CDB is pondering the commands,

View File

@@ -77,7 +77,8 @@ void displayDebugger(DebuggerEngine *engine, bool updateEngine);
void synchronizeBreakpoints();
QWidget *mainWindow();
bool isDockVisible(const QString &objectName);
bool isRegistersWindowVisible();
bool isModulesWindowVisible();
void showModuleSymbols(const QString &moduleName, const QVector<Internal::Symbol> &symbols);
void showModuleSections(const QString &moduleName, const QVector<Internal::Section> &sections);
void openMemoryEditor();

View File

@@ -3128,10 +3128,14 @@ QWidget *mainWindow()
return dd->m_mainWindow;
}
bool isDockVisible(const QString &objectName)
bool isRegistersWindowVisible()
{
QDockWidget *dock = dd->findChild<QDockWidget *>(objectName);
return dock && dock->toggleViewAction()->isChecked();
return dd->m_registerWindow->isVisible();
}
bool isModulesWindowVisible()
{
return dd->m_modulesWindow->isVisible();
}
void openMemoryEditor()

View File

@@ -3445,7 +3445,7 @@ void GdbEngine::handleMakeSnapshot(const DebuggerResponse &response, const QStri
void GdbEngine::reloadRegisters()
{
if (!Internal::isDockVisible(_(DOCKWIDGET_REGISTER)))
if (!Internal::isRegistersWindowVisible())
return;
if (state() != InferiorStopOk && state() != InferiorUnrunnable)

View File

@@ -956,7 +956,7 @@ void LldbEngine::handleLocationNotification(const GdbMi &reportedLocation)
void LldbEngine::reloadRegisters()
{
if (!Internal::isDockVisible(QLatin1String(DOCKWIDGET_REGISTER)))
if (!Internal::isRegistersWindowVisible())
return;
DebuggerCommand cmd("fetchRegisters");