comparison libmlk-ui/mlk/ui/gridmenu.c @ 450:b26dd49f69ff

core: event -> mlk_event (and friends)
author David Demelier <markand@malikania.fr>
date Sat, 18 Feb 2023 13:37:11 +0100
parents 773a082f0b91
children c4f31658104d
comparison
equal deleted inserted replaced
449:f2f0e73ea9da 450:b26dd49f69ff
152 } 152 }
153 } 153 }
154 } 154 }
155 155
156 static int 156 static int
157 handle_keydown(struct gridmenu *menu, const struct event_key *key) 157 handle_keydown(struct gridmenu *menu, const struct mlk_event_key *key)
158 { 158 {
159 assert(key->type == EVENT_KEYDOWN); 159 assert(key->type == MLK_EVENT_KEYDOWN);
160 160
161 const struct index idx = get_index(menu); 161 const struct index idx = get_index(menu);
162 int validate = 0; 162 int validate = 0;
163 163
164 switch (key->key) { 164 switch (key->key) {
165 case KEY_UP: 165 case MLK_KEY_UP:
166 if (idx.row > 0) 166 if (idx.row > 0)
167 menu->selected -= menu->ncols; 167 menu->selected -= menu->ncols;
168 break; 168 break;
169 case KEY_RIGHT: 169 case MLK_KEY_RIGHT:
170 if (menu->selected + 1U < menu->itemsz) 170 if (menu->selected + 1U < menu->itemsz)
171 menu->selected += 1; 171 menu->selected += 1;
172 break; 172 break;
173 case KEY_DOWN: 173 case MLK_KEY_DOWN:
174 if (idx.row + 1U < menu->itemsz / menu->ncols) 174 if (idx.row + 1U < menu->itemsz / menu->ncols)
175 menu->selected += menu->ncols; 175 menu->selected += menu->ncols;
176 else 176 else
177 menu->selected = menu->itemsz - 1; 177 menu->selected = menu->itemsz - 1;
178 break; 178 break;
179 case KEY_LEFT: 179 case MLK_KEY_LEFT:
180 if (idx.col > 0) 180 if (idx.col > 0)
181 menu->selected -= 1; 181 menu->selected -= 1;
182 break; 182 break;
183 case KEY_ENTER: 183 case MLK_KEY_ENTER:
184 validate = 1; 184 validate = 1;
185 break; 185 break;
186 default: 186 default:
187 break; 187 break;
188 } 188 }
189 189
190 return validate; 190 return validate;
191 } 191 }
192 192
193 static int 193 static int
194 handle_clickdown(struct gridmenu *menu, const struct event_click *click) 194 handle_clickdown(struct gridmenu *menu, const struct mlk_event_click *click)
195 { 195 {
196 assert(click->type == EVENT_CLICKDOWN); 196 assert(click->type == MLK_EVENT_CLICKDOWN);
197 197
198 const struct theme *theme = THEME(menu); 198 const struct theme *theme = THEME(menu);
199 size_t pagesz, pagenr, selected, c = 0, r = 0; 199 size_t pagesz, pagenr, selected, c = 0, r = 0;
200 int x, y; 200 int x, y;
201 201
256 256
257 geometry(menu); 257 geometry(menu);
258 } 258 }
259 259
260 int 260 int
261 gridmenu_handle(struct gridmenu *menu, const union event *ev) 261 gridmenu_handle(struct gridmenu *menu, const union mlk_event *ev)
262 { 262 {
263 assert(menu); 263 assert(menu);
264 assert(ev); 264 assert(ev);
265 265
266 switch (ev->type) { 266 switch (ev->type) {
267 case EVENT_KEYDOWN: 267 case MLK_EVENT_KEYDOWN:
268 return handle_keydown(menu, &ev->key); 268 return handle_keydown(menu, &ev->key);
269 break; 269 break;
270 case EVENT_CLICKDOWN: 270 case MLK_EVENT_CLICKDOWN:
271 return handle_clickdown(menu, &ev->click); 271 return handle_clickdown(menu, &ev->click);
272 break; 272 break;
273 default: 273 default:
274 break; 274 break;
275 } 275 }