forked from AllenDang/giu
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCodeEditor.go
116 lines (88 loc) · 2.48 KB
/
CodeEditor.go
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
package giu
import "github.com/AllenDang/imgui-go"
type CodeEditorWidget struct {
title string
editor imgui.TextEditor
}
func CodeEditor(title string) *CodeEditorWidget {
return &CodeEditorWidget{
title: title,
editor: imgui.NewTextEditor(),
}
}
func (ce *CodeEditorWidget) SetShowWhitespaces(s bool) {
ce.editor.SetShowWhitespaces(s)
}
func (ce *CodeEditorWidget) SetTabSize(size int) {
ce.editor.SetTabSize(size)
}
func (ce *CodeEditorWidget) SetLanguageDefinitionSQL() {
ce.editor.SetLanguageDefinitionSQL()
}
func (ce *CodeEditorWidget) SetLanguageDefinitionCPP() {
ce.editor.SetLanguageDefinitionCPP()
}
func (ce *CodeEditorWidget) SetLanguageDefinitionLua() {
ce.editor.SetLanguageDefinitionLua()
}
func (ce *CodeEditorWidget) SetLanguageDefinitionC() {
ce.editor.SetLanguageDefinitionC()
}
func (ce *CodeEditorWidget) SetText(str string) {
ce.editor.SetText(str)
}
func (ce *CodeEditorWidget) HasSelection() bool {
return ce.editor.HasSelection()
}
func (ce *CodeEditorWidget) GetSelectedText() string {
return ce.editor.GetSelectedText()
}
func (ce *CodeEditorWidget) GetText() string {
return ce.editor.GetText()
}
func (ce *CodeEditorWidget) GetCurrentLineText() string {
return ce.editor.GetCurrentLineText()
}
func (ce *CodeEditorWidget) GetCursorPos() (int, int) {
return ce.editor.GetCursorPos()
}
func (ce *CodeEditorWidget) GetSelectionStart() (int, int) {
return ce.editor.GetSelectionStart()
}
func (ce *CodeEditorWidget) SetErrorMarkers(markers imgui.ErrorMarkers) {
ce.editor.SetErrorMarkers(markers)
}
func (ce *CodeEditorWidget) InsertText(text string) {
ce.editor.InsertText(text)
}
func (ce *CodeEditorWidget) GetWordUnderCursor() string {
return ce.editor.GetWordUnderCursor()
}
func (ce *CodeEditorWidget) SelectWordUnderCursor() {
ce.editor.SelectWordUnderCursor()
}
func (ce *CodeEditorWidget) IsTextChanged() bool {
return ce.editor.IsTextChanged()
}
func (ce *CodeEditorWidget) SetHandleKeyboardInputs(b bool) {
ce.editor.SetHandleKeyboardInputs(b)
}
func (ce *CodeEditorWidget) GetScreenCursorPos() (int, int) {
return ce.editor.GetScreenCursorPos()
}
func (ce *CodeEditorWidget) Copy() {
ce.editor.Copy()
}
func (ce *CodeEditorWidget) Cut() {
ce.editor.Cut()
}
func (ce *CodeEditorWidget) Paste() {
ce.editor.Paste()
}
func (ce *CodeEditorWidget) Delete() {
ce.editor.Delete()
}
func (ce *CodeEditorWidget) Render(width, height float32, border bool) {
tStr(ce.editor.GetText())
ce.editor.Render(ce.title, imgui.Vec2{X: width, Y: height}, border)
}