blob: a38b3b111528d28b1d636389129385a926103cd9 (
plain) (
blame)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
|
// license:BSD-3-Clause
// copyright-holders:Andrew Gardner
#ifndef MAME_DEBUGGER_QT_DEBUGGERVIEW_H
#define MAME_DEBUGGER_QT_DEBUGGERVIEW_H
#include "debug/debugvw.h"
#include <QtWidgets/QAbstractScrollArea>
#include <QtWidgets/QMenu>
class DebuggerView : public QAbstractScrollArea
{
Q_OBJECT
public:
DebuggerView(debug_view_type type, running_machine &machine, QWidget *parent = nullptr);
virtual ~DebuggerView();
void paintEvent(QPaintEvent *event);
// Setters and accessors
void setPreferBottom(bool pb) { m_preferBottom = pb; }
debug_view *view() { return m_view; }
signals:
void updated();
protected:
void keyPressEvent(QKeyEvent *event) override;
void mousePressEvent(QMouseEvent *event) override;
void contextMenuEvent(QContextMenuEvent *event) override;
virtual void addItemsToContextMenu(QMenu *menu);
private slots:
void verticalScrollSlot(int value);
void horizontalScrollSlot(int value);
void copyVisibleSlot();
void pasteSlot();
private:
// Callback to allow MAME to refresh the view
static void debuggerViewUpdate(debug_view &debugView, void *osdPrivate);
running_machine &m_machine;
debug_view *m_view;
bool m_preferBottom;
};
#endif // MAME_DEBUGGER_QT_DEBUGGERVIEW_H
|