Enabled passing on PIDs from the command line to the debugger.

Introduced struct DebuggerStartParameters to pass around
start parameters, removing the need for the engines to
access private members of DebuggerManager. Pass it
to DebuggerManager::startNewDebugger() and move
the GUI parts of that function into DebuggerPlugin,
making it possible to create the struct from command line
parameters. Introduce command line parsing with a few more
-enable-xx options. Introduce warning() to debugger panel
in the CDB engine.

On this occasion, clean out a few trailing whitespaces.
This commit is contained in:
Friedemann Kleint
2009-05-25 16:22:11 +02:00
parent 2eb2a382e5
commit c4a0abcda7
14 changed files with 565 additions and 388 deletions

View File

@@ -59,14 +59,19 @@ public:
// ProjectExplorer::IRunConfigurationRunner
virtual bool canRun(RunConfigurationPtr runConfiguration, const QString &mode);
virtual ProjectExplorer::RunControl *run(RunConfigurationPtr runConfiguration, const QString &mode);
virtual QString displayName() const;
virtual ProjectExplorer::RunControl *run(RunConfigurationPtr runConfiguration,
const QString &mode);
virtual QWidget *configurationWidget(RunConfigurationPtr runConfiguration);
virtual ProjectExplorer::RunControl *run(RunConfigurationPtr runConfiguration,
const QString &mode, DebuggerStartMode startMode);
virtual ProjectExplorer::RunControl
*run(RunConfigurationPtr runConfiguration,
const QString &mode,
const QSharedPointer<DebuggerStartParameters> &sp,
DebuggerStartMode startMode);
private:
QSharedPointer<DebuggerStartParameters> m_startParameters;
DebuggerManager *m_manager;
};
@@ -76,18 +81,20 @@ class DebuggerRunControl : public ProjectExplorer::RunControl
Q_OBJECT
public:
DebuggerRunControl(DebuggerManager *manager,
ApplicationRunConfigurationPtr runConfiguration);
explicit DebuggerRunControl(DebuggerManager *manager,
DebuggerStartMode mode,
const QSharedPointer<DebuggerStartParameters> &sp,
ApplicationRunConfigurationPtr runConfiguration);
DebuggerStartMode startMode() const { return m_mode; }
// ProjectExplorer::RunControl
virtual void start();
virtual void stop();
virtual bool isRunning() const;
void setStartMode(DebuggerStartMode mode) { m_mode = mode; }
DebuggerStartMode startMode() const { return m_mode; }
Q_SLOT void debuggingFinished();
signals:
void stopRequested();
@@ -95,9 +102,10 @@ private slots:
void slotAddToOutputWindowInline(const QString &output);
private:
const DebuggerStartMode m_mode;
const QSharedPointer<DebuggerStartParameters> m_startParameters;
DebuggerManager *m_manager;
bool m_running;
DebuggerStartMode m_mode;
};
} // namespace Internal