new status widget for debugger output. needs a bit more polishing...

This commit is contained in:
hjk
2008-12-08 14:26:11 +01:00
parent 358eceacfd
commit 8d3a774fc2
4 changed files with 59 additions and 46 deletions

View File

@@ -44,9 +44,11 @@ QT_BEGIN_NAMESPACE
class QAction;
class QAbstractItemModel;
class QDockWidget;
class QLabel;
class QMainWindow;
class QModelIndex;
class QSplitter;
class QTimer;
class QWidget;
QT_END_NAMESPACE
@@ -190,7 +192,8 @@ public:
private:
friend class DebugMode;
virtual QWidget *threadsWindow() = 0;
virtual QWidget *threadsWindow() const = 0;
virtual QLabel *statusLabel() const = 0;
virtual QList<QDockWidget*> dockWidgets() const = 0;
virtual void createDockWidgets() = 0;
};
@@ -213,6 +216,7 @@ public:
IDebuggerManagerAccessForEngines *engineInterface();
IDebuggerManagerAccessForDebugMode *debugModeInterface();
QMainWindow *mainWindow() const { return m_mainWindow; }
QLabel *statusLabel() const { return m_statusLabel; }
enum StartMode { startInternal, startExternal, attachExternal };
enum DebuggerType { GdbDebugger, ScriptDebugger, WinDebugger };
@@ -272,7 +276,7 @@ public slots:
void assignValueInDebugger(const QString &expr, const QString &value);
void executeDebuggerCommand(const QString &command);
void showStatusMessage(const QString &msg, int timeout); // -1 forever
void showStatusMessage(const QString &msg, int timeout = -1); // -1 forever
private slots:
void showDebuggerOutput(const QString &prefix, const QString &msg);
@@ -290,6 +294,7 @@ private slots:
void reloadRegisters();
void registerDockToggled(bool on);
void setStatus(int status);
void clearStatusMessage();
private:
//
@@ -322,7 +327,7 @@ private:
//
// Implementation of IDebuggerManagerAccessForDebugMode
//
QWidget *threadsWindow() { return m_threadsWindow; }
QWidget *threadsWindow() const { return m_threadsWindow; }
QList<QDockWidget*> dockWidgets() const { return m_dockWidgets; }
void createDockWidgets();
@@ -382,6 +387,7 @@ private:
/// Views
QMainWindow *m_mainWindow;
QLabel *m_statusLabel;
QDockWidget *m_breakDock;
QDockWidget *m_disassemblerDock;
QDockWidget *m_modulesDock;
@@ -440,6 +446,8 @@ private:
int m_status;
bool m_busy;
QTimer *m_statusTimer;
QString m_lastPermanentStatusMessage;
IDebuggerEngine *engine();
IDebuggerEngine *m_engine;