forked from qt-creator/qt-creator
Debugger: Avoid using addAutoReleasedObject
Not needed anymore for normal operation. Change-Id: I9e167d28bb45afd8f98d8b0fed6fce183fea32ad Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -510,17 +510,6 @@ bool DummyEngine::hasCapability(unsigned cap) const
|
|||||||
//
|
//
|
||||||
///////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
class DebugModeContext : public IContext
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
DebugModeContext(QWidget *modeWindow)
|
|
||||||
{
|
|
||||||
setContext(Context(CC::C_EDITORMANAGER));
|
|
||||||
setWidget(modeWindow);
|
|
||||||
ICore::addContextObject(this);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
class DebugMode : public IMode
|
class DebugMode : public IMode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -1027,9 +1016,12 @@ public:
|
|||||||
DebuggerSettings *m_debuggerSettings = 0;
|
DebuggerSettings *m_debuggerSettings = 0;
|
||||||
QStringList m_arguments;
|
QStringList m_arguments;
|
||||||
DebuggerToolTipManager m_toolTipManager;
|
DebuggerToolTipManager m_toolTipManager;
|
||||||
CommonOptionsPage *m_commonOptionsPage = 0;
|
|
||||||
DummyEngine *m_dummyEngine = 0;
|
DummyEngine *m_dummyEngine = 0;
|
||||||
const QSharedPointer<GlobalDebuggerOptions> m_globalDebuggerOptions;
|
const QSharedPointer<GlobalDebuggerOptions> m_globalDebuggerOptions;
|
||||||
|
|
||||||
|
DebuggerItemManager m_debuggerItemManager;
|
||||||
|
QList<IOptionsPage *> m_optionPages;
|
||||||
|
IContext m_debugModeContext;
|
||||||
};
|
};
|
||||||
|
|
||||||
DebuggerPluginPrivate::DebuggerPluginPrivate(DebuggerPlugin *plugin)
|
DebuggerPluginPrivate::DebuggerPluginPrivate(DebuggerPlugin *plugin)
|
||||||
@@ -1046,6 +1038,9 @@ DebuggerPluginPrivate::DebuggerPluginPrivate(DebuggerPlugin *plugin)
|
|||||||
|
|
||||||
DebuggerPluginPrivate::~DebuggerPluginPrivate()
|
DebuggerPluginPrivate::~DebuggerPluginPrivate()
|
||||||
{
|
{
|
||||||
|
qDeleteAll(m_optionPages);
|
||||||
|
m_optionPages.clear();
|
||||||
|
|
||||||
delete m_debuggerSettings;
|
delete m_debuggerSettings;
|
||||||
m_debuggerSettings = 0;
|
m_debuggerSettings = 0;
|
||||||
|
|
||||||
@@ -1704,13 +1699,9 @@ bool DebuggerPluginPrivate::initialize(const QStringList &arguments,
|
|||||||
//cmd->setDefaultKeySequence(QKeySequence(tr("Ctrl+D,Ctrl+W")));
|
//cmd->setDefaultKeySequence(QKeySequence(tr("Ctrl+D,Ctrl+W")));
|
||||||
debugMenu->addAction(cmd);
|
debugMenu->addAction(cmd);
|
||||||
|
|
||||||
QList<IOptionsPage *> engineOptionPages;
|
addGdbOptionPages(&m_optionPages);
|
||||||
addGdbOptionPages(&engineOptionPages);
|
addCdbOptionPages(&m_optionPages);
|
||||||
addCdbOptionPages(&engineOptionPages);
|
m_optionPages.append(new LocalsAndExpressionsOptionsPage);
|
||||||
|
|
||||||
foreach (IOptionsPage *op, engineOptionPages)
|
|
||||||
m_plugin->addAutoReleasedObject(op);
|
|
||||||
m_plugin->addAutoReleasedObject(new LocalsAndExpressionsOptionsPage);
|
|
||||||
|
|
||||||
connect(ModeManager::instance(), &ModeManager::currentModeChanged,
|
connect(ModeManager::instance(), &ModeManager::currentModeChanged,
|
||||||
this, &DebuggerPluginPrivate::onModeChanged);
|
this, &DebuggerPluginPrivate::onModeChanged);
|
||||||
@@ -1726,7 +1717,9 @@ bool DebuggerPluginPrivate::initialize(const QStringList &arguments,
|
|||||||
m_modeWindow = createModeWindow(Constants::MODE_DEBUG, m_mainWindow);
|
m_modeWindow = createModeWindow(Constants::MODE_DEBUG, m_mainWindow);
|
||||||
m_mode->setWidget(m_modeWindow);
|
m_mode->setWidget(m_modeWindow);
|
||||||
|
|
||||||
m_plugin->addAutoReleasedObject(new DebugModeContext(m_modeWindow));
|
m_debugModeContext.setContext(Context(CC::C_EDITORMANAGER));
|
||||||
|
m_debugModeContext.setWidget(m_modeWindow);
|
||||||
|
ICore::addContextObject(&m_debugModeContext);
|
||||||
|
|
||||||
connect(SessionManager::instance(), &SessionManager::startupProjectChanged,
|
connect(SessionManager::instance(), &SessionManager::startupProjectChanged,
|
||||||
this, &DebuggerPluginPrivate::updateUiForProject);
|
this, &DebuggerPluginPrivate::updateUiForProject);
|
||||||
@@ -1839,8 +1832,7 @@ bool DebuggerPluginPrivate::initialize(const QStringList &arguments,
|
|||||||
connect(SessionManager::instance(), &SessionManager::startupProjectChanged,
|
connect(SessionManager::instance(), &SessionManager::startupProjectChanged,
|
||||||
this, &DebuggerPluginPrivate::onCurrentProjectChanged);
|
this, &DebuggerPluginPrivate::onCurrentProjectChanged);
|
||||||
|
|
||||||
m_commonOptionsPage = new CommonOptionsPage(m_globalDebuggerOptions);
|
m_optionPages.append(new CommonOptionsPage(m_globalDebuggerOptions));
|
||||||
m_plugin->addAutoReleasedObject(m_commonOptionsPage);
|
|
||||||
|
|
||||||
m_globalDebuggerOptions->fromSettings();
|
m_globalDebuggerOptions->fromSettings();
|
||||||
m_returnWindow->setVisible(false);
|
m_returnWindow->setVisible(false);
|
||||||
@@ -3260,8 +3252,6 @@ bool DebuggerPlugin::initialize(const QStringList &arguments, QString *errorMess
|
|||||||
mstart->addSeparator(Constants::G_GENERAL);
|
mstart->addSeparator(Constants::G_GENERAL);
|
||||||
mstart->addSeparator(Constants::G_SPECIAL);
|
mstart->addSeparator(Constants::G_SPECIAL);
|
||||||
|
|
||||||
addAutoReleasedObject(new DebuggerItemManager);
|
|
||||||
|
|
||||||
KitManager::registerKitInformation(new DebuggerKitInformation);
|
KitManager::registerKitInformation(new DebuggerKitInformation);
|
||||||
|
|
||||||
// Task integration.
|
// Task integration.
|
||||||
|
|||||||
Reference in New Issue
Block a user