Changeset 6037308 in mainline
- Timestamp:
- 2013-04-12T20:45:31Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- c80be58
- Parents:
- a2bdcf87
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/edit/edit.c
ra2bdcf87 r6037308 119 119 static void cursor_setvis(bool visible); 120 120 121 static void key_handle_press(kbd_event_t *ev); 121 122 static void key_handle_unmod(kbd_event_t const *ev); 122 123 static void key_handle_ctrl(kbd_event_t const *ev); … … 124 125 static void key_handle_shift_ctrl(kbd_event_t const *ev); 125 126 static void key_handle_movement(unsigned int key, bool shift); 127 128 static void pos_handle(pos_event_t *ev); 126 129 127 130 static int file_save(char const *fname); … … 183 186 { 184 187 cons_event_t ev; 185 kbd_event_t *kev;186 188 bool new_file; 187 189 int rc; … … 249 251 pane.rflags = 0; 250 252 251 if (ev.type == CEV_KEY && ev.ev.key.type == KEY_PRESS) { 252 kev = &ev.ev.key; 253 254 /* Handle key press. */ 255 if (((kev->mods & KM_ALT) == 0) && 256 ((kev->mods & KM_SHIFT) == 0) && 257 (kev->mods & KM_CTRL) != 0) { 258 key_handle_ctrl(kev); 259 } else if (((kev->mods & KM_ALT) == 0) && 260 ((kev->mods & KM_CTRL) == 0) && 261 (kev->mods & KM_SHIFT) != 0) { 262 key_handle_shift(kev); 263 } else if (((kev->mods & KM_ALT) == 0) && 264 ((kev->mods & KM_CTRL) != 0) && 265 (kev->mods & KM_SHIFT) != 0) { 266 key_handle_shift_ctrl(kev); 267 } else if ((kev->mods & (KM_CTRL | KM_ALT | KM_SHIFT)) == 0) { 268 key_handle_unmod(kev); 269 } 253 switch (ev.type) { 254 case CEV_KEY: 255 if (ev.ev.key.type == KEY_PRESS) 256 key_handle_press(&ev.ev.key); 257 break; 258 case CEV_POS: 259 pos_handle(&ev.ev.pos); 260 break; 270 261 } 271 262 … … 289 280 290 281 return 0; 282 } 283 284 /* Handle key press. */ 285 static void key_handle_press(kbd_event_t *ev) 286 { 287 if (((ev->mods & KM_ALT) == 0) && 288 ((ev->mods & KM_SHIFT) == 0) && 289 (ev->mods & KM_CTRL) != 0) { 290 key_handle_ctrl(ev); 291 } else if (((ev->mods & KM_ALT) == 0) && 292 ((ev->mods & KM_CTRL) == 0) && 293 (ev->mods & KM_SHIFT) != 0) { 294 key_handle_shift(ev); 295 } else if (((ev->mods & KM_ALT) == 0) && 296 ((ev->mods & KM_CTRL) != 0) && 297 (ev->mods & KM_SHIFT) != 0) { 298 key_handle_shift_ctrl(ev); 299 } else if ((ev->mods & (KM_CTRL | KM_ALT | KM_SHIFT)) == 0) { 300 key_handle_unmod(ev); 301 } 291 302 } 292 303 … … 462 473 default: 463 474 break; 475 } 476 } 477 478 static void pos_handle(pos_event_t *ev) 479 { 480 coord_t bc; 481 spt_t pt; 482 483 if (ev->type == POS_PRESS && ev->vpos < (unsigned)pane.rows) { 484 bc.row = pane.sh_row + ev->vpos; 485 bc.column = pane.sh_column + ev->hpos; 486 sheet_get_cell_pt(doc.sh, &bc, dir_before, &pt); 487 488 caret_move(pt, false, true); 464 489 } 465 490 }
Note:
See TracChangeset
for help on using the changeset viewer.