diff options
author | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2009-05-25 16:22:11 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2009-05-25 16:22:11 +0200 |
commit | c4a0abcda7b11577621dbe93ae1225b586e2033e (patch) | |
tree | 568b2ab8c802f47e0f3c840939e9e83a104b4c12 /src/plugins/debugger/debuggerplugin.h | |
parent | 2eb2a382e52a2f7b75465cd4c9cf0bf5459d0c79 (diff) |
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.
Diffstat (limited to 'src/plugins/debugger/debuggerplugin.h')
-rw-r--r-- | src/plugins/debugger/debuggerplugin.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/src/plugins/debugger/debuggerplugin.h b/src/plugins/debugger/debuggerplugin.h index c022e3a0ab..082a01e016 100644 --- a/src/plugins/debugger/debuggerplugin.h +++ b/src/plugins/debugger/debuggerplugin.h @@ -33,6 +33,7 @@ #include <extensionsystem/iplugin.h> #include <QtCore/QObject> +#include <QtCore/QStringList> QT_BEGIN_NAMESPACE class QAbstractItemView; @@ -69,9 +70,11 @@ public: ~DebuggerPlugin(); private: - bool initialize(const QStringList &arguments, QString *error_message); - void shutdown(); - void extensionsInitialized(); + virtual bool initialize(const QStringList &arguments, QString *error_message); + virtual void shutdown(); + virtual void extensionsInitialized(); + + QVariant configValue(const QString &name) const; private slots: void activatePreviousMode(); @@ -90,7 +93,6 @@ private slots: int lineNumber, QMenu *menu); void updateActions(int status); - void resetLocation(); void gotoLocation(const QString &fileName, int line, bool setMarker); @@ -104,10 +106,16 @@ private slots: void attachExternalApplication(); void attachCore(); void attachRemoteTcf(); + void attachCmdLinePid(); private: void readSettings(); void writeSettings() const; + bool parseArguments(const QStringList &args, QString *errorMessage); + inline bool parseArgument(QStringList::const_iterator &it, + const QStringList::const_iterator& end, + QString *errorMessage); + void attachExternalApplication(qint64 pid); friend class DebuggerManager; friend class GdbOptionPage; @@ -121,7 +129,10 @@ private: QString m_previousMode; LocationMark *m_locationMark; int m_gdbRunningContext; - + unsigned m_cmdLineEnabledEngines; + quint64 m_cmdLineAttachPid; + // Exception that crashed an app passed on by Windows + unsigned long m_cmdLineWinException; QAction *m_toggleLockedAction; QAction *m_startExternalAction; |