1
// $Id: DebuggerForm.h 6484 2007-05-18 11:44:34Z edwinv $
6
#include "DockManager.h"
7
#include "DebuggerData.h"
8
#include "SymbolTable.h"
11
class DockableWidgetArea;
24
class DebuggerForm : public QMainWindow
28
DebuggerForm(QWidget* parent = 0);
32
void closeEvent( QCloseEvent *e );
41
QMenu* breakpointMenu;
44
QToolBar* systemToolbar;
45
QToolBar* executeToolbar;
47
QAction* systemConnectAction;
48
QAction* systemDisconnectAction;
49
QAction* systemPauseAction;
50
QAction* systemSymbolManagerAction;
51
QAction* systemPreferencesAction;
52
QAction* systemQuitAction;
54
QAction* viewRegistersAction;
55
QAction* viewFlagsAction;
56
QAction* viewStackAction;
57
QAction* viewSlotsAction;
58
QAction* viewMemoryAction;
59
QAction* viewDebuggableViewerAction;
61
QAction* executeBreakAction;
62
QAction* executeRunAction;
63
QAction* executeStepAction;
64
QAction* executeStepOverAction;
65
QAction* executeRunToAction;
66
QAction* executeStepOutAction;
68
QAction* breakpointToggleAction;
69
QAction* breakpointAddAction;
71
QAction* helpAboutAction;
74
DockableWidgetArea *mainArea;
76
DisasmViewer* disasmView;
78
CPURegsViewer* regsView;
79
FlagsViewer* flagsView;
80
StackViewer* stackView;
84
Breakpoints breakpoints;
85
MemoryLayout memLayout;
87
unsigned char* mainMemory;
89
QMap<QString, int> debuggables;
93
void createToolbars();
94
void createStatusbar();
97
void finalizeConnection(bool halted);
98
void pauseStatusChanged(bool isPaused);
104
void refreshBreakpoints();
107
void systemConnect();
108
void systemDisconnect();
110
void systemSymbolManager();
111
void systemPreferences();
112
void toggleRegisterDisplay();
113
void toggleFlagsDisplay();
114
void toggleStackDisplay();
115
void toggleSlotsDisplay();
116
void toggleMemoryDisplay();
117
void addDebuggableViewer();
121
void executeStepOver();
123
void executeStepOut();
124
void breakpointToggle(int addr = -1);
125
void breakpointAdd();
127
void toggleView( DockableWidget* widget );
128
void initConnection();
129
void handleUpdate(const QString& type, const QString& name, const QString& message);
130
void setDebuggables( const QString& list );
131
void setDebuggableSize( const QString& debuggable, int size );
132
void connectionClosed();
133
void dockWidgetVisibilityChanged( DockableWidget *w );
134
void updateViewMenu();
136
friend class QueryPauseHandler;
137
friend class QueryBreakedHandler;
138
friend class ListBreakPointsHandler;
139
friend class CPURegRequest;
140
friend class ListDebuggablesHandler;
141
friend class DebuggableSizeHandler;
144
void settingsChanged();
145
void symbolsChanged();
146
void debuggablesChanged( const QMap<QString,int>& list );
147
void emulationChanged();
150
#endif // DEBUGGERFORM_H