rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=0b3fd202df4b75bc0d618dabd7a25a45fc36a81f
commit 0b3fd202df4b75bc0d618dabd7a25a45fc36a81f Author: Andrii Kroitor <an.kroi...@samsung.com> Date: Fri Sep 16 13:41:11 2016 +0300 signals: refactor shortcuts signals --- src/bin/Makefile.am | 1 + src/bin/common/signals.c | 83 ++++++++++++++++++++++++++++ src/bin/common/signals.h | 114 +++++++++++++++++++++------------------ src/bin/ui/main_window.c | 4 +- src/bin/ui/project_navigator.c | 4 +- src/bin/ui/shortcuts/shortcuts.c | 103 ++++++++++++++++++----------------- src/bin/ui/tabs.c | 56 +++++++++---------- 7 files changed, 232 insertions(+), 133 deletions(-) diff --git a/src/bin/Makefile.am b/src/bin/Makefile.am index 67092bb..4096021 100644 --- a/src/bin/Makefile.am +++ b/src/bin/Makefile.am @@ -62,6 +62,7 @@ noinst_LIBRARIES = libete.a libete_a_SOURCES = \ ../../src/bin/eflete.c \ ../../src/bin/common/string_common.c \ +../../src/bin/common/signals.c \ ../../src/bin/common/validator.c \ ../../src/bin/common/widget_list.c \ ../../src/bin/project_manager/group_manager.c \ diff --git a/src/bin/common/signals.c b/src/bin/common/signals.c new file mode 100644 index 0000000..c863b81 --- /dev/null +++ b/src/bin/common/signals.c @@ -0,0 +1,83 @@ +/* + * Edje Theme Editor + * Copyright (C) 2013-2014 Samsung Electronics. + * + * This file is part of Edje Theme Editor. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; If not, see www.gnu.org/licenses/lgpl.html. + */ + +#include "history.h" +#include "signals.h" + +const Signals signals = { + .shortcut = { + .del = "signal.shortcut.del", + .help = "signal.shortcut.help", + .quit = "signal.shortcut.quit", + .save = "signal.shortcut.save", + .add = { + .data_item = "signal.shortcut.add.data_item", + .group = "signal.shortcut.add.group", + .item = "signal.shortcut.add.item", + .part = "signal.shortcut.add.part", + .program = "signal.shortcut.add.program", + .state = "signal.shortcut.add.state", + }, + .history = { + .redo = "signal.shortcut.history.redo", + .undo = "signal.shortcut.history.undo", + }, + .manager = { + .color_class = "signal.shortcut.manager.color_class", + .image = "signal.shortcut.manager.image", + .sound = "signal.shortcut.manager.sound", + .style = "signal.shortcut.manager.style", + }, + .popup = { + .cancel = "signal.shortcut.popup.cancel", + .done = "signal.shortcut.popup.done", + }, + .tab = { + .close = "signal.shortcut.tab.close", + .next = "signal.shortcut.tab.next", + .prev = "signal.shortcut.tab.prev", + .num = "signal.shortcut.tab.num", + }, + .workspace = { + .fill = "signal.shortcut.workspace.fill", + .mode = { + .code = "signal.shortcut.workspace.mode.code", + .demo = "signal.shortcut.workspace.mode.demo", + .normal = "signal.shortcut.workspace.mode.normal", + }, + .show_hide = { + .object_area = "signal.shortcut.workspace.show_hide.object_area", + .part = "signal.shortcut.workspace.show_hide.part", + .all_parts = "signal.shortcut.workspace.show_hide.all_parts", + .rulers = "signal.shortcut.workspace.show_hide.rulers", + }, + .select = { + .part_next = "signal.shortcut.workspace.select.part_next", + .part_prev = "signal.shortcut.workspace.select.part_prev", + .state_next = "signal.shortcut.workspace.select.state_next", + }, + .zoom = { + .in = "signal.shortcut.workspace.zoom.in", + .out = "signal.shortcut.workspace.zoom.out", + .reset = "signal.shortcut.workspace.zoom.reset", + .fit = "signal.shortcut.workspace.zoom.fit", + }, + }, + }, +}; diff --git a/src/bin/common/signals.h b/src/bin/common/signals.h index d3ffaa3..975f4f6 100644 --- a/src/bin/common/signals.h +++ b/src/bin/common/signals.h @@ -20,6 +20,69 @@ #ifndef SIGNALS_H #define SIGNALS_H +typedef struct { + const struct { + const char *del; + const char *help; + const char *quit; + const char *save; + const struct { + const char *data_item; + const char *group; + const char *item; + const char *part; + const char *program; + const char *state; + } add; + const struct { + const char *redo; + const char *undo; + } history; + const struct { + const char *color_class; + const char *image; + const char *sound; + const char *style; + } manager; + const struct { + const char *cancel; + const char *done; + } popup; + const struct { + const char *close; + const char *next; + const char *prev; + const char *num; /* event_info - tab number */ + } tab; + const struct { + const char *fill; + const struct { + const char *code; + const char *demo; + const char *normal; + } mode; + const struct { + const char *object_area; + const char *part; + const char *all_parts; + const char *rulers; + } show_hide; + const struct { + const char *part_next; + const char *part_prev; + const char *state_next; + } select; + const struct { + const char *in; + const char *out; + const char *reset; + const char *fit; + } zoom; + } workspace; + } shortcut; +} Signals; + +extern const Signals signals; /** * emited when active group changed. * eventinfo - pointer to Group structure. @@ -559,57 +622,6 @@ typedef struct { #define SIGNAL_DEMO_SIGNAL_SEND "SIGNAL_DEMO_SIGNAL_SEND" /** - * emited when shortcut is pressed. - * eventinfo - NULL. - * - * @ingroup Window - */ -#define SIGNAL_SHORTCUT_QUIT "SIGNAL_SHORTCUT_QUIT" -#define SIGNAL_SHORTCUT_UNDO "SIGNAL_SHORTCUT_UNDO" -#define SIGNAL_SHORTCUT_REDO "SIGNAL_SHORTCUT_REDO" -#define SIGNAL_SHORTCUT_SAVE "SIGNAL_SHORTCUT_SAVE" -#define SIGNAL_SHORTCUT_ADD_GROUP "SIGNAL_SHORTCUT_ADD_GROUP" -#define SIGNAL_SHORTCUT_ADD_PART "SIGNAL_SHORTCUT_ADD_PART" -#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" -#define SIGNAL_SHORTCUT_TAB_CLOSE "SIGNAL_SHORTCUT_TAB_CLOSE" -#define SIGNAL_SHORTCUT_TAB_IMAGE_MANAGER "SIGNAL_SHORTCUT_TAB_IMAGE_MANAGER" -#define SIGNAL_SHORTCUT_TAB_SOUND_MANAGER "SIGNAL_SHORTCUT_TAB_SOUND_MANAGER" -#define SIGNAL_SHORTCUT_TAB_COLOR_CLASS_MANAGER "SIGNAL_SHORTCUT_TAB_COLOR_CLASS_MANAGER" -#define SIGNAL_SHORTCUT_TAB_STYLE_MANAGER "SIGNAL_SHORTCUT_TAB_STYLE_MANAGER" -#define SIGNAL_SHORTCUT_MODE_NORMAL "SIGNAL_SHORTCUT_MODE_NORMAL" -#define SIGNAL_SHORTCUT_MODE_CODE "SIGNAL_SHORTCUT_MODE_CODE" -#define SIGNAL_SHORTCUT_MODE_DEMO "SIGNAL_SHORTCUT_MODE_DEMO" -#define SIGNAL_SHORTCUT_STATE_NEXT "SIGNAL_SHORTCUT_STATE_NEXT" -#define SIGNAL_SHORTCUT_PART_NEXT "SIGNAL_SHORTCUT_PART_NEXT" -#define SIGNAL_SHORTCUT_PART_PREV "SIGNAL_SHORTCUT_PART_PREV" -#define SIGNAL_SHORTCUT_PART_SHOWHIDE "SIGNAL_SHORTCUT_PART_SHOWHIDE" -#define SIGNAL_SHORTCUT_ALL_PARTS_SHOWHIDE "SIGNAL_SHORTCUT_ALL_PARTS_SHOWHIDE" -#define SIGNAL_SHORTCUT_ZOOM_IN "SIGNAL_SHORTCUT_ZOOM_IN" -#define SIGNAL_SHORTCUT_ZOOM_OUT "SIGNAL_SHORTCUT_ZOOM_OUT" -#define SIGNAL_SHORTCUT_ZOOM_RESET "SIGNAL_SHORTCUT_ZOOM_RESET" -#define SIGNAL_SHORTCUT_FILL "SIGNAL_SHORTCUT_FILL" -#define SIGNAL_SHORTCUT_FIT "SIGNAL_SHORTCUT_FIT" -#define SIGNAL_SHORTCUT_OBJECT_AREA "SIGNAL_SHORTCUT_OBJECT_AREA" -#define SIGNAL_SHORTCUT_RULERS_SHOW "SIGNAL_SHORTCUT_RULERS_SHOW" -#define SIGNAL_SHORTCUT_CANCEL "SIGNAL_SHORTCUT_POPUP_CANCEL" -#define SIGNAL_SHORTCUT_DONE "SIGNAL_SHORTCUT_POPUP_DONE" -#define SIGNAL_SHORTCUT_HELP "SIGNAL_SHORTCUT_POPUP_HELP" - -/** - * emited when shortcut is pressed. - * eventinfo - tab number. - * - * @ingroup Window - */ -#define SIGNAL_SHORTCUT_TAB_NUM "SIGNAL_SHORTCUT_TAB_NUM" - -/** * emited when workspace is changed. * event_info - pointer to mode (Workspace_Mode *) * diff --git a/src/bin/ui/main_window.c b/src/bin/ui/main_window.c index 771faeb..60bc758 100644 --- a/src/bin/ui/main_window.c +++ b/src/bin/ui/main_window.c @@ -101,8 +101,8 @@ ui_main_window_add(void) #endif evas_object_smart_callback_add(ap.win, "delete,request", _close_request, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_QUIT, _close_request, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_HELP, _help, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.quit, _close_request, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.help, _help, NULL); #if 0 // turn off the eflete main cursor, while not used elementary combobox, and not fixed bug with double cursors if (!cursor_main_set(ap.win, CURSOR_ARROW)) diff --git a/src/bin/ui/project_navigator.c b/src/bin/ui/project_navigator.c index fd1b08d..66fb72d 100644 --- a/src/bin/ui/project_navigator.c +++ b/src/bin/ui/project_navigator.c @@ -778,8 +778,8 @@ project_navigator_add(void) evas_object_smart_callback_add(ap.win, SIGNAL_GROUP_ADDED, _group_add, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_GROUP_DELETED, _group_del, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ADD_GROUP, _btn_add_group_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_SAVE, _shortcut_save_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.add.group, _btn_add_group_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.save, _shortcut_save_cb, NULL); TODO("Add deletion callback and free resources"); diff --git a/src/bin/ui/shortcuts/shortcuts.c b/src/bin/ui/shortcuts/shortcuts.c index dd395c5..3aa51e4 100644 --- a/src/bin/ui/shortcuts/shortcuts.c +++ b/src/bin/ui/shortcuts/shortcuts.c @@ -134,18 +134,21 @@ _shortcut_handle(Shortcut_Type type) { int num; Evas_Object *handler; -#define SHORTCUT(NAME) \ +#define SHORTCUT(NAME, SIGNAL) \ case SHORTCUT_TYPE_##NAME: \ - evas_object_smart_callback_call(handler, SIGNAL_SHORTCUT_##NAME, NULL); \ + assert(SIGNAL != NULL); \ + evas_object_smart_callback_call(handler, SIGNAL, NULL); \ break; -#define SHORTCUT_GLOBAL_ONLY(NAME) \ +#define SHORTCUT_GLOBAL_ONLY(NAME, SIGNAL) \ case SHORTCUT_TYPE_##NAME: \ - evas_object_smart_callback_call(ap.win, SIGNAL_SHORTCUT_##NAME, NULL); \ + assert(SIGNAL != NULL); \ + evas_object_smart_callback_call(ap.win, SIGNAL, NULL); \ break; #define SHORTCUT_NUM(NAME, SIGNAL, NUM) \ case SHORTCUT_TYPE_##NAME: \ + assert(SIGNAL != NULL); \ num = NUM; \ evas_object_smart_callback_call(handler, SIGNAL, &num); \ break; @@ -157,52 +160,52 @@ _shortcut_handle(Shortcut_Type type) switch (type) { - SHORTCUT_GLOBAL_ONLY(QUIT); - SHORTCUT_GLOBAL_ONLY(SAVE); - SHORTCUT(REDO); - SHORTCUT(UNDO); - SHORTCUT(ADD_GROUP); - SHORTCUT(ADD_PART); - SHORTCUT(ADD_STATE); - SHORTCUT(ADD_ITEM); - SHORTCUT(ADD_PROGRAM); - SHORTCUT(ADD_DATA_ITEM); - SHORTCUT(DEL); - SHORTCUT(STATE_NEXT); - SHORTCUT(PART_NEXT); - SHORTCUT(PART_PREV); - SHORTCUT(PART_SHOWHIDE); - SHORTCUT(ALL_PARTS_SHOWHIDE); - SHORTCUT_NUM(TAB_NUM1, SIGNAL_SHORTCUT_TAB_NUM, 1); - SHORTCUT_NUM(TAB_NUM2, SIGNAL_SHORTCUT_TAB_NUM, 2); - SHORTCUT_NUM(TAB_NUM3, SIGNAL_SHORTCUT_TAB_NUM, 3); - SHORTCUT_NUM(TAB_NUM4, SIGNAL_SHORTCUT_TAB_NUM, 4); - SHORTCUT_NUM(TAB_NUM5, SIGNAL_SHORTCUT_TAB_NUM, 5); - SHORTCUT_NUM(TAB_NUM6, SIGNAL_SHORTCUT_TAB_NUM, 6); - SHORTCUT_NUM(TAB_NUM7, SIGNAL_SHORTCUT_TAB_NUM, 7); - SHORTCUT_NUM(TAB_NUM8, SIGNAL_SHORTCUT_TAB_NUM, 8); - SHORTCUT_NUM(TAB_NUM9, SIGNAL_SHORTCUT_TAB_NUM, 9); - SHORTCUT_NUM(TAB_NUM10, SIGNAL_SHORTCUT_TAB_NUM, 10); - SHORTCUT(TAB_NEXT); - SHORTCUT(TAB_PREV); - SHORTCUT(TAB_CLOSE); - SHORTCUT(TAB_IMAGE_MANAGER); - SHORTCUT(TAB_SOUND_MANAGER); - SHORTCUT(TAB_COLOR_CLASS_MANAGER); - SHORTCUT(TAB_STYLE_MANAGER); - SHORTCUT(MODE_NORMAL); - SHORTCUT(MODE_CODE); - SHORTCUT(MODE_DEMO); - SHORTCUT(ZOOM_IN); - SHORTCUT(ZOOM_OUT); - SHORTCUT(ZOOM_RESET); - SHORTCUT(FILL); - SHORTCUT(FIT); - SHORTCUT(RULERS_SHOW); - SHORTCUT(OBJECT_AREA); - SHORTCUT(CANCEL); - SHORTCUT(DONE); - SHORTCUT(HELP); + SHORTCUT_GLOBAL_ONLY(QUIT, signals.shortcut.quit); + SHORTCUT_GLOBAL_ONLY(SAVE, signals.shortcut.save); + SHORTCUT(REDO, signals.shortcut.history.redo); + SHORTCUT(UNDO, signals.shortcut.history.undo); + SHORTCUT(ADD_GROUP, signals.shortcut.add.group); + SHORTCUT(ADD_PART, signals.shortcut.add.part); + SHORTCUT(ADD_STATE, signals.shortcut.add.state); + SHORTCUT(ADD_ITEM, signals.shortcut.add.item); + SHORTCUT(ADD_PROGRAM, signals.shortcut.add.program); + SHORTCUT(ADD_DATA_ITEM, signals.shortcut.add.data_item); + SHORTCUT(DEL, signals.shortcut.del); + SHORTCUT(STATE_NEXT, signals.shortcut.workspace.select.state_next); + SHORTCUT(PART_NEXT, signals.shortcut.workspace.select.part_next); + SHORTCUT(PART_PREV, signals.shortcut.workspace.select.part_prev); + SHORTCUT(PART_SHOWHIDE, signals.shortcut.workspace.show_hide.part); + SHORTCUT(ALL_PARTS_SHOWHIDE, signals.shortcut.workspace.show_hide.all_parts); + SHORTCUT_NUM(TAB_NUM1, signals.shortcut.tab.num, 1); + SHORTCUT_NUM(TAB_NUM2, signals.shortcut.tab.num, 2); + SHORTCUT_NUM(TAB_NUM3, signals.shortcut.tab.num, 3); + SHORTCUT_NUM(TAB_NUM4, signals.shortcut.tab.num, 4); + SHORTCUT_NUM(TAB_NUM5, signals.shortcut.tab.num, 5); + SHORTCUT_NUM(TAB_NUM6, signals.shortcut.tab.num, 6); + SHORTCUT_NUM(TAB_NUM7, signals.shortcut.tab.num, 7); + SHORTCUT_NUM(TAB_NUM8, signals.shortcut.tab.num, 8); + SHORTCUT_NUM(TAB_NUM9, signals.shortcut.tab.num, 9); + SHORTCUT_NUM(TAB_NUM10, signals.shortcut.tab.num, 10); + SHORTCUT(TAB_NEXT, signals.shortcut.tab.next); + SHORTCUT(TAB_PREV, signals.shortcut.tab.prev); + SHORTCUT(TAB_CLOSE, signals.shortcut.tab.close); + SHORTCUT(TAB_IMAGE_MANAGER, signals.shortcut.manager.image); + SHORTCUT(TAB_SOUND_MANAGER, signals.shortcut.manager.sound); + SHORTCUT(TAB_COLOR_CLASS_MANAGER, signals.shortcut.manager.color_class); + SHORTCUT(TAB_STYLE_MANAGER, signals.shortcut.manager.style); + SHORTCUT(MODE_NORMAL, signals.shortcut.workspace.mode.normal); + SHORTCUT(MODE_CODE, signals.shortcut.workspace.mode.code); + SHORTCUT(MODE_DEMO, signals.shortcut.workspace.mode.demo); + SHORTCUT(ZOOM_IN, signals.shortcut.workspace.zoom.in); + SHORTCUT(ZOOM_OUT, signals.shortcut.workspace.zoom.out); + SHORTCUT(ZOOM_RESET, signals.shortcut.workspace.zoom.reset); + SHORTCUT(FILL, signals.shortcut.workspace.fill); + SHORTCUT(FIT, signals.shortcut.workspace.zoom.fit); + SHORTCUT(RULERS_SHOW, signals.shortcut.workspace.show_hide.rulers); + SHORTCUT(OBJECT_AREA, signals.shortcut.workspace.show_hide.object_area); + SHORTCUT(CANCEL, signals.shortcut.popup.cancel); + SHORTCUT(DONE, signals.shortcut.popup.done); + SHORTCUT(HELP, signals.shortcut.help); case SHORTCUT_TYPE_NONE: break; diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c index f26095f..d049968 100644 --- a/src/bin/ui/tabs.c +++ b/src/bin/ui/tabs.c @@ -1039,36 +1039,36 @@ tabs_add(void) evas_object_smart_callback_add(ap.win, SIGNAL_EDITOR_GROUP_DATA_ADDED, _editor_group_data_added_cb, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_EDITOR_GROUP_DATA_DELETED, _editor_group_data_deleted_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ADD_PART, _shortcut_add_part_cb, NULL); - 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); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_PART_PREV, _shortcut_part_prev_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_PART_SHOWHIDE, _shortcut_part_showhide_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_CANCEL, _shortcut_part_unselect_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ALL_PARTS_SHOWHIDE, _shortcut_all_parts_showhide_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_TAB_NEXT, _shortcut_tab_next_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_TAB_PREV, _shortcut_tab_prev_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_TAB_NUM, _shortcut_tab_num_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_TAB_CLOSE, _shortcut_tab_close_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_MODE_NORMAL, _shortcut_mode_normal_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.add.part, _shortcut_add_part_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.add.item, _shortcut_add_part_item_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.add.state, _shortcut_add_state_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.add.program, _shortcut_add_program_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.add.data_item, _shortcut_add_data_item_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.del, _shortcut_del_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.select.state_next, _shortcut_state_next_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.select.part_next, _shortcut_part_next_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.select.part_prev, _shortcut_part_prev_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.show_hide.part, _shortcut_part_showhide_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.popup.cancel, _shortcut_part_unselect_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.show_hide.all_parts, _shortcut_all_parts_showhide_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.tab.next, _shortcut_tab_next_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.tab.prev, _shortcut_tab_prev_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.tab.num, _shortcut_tab_num_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.tab.close, _shortcut_tab_close_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.mode.normal, _shortcut_mode_normal_cb, NULL); #if !HAVE_TIZEN - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_MODE_CODE, _shortcut_mode_code_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.mode.code, _shortcut_mode_code_cb, NULL); #endif - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_MODE_DEMO, _shortcut_mode_demo_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ZOOM_IN, _shortcut_zoom_in_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ZOOM_OUT, _shortcut_zoom_out_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_ZOOM_RESET, _shortcut_zoom_reset_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_FIT, _shortcut_fit_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_FILL, _shortcut_fill_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_OBJECT_AREA, _shortcut_object_area_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_RULERS_SHOW, _shortcut_rulers_show_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_UNDO, _shortcut_undo_cb, NULL); - evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_REDO, _shortcut_redo_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.mode.demo, _shortcut_mode_demo_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.zoom.in, _shortcut_zoom_in_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.zoom.out, _shortcut_zoom_out_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.zoom.reset, _shortcut_zoom_reset_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.zoom.fit, _shortcut_fit_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.fill, _shortcut_fill_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.show_hide.object_area, _shortcut_object_area_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.workspace.show_hide.rulers, _shortcut_rulers_show_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.history.undo, _shortcut_undo_cb, NULL); + evas_object_smart_callback_add(ap.win, signals.shortcut.history.redo, _shortcut_redo_cb, NULL); evas_object_smart_callback_add(ap.win, SIGNAL_HISTORY_CHANGE_ADDED, _history_update_cb, NULL); --