File: RegisterGroup.h

package info (click to toggle)
edb-debugger 1.3.0-2.2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,124 kB
  • sloc: cpp: 46,241; xml: 4,998; ansic: 3,088; sh: 52; asm: 33; makefile: 5
file content (48 lines) | stat: -rw-r--r-- 1,227 bytes parent folder | download | duplicates (4)
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

#ifndef REGISTER_GROUP_H_20191119_
#define REGISTER_GROUP_H_20191119_

#include <QWidget>

namespace ODbgRegisterView {

class SimdValueManager;
class FieldWidget;
class ValueField;
class ODBRegView;

class RegisterGroup : public QWidget {
	Q_OBJECT
	friend SimdValueManager;

public:
	explicit RegisterGroup(const QString &name_, QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags());
	QList<FieldWidget *> fields() const;
	QList<ValueField *> valueFields() const;
	void setIndices(const QList<QModelIndex> &indices);
	void insert(int line, int column, FieldWidget *widget);
	// Insert, but without moving to its place
	void insert(FieldWidget *widget);
	void setupPositionAndSize(int line, int column, FieldWidget *widget);
	void appendNameValueComment(const QModelIndex &nameIndex, const QString &tooltip = "", bool insertComment = true);
	void showMenu(const QPoint &position, const QList<QAction *> &additionalItems = {}) const;
	QMargins getFieldMargins() const;

public Q_SLOTS:
	void adjustWidth();

protected:
	void mousePressEvent(QMouseEvent *event) override;

private:
	int lineAfterLastField() const;
	ODBRegView *regView() const;

private:
	QList<QAction *> menuItems_;
	QString name_;
};

}

#endif