-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathGUIDebuggerInputController.h
39 lines (32 loc) · 1.11 KB
/
GUIDebuggerInputController.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#ifndef __GUIDEBUGGER_INPUT_CONTROLLER_H__
#define __GUIDEBUGGER_INPUT_CONTROLLER_H__
#include "DebuggerInputInterface.h"
#include "Interpreter.h"
#include "DebugDispatcher.h"
#include "ASTCreator.h"
#include <fstream>
class GUIDebuggerWindow;
class GUIDebuggerInputController : public DebuggerInputInterface{
private:
bool inputEnabled, startupMode, refreshView;
Interpreter *i;
DebugDispatcher *d;
Object *astRoot;
GUIDebuggerWindow *win;
std::string sourceCode;
void onButtonClickContinue();
void onButtonClickStepOver();
void onButtonClickStepIn();
void onButtonClickSetBreakpoint();
void onButtonClickRemoveBreakpoint();
void onButtonClickClearAllBreakpoints();
void onTreeViewCallStackClick(int index);
void addObjectFieldToView(const Value &name, const Value *val);
bool onIdleView();
public:
GUIDebuggerInputController();
void launchGUI(std::ifstream *inputFile, Interpreter *_i, DebugDispatcher *_d, Object *_astRoot);
virtual void setInitialBreakpoints(DebugDispatcher *d) override;
virtual void handleInput(DebugDispatcher *d) override;
};
#endif