@@ -64,7 +64,7 @@ open CamomileLibrary
64
64
class asciiart img = object (self )
65
65
inherit t " asciiart" as super
66
66
67
- method can_focus = true
67
+ method! can_focus = true
68
68
69
69
(* scrollable interfaces *)
70
70
val vscroll = new scrollable
@@ -81,7 +81,7 @@ class asciiart img = object(self)
81
81
vscroll#set_document_size self#document_size.rows;
82
82
hscroll#set_document_size self#document_size.cols
83
83
84
- method set_allocation r =
84
+ method! set_allocation r =
85
85
super#set_allocation r;
86
86
let size = size_of_rect r in
87
87
vscroll#set_page_size size.rows;
@@ -98,13 +98,13 @@ class asciiart img = object(self)
98
98
| Some (r , c , i ) when r = ! avg_rows && c = ! avg_cols -> i
99
99
| _ -> stored_img < - Some (! avg_rows, ! avg_cols, indices img); self#img
100
100
101
- method draw ctx focused =
101
+ method! draw ctx _focused =
102
102
let { rows; cols } = LTerm_draw. size ctx in
103
103
let img = self#img in
104
104
for row= 0 to rows-1 do
105
105
for col= 0 to cols-1 do
106
106
LTerm_draw. draw_char ~style ctx row col @@
107
- UChar. of_char palette.[
107
+ Zed_char. unsafe_of_char palette.[
108
108
try img.(row + vscroll#offset).(col + hscroll#offset) with _ -> 0
109
109
]
110
110
done
@@ -126,29 +126,29 @@ class asciiart img = object(self)
126
126
127
127
(* adjust scale, which changes the document size *)
128
128
method private scale_event = function
129
- | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c } when c = UChar. of_char 'w' ->
129
+ | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c ;_ } when c = UChar. of_char 'w' ->
130
130
avg_rows := max 1 (! avg_rows - 1 );
131
131
vscroll#set_document_size self#document_size.rows;
132
132
self#queue_draw; true
133
- | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c } when c = UChar. of_char 's' ->
133
+ | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c ;_ } when c = UChar. of_char 's' ->
134
134
avg_rows := ! avg_rows + 1 ;
135
135
vscroll#set_document_size self#document_size.rows;
136
136
self#queue_draw; true
137
- | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c } when c = UChar. of_char 'a' ->
137
+ | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c ;_ } when c = UChar. of_char 'a' ->
138
138
avg_cols := max 1 (! avg_cols - 1 );
139
139
hscroll#set_document_size self#document_size.cols;
140
140
self#queue_draw; true
141
- | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c } when c = UChar. of_char 'd' ->
141
+ | LTerm_event. Key {LTerm_key. code =LTerm_key. Char c ;_ } when c = UChar. of_char 'd' ->
142
142
avg_cols := ! avg_cols + 1 ;
143
143
hscroll#set_document_size self#document_size.cols;
144
144
self#queue_draw; true
145
145
| _ -> false
146
146
147
147
(* page up/down *)
148
148
method page_event = function
149
- | LTerm_event. Key {LTerm_key. code =LTerm_key. Next_page } ->
149
+ | LTerm_event. Key {LTerm_key. code =LTerm_key. Next_page ;_ } ->
150
150
vscroll#set_offset @@ vscroll#page_next; self#queue_draw; true
151
- | LTerm_event. Key {LTerm_key. code =LTerm_key. Prev_page } ->
151
+ | LTerm_event. Key {LTerm_key. code =LTerm_key. Prev_page ;_ } ->
152
152
vscroll#set_offset @@ vscroll#page_prev; self#queue_draw; true
153
153
| _ -> false
154
154
@@ -202,7 +202,7 @@ let main () =
202
202
top#set vbox;
203
203
204
204
top#on_event (function (* quit with escape key *)
205
- | LTerm_event. Key {LTerm_key. code =LTerm_key. Escape } ->
205
+ | LTerm_event. Key {LTerm_key. code =LTerm_key. Escape ;_ } ->
206
206
wakeup wakener () ; false
207
207
| _ -> false );
208
208
0 commit comments