35 static UcxMap *stock_items; |
35 static UcxMap *stock_items; |
36 |
36 |
37 void ui_stock_init() { |
37 void ui_stock_init() { |
38 stock_items = ucx_map_new(64); |
38 stock_items = ucx_map_new(64); |
39 |
39 |
40 ui_add_stock_item(UI_STOCK_NEW, "New", NULL); |
40 ui_add_stock_item(UI_STOCK_NEW, "New", "Ctrl<Key>N", "Ctrl+N", NULL); |
41 ui_add_stock_item(UI_STOCK_OPEN, "Open", NULL); |
41 ui_add_stock_item(UI_STOCK_OPEN, "Open", "Ctrl<Key>O", "Ctrl+O", NULL); |
42 ui_add_stock_item(UI_STOCK_SAVE, "Save", NULL); |
42 ui_add_stock_item(UI_STOCK_SAVE, "Save", "Ctrl<Key>S", "Ctrl+S", NULL); |
43 ui_add_stock_item(UI_STOCK_SAVE_AS, "Save as ...", NULL); |
43 ui_add_stock_item(UI_STOCK_SAVE_AS, "Save as ...", NULL, NULL, NULL); |
44 ui_add_stock_item(UI_STOCK_CLOSE, "Close", NULL); |
44 ui_add_stock_item(UI_STOCK_CLOSE, "Close", "Ctrl<Key>W", "Ctrl+W", NULL); |
45 ui_add_stock_item(UI_STOCK_UNDO, "Undo", NULL); |
45 ui_add_stock_item(UI_STOCK_UNDO, "Undo", "Ctrl<Key>Z", "Ctrl+Z", NULL); |
46 ui_add_stock_item(UI_STOCK_REDO, "Redo", NULL); |
46 ui_add_stock_item(UI_STOCK_REDO, "Redo", NULL, NULL, NULL); |
47 ui_add_stock_item(UI_STOCK_GO_BACK, "Back", NULL); |
47 ui_add_stock_item(UI_STOCK_GO_BACK, "Back", NULL, NULL, NULL); |
48 ui_add_stock_item(UI_STOCK_GO_FORWARD, "Forward", NULL); |
48 ui_add_stock_item(UI_STOCK_GO_FORWARD, "Forward", NULL, NULL, NULL); |
49 } |
49 } |
50 |
50 |
51 void ui_add_stock_item(char *id, char *label, void *icon) { |
51 void ui_add_stock_item(char *id, char *label, char *accelerator, char *accelerator_label, void *icon) { |
52 UiStockItem *i = malloc(sizeof(UiStockItem)); |
52 UiStockItem *i = malloc(sizeof(UiStockItem)); |
53 i->label = label; |
53 i->label = label; |
|
54 i->accelerator = accelerator; |
|
55 i->accelerator_label = accelerator_label; |
54 // TODO: icon |
56 // TODO: icon |
55 |
57 |
56 ucx_map_cstr_put(stock_items, id, i); |
58 ucx_map_cstr_put(stock_items, id, i); |
57 } |
59 } |
58 |
60 |