rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=6c0c4a2fefb81094c075bab0a0a3c039cb7813fe
commit 6c0c4a2fefb81094c075bab0a0a3c039cb7813fe Author: Andrii Kroitor <[email protected]> Date: Mon Jul 25 13:50:23 2016 +0300 main_window: add shortcuts list to help menu --- data/themes/default/widgets/label.edc | 28 ++++++++++++++ src/bin/ui/main_window.c | 70 +++++++++++++++++++++++++++++++++++ src/bin/ui/main_window.h | 11 ++++++ src/bin/ui/menu.c | 4 ++ 4 files changed, 113 insertions(+) diff --git a/data/themes/default/widgets/label.edc b/data/themes/default/widgets/label.edc index cd87c0d..008074b 100644 --- a/data/themes/default/widgets/label.edc +++ b/data/themes/default/widgets/label.edc @@ -117,3 +117,31 @@ group { name: "elm/label/base/slide_about"; } } } + +group { name: "elm/label/base/help"; + data { + item: "min_font_size" "6"; + item: "max_font_size" "60"; + item: "default_font_size" "11"; + } + parts { + part { name: "label.text.clip"; + type: RECT; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + } + } + part { name: "elm.text"; + type: TEXTBLOCK; + scale: 1; + clip_to: "label.text.clip"; + description { state: "default" 0.0; + text { + style: "eflete_textblock_style"; + min: 1 1; + } + } + } + } +} diff --git a/src/bin/ui/main_window.c b/src/bin/ui/main_window.c index 98a9c15..01788a2 100644 --- a/src/bin/ui/main_window.c +++ b/src/bin/ui/main_window.c @@ -207,3 +207,73 @@ about_window_add(void) evas_object_del(content); return NULL; } + +static Evas_Object * +_shortcuts_window_content_get(void *data, Evas_Object **to_focus __UNUSED__) +{ + Evas_Object *box = data; + Evas_Object *scroller = elm_scroller_add(ap.win); + Evas_Object *label = elm_label_add(scroller); + elm_object_text_set(label, _( + "Global:<br>" + "<b>F1</b> - normal mode<br>" + "<b>F2</b> - code mode<br>" + "<b>F3</b> - demo mode<br>" + "<b>F7</b> - open image manager<br>" + "<b>F8</b> - open sound manager<br>" + "<b>F9</b> - open style manager<br>" + "<b>F10</b> - open colorclass manager<br>" + "<br>" + "Workspace:<br>" + "<b>ctrl + q</b> - quit<br>" + "<b>ctrl + s</b> - save<br>" + "<b>ctrl + z</b> - undo<br>" + "<b>ctrl + y</b> - redo<br>" + "<b>ctrl + n</b> - add new group<br>" + "<b>q</b> - add new part<br>" + "<b>w</b> - add new state<br>" + "<b>e</b> - add new item<br>" + "<b>r</b> - add new program<br>" + "<b>t</b> - add new data item<br>" + "<b>del</b> - delete selected part/state/item/program/data item<br>" + "<b>s</b> - select next state of active part<br>" + "<b>z</b> - select prev part<br>" + "<b>x</b> - select next part<br>" + "<b>ESC</b> - unselect<br>" + "<b>o</b> - show/hide object area<br>" + "<b>ctrl + w</b> - close tab<br>" + "<b>ctrl + wheel_up</b> / <b>KP_ADD</b> - zoom in<br>" + "<b>ctrl + wheel_down</b> / <b>KP_SUB</b> - zoom out<br>" + "<b>KP_DIV</b> - set zoom to 100%<br>" + "<br>" + "Tabs:<br>" + "<b>ctrl + num</b> - switch to tab 1-10<br>" + "<b>tab</b> / <b>ctrl + pg_down</b> - switch to next tab<br>" + "<b>shift + tab</b> / <b>ctrl + pg_up</b> - switch to prev tab<br>" + "<br>" + "Popups:<br>" + "<b>Enter</b> - OK<br>" + "<b>ESC</b> - cancel<br>" + )); + + elm_object_style_set(label, "help"); + elm_object_content_set(scroller, label); + evas_object_size_hint_weight_set(scroller, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(scroller, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_show(scroller); + elm_box_pack_end(box, scroller); + + return box; +} + +Evas_Object * +shortcuts_window_add(void) +{ + Evas_Object *content = elm_box_add(ap.win); + + evas_object_size_hint_min_set(content, 0, 300); + + popup_want_action(_("Shortcuts"), NULL, _shortcuts_window_content_get, BTN_OK, NULL, content); + evas_object_del(content); + return NULL; +} diff --git a/src/bin/ui/main_window.h b/src/bin/ui/main_window.h index 6de173a..7f1cb4e 100644 --- a/src/bin/ui/main_window.h +++ b/src/bin/ui/main_window.h @@ -85,6 +85,7 @@ enum Menu_Item MENU_HELP, MENU_HELP_ABOUT, + MENU_HELP_SHORTCUTS, /* Needed for menu array init */ MENU_ITEMS_COUNT @@ -548,4 +549,14 @@ sound_manager_add(void); Evas_Object * about_window_add(void); +/** + * Show popup with shortcuts info + * + * @return window + * + * @ingroup Window + */ +Evas_Object * +shortcuts_window_add(void); + #endif /* UI_MAIN_WINDOW_H */ diff --git a/src/bin/ui/menu.c b/src/bin/ui/menu.c index 9f45628..29f280d 100644 --- a/src/bin/ui/menu.c +++ b/src/bin/ui/menu.c @@ -201,6 +201,9 @@ _menu_cb(void *data __UNUSED__, case MENU_HELP_ABOUT: about_window_add(); break; + case MENU_HELP_SHORTCUTS: + shortcuts_window_add(); + break; default: ERR("unknown menu id: %d", menu_event->mid); break; @@ -327,6 +330,7 @@ ui_menu_add(void) ITEM_MENU_ADD(MENU_WINDOW, MENU_WINDOW_MANAGER_COLORCLASS, "color", _("Color class manager"), "F10") ITEM_MENU_ADD(MENU_NULL, MENU_HELP, NULL, _("Help"), NULL) + ITEM_MENU_ADD(MENU_HELP, MENU_HELP_SHORTCUTS, NULL, _("Shortcuts"), NULL) ITEM_MENU_ADD(MENU_HELP, MENU_HELP_ABOUT, NULL, _("About"), NULL) elm_menu_item_separator_add(window_menu, menu->items[MENU_FILE_IMPORT_EDC]); --
