4
4
const zfltk = @import ("zfltk" );
5
5
const app = zfltk .app ;
6
6
const widget = zfltk .widget ;
7
- const Widget = widget .Widget ;
8
- const Window = zfltk .Window ;
9
- const Menu = zfltk .Menu ;
7
+ const Window = zfltk .window .Window ;
8
+ const MenuBar = zfltk .menu .MenuBar ;
10
9
const enums = zfltk .enums ;
11
10
const Color = enums .Color ;
12
- const TextDisplay = zfltk .TextDisplay ;
11
+ const TextEditor = zfltk .text . TextEditor ;
13
12
const dialog = zfltk .dialog ;
14
- const FileDialog = zfltk .FileDialog ;
13
+ const FileDialog = zfltk .dialog . FileDialog ;
15
14
const std = @import ("std" );
16
15
17
16
// To avoid exiting when hitting escape.
@@ -22,13 +21,13 @@ pub fn winCb(w: *Window) void {
22
21
}
23
22
}
24
23
25
- fn newCb (_ : * Menu ( .menu_bar ) , data : ? * anyopaque ) void {
26
- var editor = TextDisplay ( .editor ) .fromRaw (data .? );
24
+ fn newCb (_ : * MenuBar , data : ? * anyopaque ) void {
25
+ var editor = TextEditor .fromRaw (data .? );
27
26
editor .buffer ().? .setText ("" );
28
27
}
29
28
30
- pub fn openCb (_ : * Menu ( .menu_bar ) , data : ? * anyopaque ) void {
31
- var editor = TextDisplay ( .editor ) .fromRaw (data .? );
29
+ pub fn openCb (_ : * MenuBar , data : ? * anyopaque ) void {
30
+ var editor = TextEditor .fromRaw (data .? );
32
31
var dlg = try FileDialog (.file ).init (.{});
33
32
dlg .setFilter ("*.{txt,zig}" );
34
33
dlg .show ();
@@ -38,8 +37,8 @@ pub fn openCb(_: *Menu(.menu_bar), data: ?*anyopaque) void {
38
37
}
39
38
}
40
39
41
- pub fn saveCb (_ : * Menu ( .menu_bar ) , data : ? * anyopaque ) void {
42
- var editor = TextDisplay ( .editor ) .fromRaw (data .? );
40
+ pub fn saveCb (_ : * MenuBar , data : ? * anyopaque ) void {
41
+ var editor = TextEditor .fromRaw (data .? );
43
42
var dlg = try FileDialog (.save_file ).init (.{ .save_as_confirm = true });
44
43
dlg .setFilter ("*.{txt,zig}" );
45
44
dlg .show ();
@@ -49,27 +48,27 @@ pub fn saveCb(_: *Menu(.menu_bar), data: ?*anyopaque) void {
49
48
}
50
49
}
51
50
52
- pub fn quitCb (_ : * Menu ( .menu_bar ) , data : ? * anyopaque ) void {
51
+ pub fn quitCb (_ : * MenuBar , data : ? * anyopaque ) void {
53
52
var win = widget .Widget .fromRaw (data .? );
54
53
win .hide ();
55
54
}
56
55
57
- pub fn cutCb (_ : * Menu ( .menu_bar ) , data : ? * anyopaque ) void {
58
- const editor = TextDisplay ( .editor ) .fromRaw (data .? );
56
+ pub fn cutCb (_ : * MenuBar , data : ? * anyopaque ) void {
57
+ const editor = TextEditor .fromRaw (data .? );
59
58
editor .cut ();
60
59
}
61
60
62
- pub fn copyCb (_ : * Menu ( .menu_bar ) , data : ? * anyopaque ) void {
63
- const editor = TextDisplay ( .editor ) .fromRaw (data .? );
61
+ pub fn copyCb (_ : * MenuBar , data : ? * anyopaque ) void {
62
+ const editor = TextEditor .fromRaw (data .? );
64
63
_ = editor .copy ();
65
64
}
66
65
67
- pub fn pasteCb (_ : * Menu ( .menu_bar ) , data : ? * anyopaque ) void {
68
- const editor = TextDisplay ( .editor ) .fromRaw (data .? );
66
+ pub fn pasteCb (_ : * MenuBar , data : ? * anyopaque ) void {
67
+ const editor = TextEditor .fromRaw (data .? );
69
68
editor .paste ();
70
69
}
71
70
72
- pub fn helpCb (_ : * Menu ( .menu_bar ) ) void {
71
+ pub fn helpCb (_ : * MenuBar ) void {
73
72
dialog .message (300 , 200 , "This editor was built using fltk and zig!" );
74
73
}
75
74
@@ -86,9 +85,9 @@ pub fn main() !void {
86
85
});
87
86
88
87
win .freePosition ();
89
- var mymenu = try Menu ( .menu_bar ) .init (.{ .w = 800 , .h = 35 });
88
+ var mymenu = try MenuBar .init (.{ .w = 800 , .h = 35 });
90
89
91
- var editor = try TextDisplay ( .editor ) .init (.{
90
+ var editor = try TextEditor .init (.{
92
91
.x = 2 ,
93
92
.y = 37 ,
94
93
.w = 800 - 2 ,
0 commit comments