rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=7c5c53de251cd33938320812e9c4f01f8b49f63a
commit 7c5c53de251cd33938320812e9c4f01f8b49f63a Author: Andrii Kroitor <[email protected]> Date: Tue May 31 10:51:18 2016 +0300 shortcuts: add shortcut for data item add --- src/bin/common/signals.h | 1 + src/bin/ui/shortcuts/shortcuts.c | 3 +++ src/bin/ui/shortcuts/shortcuts.h | 1 + src/bin/ui/tabs.c | 10 ++++++++++ src/bin/ui/workspace/group_navigator.c | 2 +- src/bin/ui/workspace/group_navigator.h | 3 +++ src/bin/ui/workspace/workspace.c | 10 ++++++++++ src/bin/ui/workspace/workspace.h | 3 +++ 8 files changed, 32 insertions(+), 1 deletion(-) diff --git a/src/bin/common/signals.h b/src/bin/common/signals.h index b599037..858878d 100644 --- a/src/bin/common/signals.h +++ b/src/bin/common/signals.h @@ -502,6 +502,7 @@ typedef struct { #define SIGNAL_SHORTCUT_ADD_STATE "SIGNAL_SHORTCUT_ADD_STATE" #define SIGNAL_SHORTCUT_ADD_ITEM "SIGNAL_SHORTCUT_ADD_ITEM" #define SIGNAL_SHORTCUT_ADD_PROGRAM "SIGNAL_SHORTCUT_ADD_PROGRAM" +#define SIGNAL_SHORTCUT_ADD_DATA_ITEM "SIGNAL_SHORTCUT_ADD_DATA_ITEM" #define SIGNAL_SHORTCUT_DEL "SIGNAL_SHORTCUT_DEL" #define SIGNAL_SHORTCUT_TAB_NEXT "SIGNAL_SHORTCUT_TAB_NEXT" #define SIGNAL_SHORTCUT_TAB_PREV "SIGNAL_SHORTCUT_TAB_PREV" diff --git a/src/bin/ui/shortcuts/shortcuts.c b/src/bin/ui/shortcuts/shortcuts.c index 9dd4441..45d50f8 100644 --- a/src/bin/ui/shortcuts/shortcuts.c +++ b/src/bin/ui/shortcuts/shortcuts.c @@ -147,6 +147,7 @@ _shortcut_handle(Shortcut_Type type) SHORTCUT(ADD_STATE); SHORTCUT(ADD_ITEM); SHORTCUT(ADD_PROGRAM); + SHORTCUT(ADD_DATA_ITEM); SHORTCUT(DEL); SHORTCUT(STATE_NEXT); SHORTCUT(PART_NEXT); @@ -400,6 +401,8 @@ _default_shortcuts_add() MOD_NONE, 26/*e*/); _add_shortcut(false, SHORTCUT_TYPE_ADD_PROGRAM, SHORTCUT_TYPE_NONE, MOD_NONE, 27/*r*/); + _add_shortcut(false, SHORTCUT_TYPE_ADD_DATA_ITEM, SHORTCUT_TYPE_NONE, + MOD_NONE, 28/*t*/); _add_shortcut(false, SHORTCUT_TYPE_DEL, SHORTCUT_TYPE_NONE, MOD_NONE, 119/*del*/); _add_shortcut(false, SHORTCUT_TYPE_STATE_NEXT, SHORTCUT_TYPE_NONE, diff --git a/src/bin/ui/shortcuts/shortcuts.h b/src/bin/ui/shortcuts/shortcuts.h index a442deb..28c02dd 100644 --- a/src/bin/ui/shortcuts/shortcuts.h +++ b/src/bin/ui/shortcuts/shortcuts.h @@ -62,6 +62,7 @@ typedef enum { SHORTCUT_TYPE_ADD_STATE, SHORTCUT_TYPE_ADD_ITEM, SHORTCUT_TYPE_ADD_PROGRAM, + SHORTCUT_TYPE_ADD_DATA_ITEM, SHORTCUT_TYPE_DEL, SHORTCUT_TYPE_TAB_NUM1, SHORTCUT_TYPE_TAB_NUM2, diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c index 96d15c2..d9166a5 100644 --- a/src/bin/ui/tabs.c +++ b/src/bin/ui/tabs.c @@ -687,6 +687,15 @@ _shortcut_add_program_cb(void *data __UNUSED__, } static void +_shortcut_add_data_item_cb(void *data __UNUSED__, + Evas_Object *obj __UNUSED__, + void *event_info __UNUSED__) +{ + if (tabs.current_workspace) + workspace_add_group_data_request(tabs.current_workspace); +} + +static void _shortcut_del_cb(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) @@ -1009,6 +1018,7 @@ tabs_add(void) evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ADD_ITEM, _shortcut_add_part_item_cb, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ADD_STATE, _shortcut_add_state_cb, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ADD_PROGRAM, _shortcut_add_program_cb, NULL); + evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ADD_DATA_ITEM, _shortcut_add_data_item_cb, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_DEL, _shortcut_del_cb, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_STATE_NEXT, _shortcut_state_next_cb, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_PART_NEXT, _shortcut_part_next_cb, NULL); diff --git a/src/bin/ui/workspace/group_navigator.c b/src/bin/ui/workspace/group_navigator.c index a51dd1c..2705e14 100644 --- a/src/bin/ui/workspace/group_navigator.c +++ b/src/bin/ui/workspace/group_navigator.c @@ -2220,7 +2220,7 @@ group_navigator_add(Evas_Object *parent, Group *group) elm_menu_item_separator_add(pl->menu, NULL); menu_item = elm_menu_item_add(pl->menu, NULL, NULL, _("Data item"), _on_menu_add_group_data_clicked, NULL); - //elm_object_part_text_set(elm_menu_item_object_get(menu_item), "elm.shortcut", "q"); + elm_object_part_text_set(elm_menu_item_object_get(menu_item), "elm.shortcut", "t"); pl->name_validator = elm_validator_regexp_new(PART_NAME_REGEX, NULL); pl->part_name_validator = resource_name_validator_new(PART_NAME_REGEX, NULL); diff --git a/src/bin/ui/workspace/group_navigator.h b/src/bin/ui/workspace/group_navigator.h index a840dbb..38f5662 100644 --- a/src/bin/ui/workspace/group_navigator.h +++ b/src/bin/ui/workspace/group_navigator.h @@ -123,6 +123,9 @@ void group_navigator_add_program_request(Evas_Object *obj); void +group_navigator_add_group_data_request(Evas_Object *obj); + +void group_navigator_delete_request(Evas_Object *obj); void diff --git a/src/bin/ui/workspace/workspace.c b/src/bin/ui/workspace/workspace.c index bcfeca4..2f1f734 100644 --- a/src/bin/ui/workspace/workspace.c +++ b/src/bin/ui/workspace/workspace.c @@ -1556,6 +1556,16 @@ workspace_add_program_request(Evas_Object *obj) } void +workspace_add_group_data_request(Evas_Object *obj) +{ + WS_DATA_GET(obj); + + if (wd->mode != MODE_DEMO) + group_navigator_add_group_data_request(wd->group_navi); +} + + +void workspace_delete_request(Evas_Object *obj) { WS_DATA_GET(obj); diff --git a/src/bin/ui/workspace/workspace.h b/src/bin/ui/workspace/workspace.h index af1603e..001361e 100644 --- a/src/bin/ui/workspace/workspace.h +++ b/src/bin/ui/workspace/workspace.h @@ -405,6 +405,9 @@ void workspace_add_program_request(Evas_Object *obj); void +workspace_add_group_data_request(Evas_Object *obj); + +void workspace_delete_request(Evas_Object *obj); void --
