rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=9366be894cf0b15937b34afd087a78d9470f9007
commit 9366be894cf0b15937b34afd087a78d9470f9007 Author: Mykola Solyanko <m.solya...@samsung.com> Date: Wed Dec 16 18:42:45 2015 +0200 colorclass_manager: transfer functionality to the property_color module --- data/themes/default/widgets/layouts/property.edc | 18 ++ src/bin/Makefile.am | 1 + src/bin/common/signals.h | 16 ++ src/bin/ui/editors/colorclass_manager.c | 98 +--------- src/bin/ui/editors/colorclass_manager.h | 16 ++ src/bin/ui/property.c | 35 +++- src/bin/ui/property_color.c | 216 +++++++++++++++++++++++ src/bin/ui/property_private.h | 2 + src/bin/ui/tabs.c | 2 +- 9 files changed, 309 insertions(+), 95 deletions(-) diff --git a/data/themes/default/widgets/layouts/property.edc b/data/themes/default/widgets/layouts/property.edc index 3b567fc..6c4742c 100644 --- a/data/themes/default/widgets/layouts/property.edc +++ b/data/themes/default/widgets/layouts/property.edc @@ -47,6 +47,24 @@ group { name: "elm/layout/property/1swallow"; } } +group { name: "elm/layout/property/colorselector_item"; + parts { + part { name: "elm.swallow.content"; + type: SWALLOW; + description { state: "default" 0.0; + min: 0 250; + max: -1 -1; + rel1 { + offset: 0 3; + } + rel2 { + offset: -1 -4; + } + } + } + } +} + group { name: "elm/layout/property/1swallow_subtext"; parts { part { name: "area.base"; diff --git a/src/bin/Makefile.am b/src/bin/Makefile.am index ecd3ca2..f22c1cf 100644 --- a/src/bin/Makefile.am +++ b/src/bin/Makefile.am @@ -66,6 +66,7 @@ libete_a_SOURCES = \ ../../src/bin/ui/property_image.c \ ../../src/bin/ui/property_sound.c \ ../../src/bin/ui/property_style.c \ +../../src/bin/ui/property_color.c \ ../../src/bin/ui/blocks/ui_widget_list.c \ ../../src/bin/ui/blocks/ui_signal_list.c \ ../../src/bin/ui/blocks/ui_states_list.c \ diff --git a/src/bin/common/signals.h b/src/bin/common/signals.h index 8a9d0c7..8da3ff0 100644 --- a/src/bin/common/signals.h +++ b/src/bin/common/signals.h @@ -330,6 +330,14 @@ typedef struct { */ #define SIGNAL_STYLE_EDITOR_TAB_CLICKED "SIGNAL_STYLE_EDITOR_TAB_CLICKED" + /** + * emited when colorclass editor tab is clicked. + * eventinfo - NULL + * + * @ingroup Window + */ +#define SIGNAL_COLOR_EDITOR_TAB_CLICKED "SIGNAL_COLOR_EDITOR_TAB_CLICKED" + /** * emited when style/styles in style editor is/are selected. * eventinfo - NULL @@ -338,4 +346,12 @@ typedef struct { */ #define SIGNAL_STYLE_SELECTED "SIGNAL_STYLE_SELECTED" +/** + * emited when colorstyle/colorstyles in colorclass editor is/are selected. + * eventinfo - NULL + * + * @ingroup Window + */ +#define SIGNAL_COLOR_SELECTED "SIGNAL_COLOR_SELECTED" + #endif /* SIGNALS_H*/ diff --git a/src/bin/ui/editors/colorclass_manager.c b/src/bin/ui/editors/colorclass_manager.c index 1e47ab2..63e2f2a 100644 --- a/src/bin/ui/editors/colorclass_manager.c +++ b/src/bin/ui/editors/colorclass_manager.c @@ -27,7 +27,6 @@ static Elm_Genlist_Item_Class *_itc_ccl = NULL; typedef struct _Colorclasses_Manager Colorclasses_Manager; -typedef struct _Colorclass_Item Colorclass_Item; typedef struct _Search_Data Search_Data; struct _Search_Data @@ -36,14 +35,6 @@ struct _Search_Data Elm_Object_Item *last_item_found; }; -struct _Colorclass_Item -{ - Eina_Stringshare *name; - int r1, g1, b1, a1; - int r2, g2, b2, a2; - int r3, g3, b3, a3; -}; - struct _Colorclasses_Manager { Project *pr; @@ -51,7 +42,6 @@ struct _Colorclasses_Manager Evas_Object *layout; Evas_Object *genlist; Evas_Object *edje_preview, *preview_layout; - Evas_Object *colorsel1, *colorsel2, *colorsel3; Evas_Object *entry, *popup; Evas_Object *btn_add; Elm_Validator_Regexp *name_validator; @@ -181,13 +171,6 @@ _on_button_delete_clicked_cb(void *data __UNUSED__, else edit->current_ccl = NULL; - if (elm_genlist_items_count(edit->genlist) == 0) - { - elm_object_disabled_set(edit->colorsel1, true); - elm_object_disabled_set(edit->colorsel2, true); - elm_object_disabled_set(edit->colorsel3, true); - } - editor_save(ap.project->global_object); TODO("Remove this line once edje_edit_colorclass API would be added into Editor Module and saving would work properly") ap.project->changed = true; @@ -241,57 +224,6 @@ _change_bg_cb(void *data, elm_object_part_content_set(preview_layout, "swallow.entry.bg", bg); } -static void -_colorclass_update(Colorclasses_Manager *edit) -{ - assert(edit != NULL); - - Colorclass_Item *cc_it = edit->current_ccl; - - edje_object_color_class_set(edit->edje_preview, - "colorclass_manager/text_example_colorclass", - edit->current_ccl->r1, edit->current_ccl->g1, - edit->current_ccl->b1, edit->current_ccl->a1, - edit->current_ccl->r2, edit->current_ccl->g2, - edit->current_ccl->b2, edit->current_ccl->a2, - edit->current_ccl->r3, edit->current_ccl->g3, - edit->current_ccl->b3, edit->current_ccl->a3); - edje_edit_color_class_colors_set(ap.project->global_object, cc_it->name, - cc_it->r1, cc_it->g1, - cc_it->b1, cc_it->a1, - cc_it->r2, cc_it->g2, - cc_it->b2, cc_it->a2, - cc_it->r3, cc_it->g3, - cc_it->b3, cc_it->a3); - - editor_save(ap.project->global_object); - TODO("Remove this line once edje_edit_colorclass API would be added into Editor Module and saving would work properly") - ap.project->changed = true; -} -/* Colorselector widget callbacks */ -#define COLORSELECTOR_CALLBACK(NUMBER) \ -static void \ -_on_changed_##NUMBER(void *data, \ - Evas_Object *obj __UNUSED__, \ - void *event_info __UNUSED__) \ -{ \ - Colorclasses_Manager *edit = (Colorclasses_Manager *)data; \ - assert(edit != NULL); \ - if (!edit->current_ccl) return; \ - elm_colorselector_color_get(edit->colorsel##NUMBER, \ - &edit->current_ccl->r##NUMBER, \ - &edit->current_ccl->g##NUMBER, \ - &edit->current_ccl->b##NUMBER, \ - &edit->current_ccl->a##NUMBER); \ - _colorclass_update(edit); \ -} - -COLORSELECTOR_CALLBACK(1) -COLORSELECTOR_CALLBACK(2) -COLORSELECTOR_CALLBACK(3) - -#undef COLORSELECTOR_CALLBACK - /* Callback on colorclass selection in list */ static void _on_selected(void *data, @@ -307,11 +239,10 @@ _on_selected(void *data, assert(ccl != NULL); - edit->current_ccl = ccl; + ColorClassData *current_color_data = (ColorClassData *)mem_malloc(sizeof(ColorClassData)); + memset(current_color_data, 0x0, sizeof(ColorClassData)); - elm_colorselector_color_set(edit->colorsel1, ccl->r1, ccl->g1, ccl->b1, ccl->a1); - elm_colorselector_color_set(edit->colorsel2, ccl->r2, ccl->g2, ccl->b2, ccl->a2); - elm_colorselector_color_set(edit->colorsel3, ccl->r3, ccl->g3, ccl->b3, ccl->a3); + edit->current_ccl = ccl; edje_object_color_class_set(edit->edje_preview, "colorclass_manager/text_example_colorclass", @@ -322,9 +253,9 @@ _on_selected(void *data, ccl->r3, ccl->g3, ccl->b3, ccl->a3); - elm_object_disabled_set(edit->colorsel1, false); - elm_object_disabled_set(edit->colorsel2, false); - elm_object_disabled_set(edit->colorsel3, false); + current_color_data->current_ccl = ccl; + current_color_data->edje_preview = edit->edje_preview; + evas_object_smart_callback_call(ap.win, SIGNAL_COLOR_SELECTED, current_color_data); } /* Search functions and creatings */ @@ -528,23 +459,6 @@ _colorclass_main_layout_create(Colorclasses_Manager *edit) BUTTON_ADD(edit->layout, btn_apply, _("Apply")) elm_object_part_content_set(edit->layout, "elm.swallow.btn_apply", btn_apply); elm_object_disabled_set(btn_apply, EINA_TRUE); - - /* Creating colorselectors */ -#define ADD_COLORSEL(NUMBER, SWALLOW_NAME, COLORSEL_NAME) \ - edit->colorsel##NUMBER = elm_colorselector_add(edit->layout); \ - elm_colorselector_mode_set(edit->colorsel##NUMBER, ELM_COLORSELECTOR_ALL); \ - elm_object_part_content_set(edit->layout, "swallow.colorselector."SWALLOW_NAME, edit->colorsel##NUMBER); \ - elm_object_part_text_set(edit->layout, "text."SWALLOW_NAME, COLORSEL_NAME); \ - evas_object_smart_callback_add(edit->colorsel##NUMBER, "changed,user", _on_changed_##NUMBER, edit); \ - evas_object_smart_callback_add(edit->colorsel##NUMBER, "color,item,selected", _on_changed_##NUMBER, edit); \ - elm_object_disabled_set(edit->colorsel##NUMBER, true); - - ADD_COLORSEL(1, "object", _("Object color")); - ADD_COLORSEL(2, "outline", _("Outline color")); - ADD_COLORSEL(3, "shadow", _("Shadow color")); - -#undef ADD_COLORSEL - } Eina_Bool diff --git a/src/bin/ui/editors/colorclass_manager.h b/src/bin/ui/editors/colorclass_manager.h index 54380ce..39ce82a 100644 --- a/src/bin/ui/editors/colorclass_manager.h +++ b/src/bin/ui/editors/colorclass_manager.h @@ -33,6 +33,22 @@ #include "widget_macro.h" #include "string_common.h" +typedef struct _Colorclass_Item Colorclass_Item; +struct _Colorclass_Item +{ + Eina_Stringshare *name; + int r1, g1, b1, a1; + int r2, g2, b2, a2; + int r3, g3, b3, a3; +}; + +typedef struct _ColorClassData ColorClassData; +struct _ColorClassData +{ + Colorclass_Item *current_ccl; + Evas_Object *edje_preview; +}; + /** * Add new colorclass viewer inwin object. * diff --git a/src/bin/ui/property.c b/src/bin/ui/property.c index d811b7d..1adac4a 100644 --- a/src/bin/ui/property.c +++ b/src/bin/ui/property.c @@ -79,7 +79,8 @@ enum _Property_Type { PROPERTY, IMAGE_PROPERTY, SOUND_PROPERTY, - STYLE_PROPERTY + STYLE_PROPERTY, + COLOR_PROPERTY }; typedef enum _Property_Type Property_Type; @@ -89,6 +90,7 @@ struct _Prop_Data Evas_Object *image_property; Evas_Object *sound_property; Evas_Object *style_property; + Evas_Object *color_property; Evas_Object *colorclass_property; Evas_Object *layout; @@ -113,7 +115,7 @@ _on_different_clicked(void *data, evas_object_hide(pd->image_property); evas_object_hide(pd->sound_property); evas_object_hide(pd->style_property); - + evas_object_hide(pd->color_property); pd->type = PROPERTY; } @@ -133,6 +135,7 @@ _on_image_editor_clicked(void *data, evas_object_hide(pd->group_property); evas_object_hide(pd->sound_property); evas_object_hide(pd->style_property); + evas_object_hide(pd->color_property); evas_object_show(pd->image_property); pd->type = IMAGE_PROPERTY; @@ -154,6 +157,7 @@ _on_sound_editor_clicked(void *data, evas_object_hide(pd->group_property); evas_object_hide(pd->image_property); evas_object_hide(pd->style_property); + evas_object_hide(pd->color_property); evas_object_show(pd->sound_property); pd->type = SOUND_PROPERTY; @@ -175,12 +179,35 @@ _on_style_editor_clicked(void *data, evas_object_hide(pd->group_property); evas_object_hide(pd->image_property); evas_object_hide(pd->sound_property); + evas_object_hide(pd->color_property); evas_object_show(pd->style_property); pd->type = STYLE_PROPERTY; } static void +_on_color_editor_clicked(void *data, + Evas_Object *obj __UNUSED__, + void *event_info __UNUSED__) +{ + Evas_Object *property = data; + PROP_DATA_GET() + + assert(pd != NULL); + + ui_property_group_unset(pd->group_property); + elm_object_content_unset(pd->layout); + elm_object_content_set(pd->layout, pd->color_property); + evas_object_hide(pd->group_property); + evas_object_hide(pd->image_property); + evas_object_hide(pd->sound_property); + evas_object_hide(pd->style_property); + evas_object_show(pd->color_property); + + pd->type = STYLE_PROPERTY; +} + +static void _on_tab_changed(void *data, Evas_Object *obj __UNUSED__, void *event_info) @@ -206,6 +233,7 @@ _on_tab_changed(void *data, if (pd->type == IMAGE_PROPERTY || pd->type == STYLE_PROPERTY || pd->type == SOUND_PROPERTY || + pd->type == COLOR_PROPERTY || pd->type == PROPERTY) { elm_object_content_unset(pd->layout); @@ -213,6 +241,7 @@ _on_tab_changed(void *data, evas_object_hide(pd->image_property); evas_object_hide(pd->sound_property); evas_object_hide(pd->style_property); + evas_object_hide(pd->color_property); } //evas_object_hide(elm_object_content_unset(pd->layout)); @@ -244,11 +273,13 @@ ui_property_add(Evas_Object *parent) pd->image_property = ui_property_image_add(pd->layout); pd->sound_property = ui_property_sound_add(pd->layout); pd->style_property = ui_property_style_add(pd->layout); + pd->color_property = ui_property_color_add(pd->layout); /* register global callbacks */ evas_object_smart_callback_add(ap.win, SIGNAL_TAB_CHANGED, _on_tab_changed, pd->layout); evas_object_smart_callback_add(ap.win, SIGNAL_IMAGE_EDITOR_TAB_CLICKED, _on_image_editor_clicked, pd->layout); evas_object_smart_callback_add(ap.win, SIGNAL_SOUND_EDITOR_TAB_CLICKED, _on_sound_editor_clicked, pd->layout); evas_object_smart_callback_add(ap.win, SIGNAL_STYLE_EDITOR_TAB_CLICKED, _on_style_editor_clicked, pd->layout); + evas_object_smart_callback_add(ap.win, SIGNAL_COLOR_EDITOR_TAB_CLICKED, _on_color_editor_clicked, pd->layout); evas_object_smart_callback_add(ap.win, SIGNAL_DIFFERENT_TAB_CLICKED, _on_different_clicked, pd->layout); return pd->layout; diff --git a/src/bin/ui/property_color.c b/src/bin/ui/property_color.c new file mode 100644 index 0000000..b31b409 --- /dev/null +++ b/src/bin/ui/property_color.c @@ -0,0 +1,216 @@ +#include "property_private.h" +#include "property_macros.h" +#include "signals.h" +#include "editor.h" +#include "colorclass_manager.h" + +typedef struct _Color_Prop_Data Color_Prop_Data; +struct _Color_Prop_Data +{ + Evas_Object *box_object_color; + Evas_Object *box_outline_color; + Evas_Object *box_shadow_color; + Evas_Object *colorsel1; + Evas_Object *colorsel2; + Evas_Object *colorsel3; + ColorClassData color_data; +}; + +static Eina_Bool is_colorselector_create = EINA_FALSE; + +static void +_colorclass_update(Color_Prop_Data *pd) +{ + assert(pd != NULL); + + Colorclass_Item *cc_it = pd->color_data.current_ccl; + + edje_object_color_class_set(pd->color_data.edje_preview, + "colorclass_manager/text_example_colorclass", + cc_it->r1, cc_it->g1, + cc_it->b1, cc_it->a1, + cc_it->r2, cc_it->g2, + cc_it->b2, cc_it->a2, + cc_it->r3, cc_it->g3, + cc_it->b3, cc_it->a3); + edje_edit_color_class_colors_set(ap.project->global_object, cc_it->name, + cc_it->r1, cc_it->g1, + cc_it->b1, cc_it->a1, + cc_it->r2, cc_it->g2, + cc_it->b2, cc_it->a2, + cc_it->r3, cc_it->g3, + cc_it->b3, cc_it->a3); + + editor_save(ap.project->global_object); + TODO("Remove this line once edje_edit_colorclass API would be added into Editor Module and saving would work properly") + ap.project->changed = true; +} + +/* Colorselector widget callbacks */ +#define COLORSELECTOR_CALLBACK(NUMBER) \ +static void \ +_on_changed_##NUMBER(void *data, \ + Evas_Object *obj __UNUSED__, \ + void *event_info __UNUSED__) \ +{ \ + Color_Prop_Data *pd = (Color_Prop_Data *)data; \ + assert(pd != NULL); \ + elm_colorselector_color_get(pd->colorsel##NUMBER, \ + &pd->color_data.current_ccl->r##NUMBER, \ + &pd->color_data.current_ccl->g##NUMBER, \ + &pd->color_data.current_ccl->b##NUMBER, \ + &pd->color_data.current_ccl->a##NUMBER); \ + _colorclass_update(pd); \ +} + +COLORSELECTOR_CALLBACK(1) +COLORSELECTOR_CALLBACK(2) +COLORSELECTOR_CALLBACK(3) + +#undef COLORSELECTOR_CALLBACK + +static Evas_Object * +_colorselector_item_add(Evas_Object *box, Evas_Object *colorsel) +{ + PROPERTY_ITEM_ADD(box, "", "colorselector_item"); + elm_layout_content_set(item, "elm.swallow.content", colorsel); + return item; +} + + /* Creating colorselectors */ +#define ADD_COLORSEL(NUMBER, BOX) \ + pd->colorsel##NUMBER = elm_colorselector_add(BOX); \ + elm_colorselector_mode_set(pd->colorsel##NUMBER, ELM_COLORSELECTOR_ALL); \ + evas_object_size_hint_weight_set(pd->colorsel##NUMBER, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); \ + evas_object_size_hint_align_set(pd->colorsel##NUMBER, EVAS_HINT_FILL, EVAS_HINT_FILL); \ + evas_object_smart_callback_add(pd->colorsel##NUMBER, "changed,user", _on_changed_##NUMBER, pd); \ + evas_object_smart_callback_add(pd->colorsel##NUMBER, "color,item,selected", _on_changed_##NUMBER, pd); \ + evas_object_show(pd->colorsel##NUMBER); \ + elm_box_pack_end(BOX, _colorselector_item_add(BOX, pd->colorsel##NUMBER)); + +static Evas_Object * +_add_object_color_frame(Color_Prop_Data *pd, Evas_Object *parent) +{ + Evas_Object *frame_object; + + FRAME_ADD(parent, frame_object, true, _("Object color")) + + BOX_ADD(frame_object, pd->box_object_color, EINA_FALSE, EINA_FALSE); + elm_box_padding_set(pd->box_object_color, 6, 0); + elm_object_content_set(frame_object, pd->box_object_color); + + return frame_object; +} + +static Evas_Object * +_add_outline_color_frame(Color_Prop_Data *pd, Evas_Object *parent) +{ + Evas_Object *frame_outline; + + FRAME_ADD(parent, frame_outline, true, _("Outline color")) + + BOX_ADD(frame_outline, pd->box_outline_color, EINA_FALSE, EINA_FALSE); + elm_box_padding_set(pd->box_outline_color, 6, 0); + elm_object_content_set(frame_outline, pd->box_outline_color); + + return frame_outline; +} + +static Evas_Object * +_add_shadow_color_frame(Color_Prop_Data *pd, Evas_Object *parent) +{ + Evas_Object *frame_shadow; + + FRAME_ADD(parent, frame_shadow, true, _("Shadow color")) + + BOX_ADD(frame_shadow, pd->box_shadow_color, EINA_FALSE, EINA_FALSE); + elm_box_padding_set(pd->box_shadow_color, 6, 0); + elm_object_content_set(frame_shadow, pd->box_shadow_color); + + return frame_shadow; +} + +static void +_add_colorsel(Color_Prop_Data *pd) +{ + if (!is_colorselector_create) + { + ADD_COLORSEL(1, pd->box_object_color); + ADD_COLORSEL(2, pd->box_outline_color); + ADD_COLORSEL(3, pd->box_shadow_color); + is_colorselector_create = EINA_TRUE; + } +} + +static void +_on_color_selected(void *data, + Evas_Object *obj __UNUSED__, + void *event_info) +{ + ColorClassData *current_color = (ColorClassData *)event_info; + Color_Prop_Data *pd = (Color_Prop_Data *)data; + Colorclass_Item *ccl = current_color->current_ccl; + + _add_colorsel(pd); + + pd->color_data = *current_color; + + elm_colorselector_color_set(pd->colorsel1, ccl->r1, ccl->g1, ccl->b1, ccl->a1); + elm_colorselector_color_set(pd->colorsel2, ccl->r2, ccl->g2, ccl->b2, ccl->a2); + elm_colorselector_color_set(pd->colorsel3, ccl->r3, ccl->g3, ccl->b3, ccl->a3); + + free(current_color); +} + +static void +_color_tab_change(void *data, + Evas_Object *obj __UNUSED__, + void *event_info __UNUSED__) +{ + Color_Prop_Data *pd = (Color_Prop_Data *)data; + is_colorselector_create = EINA_FALSE; + elm_box_clear(pd->box_object_color); + elm_box_clear(pd->box_outline_color); + elm_box_clear(pd->box_shadow_color); +} + +static void +_on_property_color_del(void * data, + Evas *e __UNUSED__, + Evas_Object *obj, + void *event_info __UNUSED__) +{ + Color_Prop_Data *pd = (Color_Prop_Data *)data; + + evas_object_event_callback_del(obj, EVAS_CALLBACK_DEL, _on_property_color_del); + free(pd); +} + +Evas_Object * +ui_property_color_add(Evas_Object *parent) +{ + Color_Prop_Data *pd; + Evas_Object *scroller, *main_box; + + assert(parent != NULL); + + pd = mem_calloc(1, sizeof(Color_Prop_Data)); + + SCROLLER_ADD(parent, scroller); + + BOX_ADD(scroller, main_box, EINA_FALSE, EINA_FALSE); + elm_box_align_set(main_box, 0.5, 0.0); + elm_object_content_set(scroller, main_box); + + elm_scroller_policy_set(scroller, ELM_SCROLLER_POLICY_AUTO, ELM_SCROLLER_POLICY_AUTO); + + elm_box_pack_end(main_box, _add_object_color_frame(pd, main_box)); + elm_box_pack_end(main_box, _add_outline_color_frame(pd, main_box)); + elm_box_pack_end(main_box, _add_shadow_color_frame(pd, main_box)); + + evas_object_smart_callback_add(ap.win, SIGNAL_COLOR_SELECTED, _on_color_selected, pd); + evas_object_smart_callback_add(ap.win, SIGNAL_COLOR_EDITOR_TAB_CLICKED, _color_tab_change, pd); + evas_object_event_callback_add(main_box, EVAS_CALLBACK_DEL, _on_property_color_del, pd); + + return scroller; +} \ No newline at end of file diff --git a/src/bin/ui/property_private.h b/src/bin/ui/property_private.h index f43543e..a5bb4e3 100644 --- a/src/bin/ui/property_private.h +++ b/src/bin/ui/property_private.h @@ -64,4 +64,6 @@ ui_property_sound_add(Evas_Object *parent); Evas_Object * ui_property_style_add(Evas_Object *parent); +Evas_Object * +ui_property_color_add(Evas_Object *parent); #endif /* UI_PROPERTY_1_H */ diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c index b5ea1d8..5005943 100644 --- a/src/bin/ui/tabs.c +++ b/src/bin/ui/tabs.c @@ -141,7 +141,7 @@ _content_set(void *data, else if (toolbar_item == tabs.menu.item_colorclass) { tabs_menu_tab_open(TAB_COLORCLASS_EDITOR); - evas_object_smart_callback_call(ap.win, SIGNAL_DIFFERENT_TAB_CLICKED, NULL); + evas_object_smart_callback_call(ap.win, SIGNAL_COLOR_EDITOR_TAB_CLICKED, NULL); } else { --