Maki
Formally verfied low-code orchestration
Toggle main menu visibility
Loading...
Searching...
No Matches
code_viewer.h
1
#pragma once
2
3
#include <QPlainTextEdit>
4
5
class
LineNumberArea
;
6
7
class
CodeViewer :
public
QPlainTextEdit
8
{
9
Q_OBJECT
10
11
public
:
12
CodeViewer(QWidget* parent =
nullptr
);
13
14
void
lineNumberAreaPaintEvent(QPaintEvent* event);
15
int
lineNumberAreaWidth()
const
;
16
17
protected
:
18
void
resizeEvent(QResizeEvent* event)
override
;
19
20
private
slots:
21
void
updateLineNumberAreaWidth(
int
newBlockCount);
22
void
highlightCurrentLine();
23
void
updateLineNumberArea(
const
QRect& rect,
int
dy);
24
25
private
:
26
LineNumberArea
* mLineNumberArea =
nullptr
;
27
};
28
29
class
LineNumberArea :
public
QWidget
30
{
31
public
:
32
LineNumberArea(
CodeViewer
* editor)
33
: QWidget(editor)
34
, mEditor(editor)
35
{
36
}
37
38
QSize sizeHint()
const override
39
{
40
return
QSize(mEditor->lineNumberAreaWidth(), 0);
41
}
42
43
protected
:
44
void
paintEvent(QPaintEvent* event)
override
45
{
46
mEditor->lineNumberAreaPaintEvent(event);
47
}
48
49
private
:
50
CodeViewer
* mEditor =
nullptr
;
51
};
CodeViewer
Definition
code_viewer.h:8
LineNumberArea
Definition
code_viewer.h:30
Generated for
MAKI
· © 2026 with
Doxygen
1.9.8
GitHub
Research