OpenCores
URL https://opencores.org/ocsvn/riscv_vhdl/riscv_vhdl/trunk

Subversion Repositories riscv_vhdl

[/] [riscv_vhdl/] [trunk/] [debugger/] [src/] [gui_plugin/] [MainWindow/] [DbgMainWindow.h] - Blame information for rev 3

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 sergeykhbr
/**
2
 * @file
3
 * @copyright  Copyright 2016 GNSS Sensor Ltd. All right reserved.
4
 * @author     Sergey Khabarov - sergeykhbr@gmail.com
5
 * @brief      Debugger Main Window form.
6
 */
7
 
8
#pragma once
9
 
10
#include "api_core.h"   // MUST BE BEFORE QtWidgets.h or any other Qt header.
11
#include "igui.h"
12
#include "coreservices/isocinfo.h"
13
#include "ebreakhandler.h"
14
 
15
#include <QtWidgets/QMainWindow>
16 2 sergeykhbr
#include <QtWidgets/QMenu>
17
#include <QtWidgets/QAction>
18 3 sergeykhbr
#include "MdiAreaWidget.h"
19
 
20
namespace debugger {
21
 
22
class DbgMainWindow : public QMainWindow,
23
                      public IGuiCmdHandler {
24
    Q_OBJECT
25
 
26
public:
27
    DbgMainWindow(IGui *igui);
28
    virtual ~DbgMainWindow();
29
 
30
    /** IGuiCmdHandler */
31
    virtual void handleResponse(AttributeType *req, AttributeType *resp);
32
 
33
signals:
34
    void signalUpdateByTimer();
35
    void signalTargetStateChanged(bool);
36
    void signalRedrawDisasm();
37
    void signalAboutToClose();
38
 
39
protected:
40
    virtual void closeEvent(QCloseEvent *ev_);
41
#ifndef QT_NO_CONTEXTMENU
42
    void contextMenuEvent(QContextMenuEvent *ev_) override;
43
#endif // QT_NO_CONTEXTMENU
44
 
45
private slots:
46
    void slotUpdateByTimer();
47
    void slotActionAbout();
48
    void slotActionTargetRun();
49
    void slotActionTargetHalt();
50
    void slotActionTargetStepInto();
51
    void slotActionTriggerUart0(bool val);
52
    void slotActionTriggerRegs(bool val);
53
    void slotActionTriggerCpuAsmView(bool val);
54
    void slotActionTriggerStackTraceView(bool val);
55
    void slotActionTriggerMemView(bool val);
56
    void slotActionTriggerGpio(bool val);
57
    void slotActionTriggerPnp(bool val);
58
    void slotActionTriggerGnssMap(bool val);
59
    void slotActionTriggerSymbolBrowser();
60
    void slotOpenDisasm(uint64_t addr, uint64_t sz);
61
    void slotOpenMemory(uint64_t addr, uint64_t sz);
62
    void slotBreakpointsChanged();
63
 
64
private:
65
    void createActions();
66
    void createMenus();
67
    void createStatusBar();
68
    void createMdiWindow();
69
    void addWidgets();
70
 
71
private:
72
    QAction *actionAbout_;
73
    QAction *actionQuit_;
74
    QAction *actionRun_;
75
    QAction *actionHalt_;
76
    QAction *actionStep_;
77
    QAction *actionSymbolBrowser_;
78
    QAction *actionRegs_;
79
    QMdiSubWindow *viewRegs_;
80
    QAction *actionCpuAsm_;
81
    QMdiSubWindow *viewCpuAsm_;
82
    QAction *actionStackTrace_;
83
    QMdiSubWindow *viewStackTrace_;
84
    QAction *actionMem_;
85
    QMdiSubWindow *viewMem_;
86
    QAction *actionGpio_;
87
    QMdiSubWindow *viewGpio_;
88
    QAction *actionPnp_;
89
    QMdiSubWindow *viewPnp_;
90
    QAction *actionSerial_;
91
    QMdiSubWindow *viewUart0_;
92
    QAction *actionGnssMap_;
93
    QMdiSubWindow *viewGnssMap_;
94
    QTimer *tmrGlobal_;
95
    MdiAreaWidget *mdiArea_;
96
 
97
    AttributeType config_;
98
    AttributeType listConsoleListeners_;
99
    AttributeType cmdStatus_;
100
    AttributeType cmdRun_;
101
    AttributeType cmdHalt_;
102
    AttributeType cmdStep_;
103
 
104
    IGui *igui_;
105
    //event_def *initDone_;
106
    bool statusRequested_;
107
    EBreakHandler *ebreak_;
108
};
109
 
110
}  // namespace debugger

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.