summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYakov Goldberg <yakov.g@samsung.com>2014-05-29 14:39:03 +0300
committerYakov Goldberg <yakov.g@samsung.com>2014-05-29 14:39:38 +0300
commit169c31a42ad3699db86eb73eb883b09edc9f4995 (patch)
treec3c040e5a0dc79e7627f1b6c2b02756fc6803bd0
parent67c71f5b307ecaf8088b979181a929fc7132ec27 (diff)
refactoring propview_build
-rw-r--r--src/bin/egui_gui/editor.c121
-rw-r--r--src/bin/egui_gui/egui_logic_private.h1
-rw-r--r--src/bin/egui_gui/propview.c110
-rw-r--r--src/bin/egui_gui/propview.h7
-rw-r--r--src/bin/egui_gui/rmview.c9
5 files changed, 125 insertions, 123 deletions
diff --git a/src/bin/egui_gui/editor.c b/src/bin/egui_gui/editor.c
index 053b670..d0351ed 100644
--- a/src/bin/egui_gui/editor.c
+++ b/src/bin/egui_gui/editor.c
@@ -13,11 +13,9 @@
13#include <Elementary.h> 13#include <Elementary.h>
14#include "elm_widget.h" 14#include "elm_widget.h"
15 15
16#define SELECTED_WDG "slctd_wdg"
17#define WIN_INFO "win_info_key" 16#define WIN_INFO "win_info_key"
18 17
19static Gui_Context *_active_ctx = NULL; 18static Gui_Context *_active_ctx = NULL;
20static It_Data_Type _propsview_toolbar_selected_item_type = DESCRIPTION_TYPE;
21static const GUI *g; 19static const GUI *g;
22 20
23void 21void
@@ -1049,7 +1047,7 @@ _editor_ctx_call(const Gui_Context *ctx)
1049 * It will draw border around win, but widget was not selected yet. 1047 * It will draw border around win, but widget was not selected yet.
1050 * So need to hide border. */ 1048 * So need to hide border. */
1051 _editor_wdg_selected_set(NULL); 1049 _editor_wdg_selected_set(NULL);
1052 propview_build(NULL, _propsview_toolbar_selected_item_type); 1050 propview_build(NULL);
1053 return EINA_TRUE; 1051 return EINA_TRUE;
1054} 1052}
1055 1053
@@ -1089,7 +1087,7 @@ _editor_selected_wdg_del_cb()
1089 { 1087 {
1090 _wdg_parent_win_reload(parent_wdg); 1088 _wdg_parent_win_reload(parent_wdg);
1091 } 1089 }
1092 propview_build(NULL, _propsview_toolbar_selected_item_type); 1090 propview_build(NULL);
1093 /*close objtree list*/ 1091 /*close objtree list*/
1094 objtree_item_contracted_set(NULL); 1092 objtree_item_contracted_set(NULL);
1095 /* Set selected widget: t.e. if I delete button, box will be selected after. 1093 /* Set selected widget: t.e. if I delete button, box will be selected after.
@@ -1266,7 +1264,7 @@ _editor_shutdown()
1266{ 1264{
1267 target_db_shutdown(); 1265 target_db_shutdown();
1268 seqview_shutdown(); 1266 seqview_shutdown();
1269 propview_scrollbox_unset(); 1267 propview_shutdown();
1270 objtree_list_unset(); 1268 objtree_list_unset();
1271 1269
1272 void *p = (void *) propview_cbs_get(); 1270 void *p = (void *) propview_cbs_get();
@@ -1438,7 +1436,7 @@ _prop_update_from_propview(void *data EINA_UNUSED, Eo *obj, const Eo_Event_Descr
1438 if (reload_win) 1436 if (reload_win)
1439 { 1437 {
1440 _wdg_parent_win_reload(wdg); 1438 _wdg_parent_win_reload(wdg);
1441 propview_build(NULL, _propsview_toolbar_selected_item_type); 1439 propview_build(NULL);
1442 _editor_wdg_selected_set(wdg); 1440 _editor_wdg_selected_set(wdg);
1443 objtree_item_contracted_set(NULL); 1441 objtree_item_contracted_set(NULL);
1444 objtree_item_selected_set(wdg); 1442 objtree_item_selected_set(wdg);
@@ -1472,7 +1470,7 @@ _prop_update_from_propview(void *data EINA_UNUSED, Eo *obj, const Eo_Event_Descr
1472 } 1470 }
1473 /* Rebuild view when property like "pack_end". */ 1471 /* Rebuild view when property like "pack_end". */
1474 if (db_op_desc_flag_get(op) & MULTI_PROPERTY) 1472 if (db_op_desc_flag_get(op) & MULTI_PROPERTY)
1475 propview_build(wdg, _propsview_toolbar_selected_item_type); 1473 propview_build(wdg);
1476 } 1474 }
1477 return EO_CALLBACK_CONTINUE; 1475 return EO_CALLBACK_CONTINUE;
1478 /* FIXME: add return here? */ 1476 /* FIXME: add return here? */
@@ -1516,7 +1514,7 @@ _prop_del_from_propview(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Descript
1516 1514
1517 _wdg_parent_win_reload(wdg); 1515 _wdg_parent_win_reload(wdg);
1518 1516
1519 propview_build(NULL, _propsview_toolbar_selected_item_type); 1517 propview_build(NULL);
1520 1518
1521 _editor_wdg_selected_set(wdg); 1519 _editor_wdg_selected_set(wdg);
1522 objtree_item_contracted_set(NULL); 1520 objtree_item_contracted_set(NULL);
@@ -1560,7 +1558,7 @@ _field_update_from_itemview(void *data EINA_UNUSED, Eo *obj, void *event_info EI
1560 1558
1561 /* Reloading all window. */ 1559 /* Reloading all window. */
1562 _wdg_parent_win_reload(wdg); 1560 _wdg_parent_win_reload(wdg);
1563 propview_build(NULL, _propsview_toolbar_selected_item_type); 1561 propview_build(NULL);
1564 _editor_wdg_selected_set(wdg); 1562 _editor_wdg_selected_set(wdg);
1565 objtree_item_contracted_set(NULL); 1563 objtree_item_contracted_set(NULL);
1566 objtree_item_selected_set(wdg); 1564 objtree_item_selected_set(wdg);
@@ -1882,7 +1880,7 @@ _widget_selected_from_objtree(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUS
1882{ 1880{
1883 Gui_Widget *wdg = elm_object_item_data_get(event_info); 1881 Gui_Widget *wdg = elm_object_item_data_get(event_info);
1884 _editor_wdg_selected_set(wdg); 1882 _editor_wdg_selected_set(wdg);
1885 propview_build(wdg, _propsview_toolbar_selected_item_type); 1883 propview_build(wdg);
1886 1884
1887 /* Make menu shown, when it is selected from objtree. */ 1885 /* Make menu shown, when it is selected from objtree. */
1888 if (wdg_is_container(wdg, DB_DEF_MENU_CLASS)) 1886 if (wdg_is_container(wdg, DB_DEF_MENU_CLASS))
@@ -1894,17 +1892,6 @@ _widget_selected_from_objtree(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUS
1894} 1892}
1895 1893
1896static void 1894static void
1897_propsview_toolbar_clicked(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
1898{
1899 const Gui_Widget *wdg = _editor_wdg_selected_get();
1900 It_Data_Type new_type = (int) (intptr_t) data;
1901
1902// _propsview_toolbar_selected_item_type = new_type;
1903
1904 propview_build(wdg, new_type);
1905}
1906
1907static void
1908_project_close(const Gui_Context *ctx) 1895_project_close(const Gui_Context *ctx)
1909{ 1896{
1910 if (ctx) 1897 if (ctx)
@@ -1938,7 +1925,7 @@ _project_close(const Gui_Context *ctx)
1938 _active_context_set(NULL); 1925 _active_context_set(NULL);
1939 /* Clear lists. */ 1926 /* Clear lists. */
1940 objtree_context_set(NULL); 1927 objtree_context_set(NULL);
1941 propview_build(NULL, _propsview_toolbar_selected_item_type); 1928 propview_build(NULL);
1942 seqview_fill(NULL); 1929 seqview_fill(NULL);
1943} 1930}
1944 1931
@@ -1975,81 +1962,6 @@ _project_new(char *filename)
1975 return EINA_TRUE; 1962 return EINA_TRUE;
1976} 1963}
1977 1964
1978/* This callback is called in the end of propview_build()
1979 * in order to switch between scrollbox for properties
1980 * and genlist for items. */
1981void
1982_propview_build_post_cb(const Gui_Widget *wdg, It_Data_Type new_type)
1983{
1984 /* Unsetting view according to old selected toolbar's item. */
1985 switch (_propsview_toolbar_selected_item_type)
1986 {
1987 case DESCRIPTION_TYPE:
1988 {
1989 break;
1990 }
1991 case PROPERTY_TYPE:
1992 {
1993 break;
1994 }
1995 case CALLBACK_TYPE:
1996 {
1997 break;
1998 }
1999 case CONTENT_TYPE:
2000 {
2001 break;
2002 }
2003 case ITEM_TYPE:
2004 {
2005 eo_do(g->propsview_sc, evas_obj_visibility_set(EINA_TRUE));
2006 eo_do(g->itemview_box, evas_obj_visibility_set(EINA_FALSE));
2007 break;
2008 }
2009 }
2010
2011 _propsview_toolbar_selected_item_type = new_type;
2012
2013 /* Setting view according to new selected toolbar's item. */
2014 switch (new_type)
2015 {
2016 case DESCRIPTION_TYPE:
2017 {
2018 break;
2019 }
2020 case PROPERTY_TYPE:
2021 {
2022 break;
2023 }
2024 case CALLBACK_TYPE:
2025 {
2026 break;
2027 }
2028 case CONTENT_TYPE:
2029 {
2030 break;
2031 }
2032 case ITEM_TYPE:
2033 {
2034 eo_do(g->propsview_sc, evas_obj_visibility_set(EINA_FALSE));
2035 eo_do(g->itemview_box, evas_obj_visibility_set(EINA_TRUE));
2036
2037 if (wdg_is_container(wdg, DB_DEF_MENU_CLASS))
2038 {
2039 eo_do(g->itemview_add_item_nested_but, elm_obj_widget_disabled_set(EINA_FALSE));
2040 eo_do(g->itemview_add_separator_but, elm_obj_widget_disabled_set(EINA_FALSE));
2041 }
2042 else if (wdg_is_container(wdg, DB_DEF_DISKSELECTOR_CLASS) ||
2043 wdg_is_container(wdg, DB_DEF_CTXPOPUP_CLASS))
2044 {
2045 eo_do(g->itemview_add_item_nested_but, elm_obj_widget_disabled_set(EINA_TRUE));
2046 eo_do(g->itemview_add_separator_but, elm_obj_widget_disabled_set(EINA_TRUE));
2047 }
2048 break;
2049 }
2050 }
2051}
2052
2053enum 1965enum
2054{ 1966{
2055 ITEM_ADD, 1967 ITEM_ADD,
@@ -2178,7 +2090,7 @@ _itemview_item_do_(unsigned int type)
2178 //manager_widget_configure(session, wdg, MODE_EDITOR, NULL); 2090 //manager_widget_configure(session, wdg, MODE_EDITOR, NULL);
2179 2091
2180 _wdg_parent_win_reload(wdg); 2092 _wdg_parent_win_reload(wdg);
2181 propview_build(NULL, _propsview_toolbar_selected_item_type); 2093 propview_build(NULL);
2182 _editor_wdg_selected_set(wdg); 2094 _editor_wdg_selected_set(wdg);
2183 objtree_item_contracted_set(NULL); 2095 objtree_item_contracted_set(NULL);
2184 objtree_item_selected_set(wdg); 2096 objtree_item_selected_set(wdg);
@@ -2240,7 +2152,6 @@ editor_init(GuiLogicCbs *_guilogic_cbs)
2240 prop_cbs->content_delete_cb_func = _content_del_from_propview; 2152 prop_cbs->content_delete_cb_func = _content_del_from_propview;
2241 prop_cbs->content_reorder_cb_func = _content_reorder_from_propview; 2153 prop_cbs->content_reorder_cb_func = _content_reorder_from_propview;
2242 prop_cbs->content_change_cb_func = _content_change_from_propview; 2154 prop_cbs->content_change_cb_func = _content_change_from_propview;
2243 prop_cbs->propview_build_post_cb = _propview_build_post_cb;
2244 2155
2245 ObjTreeViewCbs *objtree_cbs = objtree_cbs_get(); 2156 ObjTreeViewCbs *objtree_cbs = objtree_cbs_get();
2246 objtree_cbs->item_selection_cb_func = _widget_selected_from_objtree; 2157 objtree_cbs->item_selection_cb_func = _widget_selected_from_objtree;
@@ -2258,19 +2169,9 @@ editor_init(GuiLogicCbs *_guilogic_cbs)
2258 _guilogic_cbs->_project_new = _project_new; 2169 _guilogic_cbs->_project_new = _project_new;
2259 2170
2260 objtree_list_set(g->objtree_list); 2171 objtree_list_set(g->objtree_list);
2261 propview_scrollbox_set(g->propsview_box); 2172 propview_init(g->propsview_box, g->propsview_toolbar);
2262 seqview_init(g->seq_list); 2173 seqview_init(g->seq_list);
2263 itemview_init(g->itemview_list); 2174 itemview_init(g->itemview_list);
2264 target_db_init(); 2175 target_db_init();
2265
2266 /* Put it here, because it Enums defined in propsview.h */
2267 elm_toolbar_item_append(g->propsview_toolbar, "fonts", "Description",
2268 _propsview_toolbar_clicked, (void *) (intptr_t) DESCRIPTION_TYPE);
2269 elm_toolbar_item_append(g->propsview_toolbar, "package_settings", "Properties",
2270 _propsview_toolbar_clicked, (void *) (intptr_t) PROPERTY_TYPE);
2271 elm_toolbar_item_append(g->propsview_toolbar, "call-start", "Callbacks",
2272 _propsview_toolbar_clicked, (void *) (intptr_t) CALLBACK_TYPE);
2273 elm_toolbar_item_append(g->propsview_toolbar, "folder-open", "Content",
2274 _propsview_toolbar_clicked, (void *) (intptr_t) CONTENT_TYPE);
2275} 2176}
2276 2177
diff --git a/src/bin/egui_gui/egui_logic_private.h b/src/bin/egui_gui/egui_logic_private.h
index c1bd4e7..3d2d986 100644
--- a/src/bin/egui_gui/egui_logic_private.h
+++ b/src/bin/egui_gui/egui_logic_private.h
@@ -31,4 +31,5 @@ canvas_get();
31GuiLogicCbs * 31GuiLogicCbs *
32guilogic_cbs_get(); 32guilogic_cbs_get();
33 33
34#define SELECTED_WDG "slctd_wdg"
34#endif 35#endif
diff --git a/src/bin/egui_gui/propview.c b/src/bin/egui_gui/propview.c
index 0140e87..970ffba 100644
--- a/src/bin/egui_gui/propview.c
+++ b/src/bin/egui_gui/propview.c
@@ -7,6 +7,7 @@
7#include "propview.h" 7#include "propview.h"
8#include "itemview.h" 8#include "itemview.h"
9#include "database.h" 9#include "database.h"
10#include "egui_logic_private.h"
10 11
11#include "elm_widget.h" 12#include "elm_widget.h"
12#include "elm_widget_container.h" 13#include "elm_widget_container.h"
@@ -18,6 +19,8 @@ _active_context_get();
18static Eo *sc_box = NULL; 19static Eo *sc_box = NULL;
19 20
20static PropViewCbs *_view_cbs = NULL; 21static PropViewCbs *_view_cbs = NULL;
22static It_Data_Type _propsview_toolbar_selected_item_type = DESCRIPTION_TYPE;
23static It_Data_Type _new_type = DESCRIPTION_TYPE;
21 24
22void 25void
23_it_data_free(void *data) 26_it_data_free(void *data)
@@ -573,14 +576,92 @@ _callbacks_build(const Gui_Widget *wdg)
573 } 576 }
574} 577}
575 578
579/* This callback is called in the end of propview_build()
580 * in order to switch between scrollbox for properties
581 * and genlist for items. */
582static void
583_propview_build_post_cb(const Gui_Widget *wdg, It_Data_Type new_type)
584{
585 GUI *g = get_gui();
586 /* Unsetting view according to old selected toolbar's item. */
587 switch (_propsview_toolbar_selected_item_type)
588 {
589 case DESCRIPTION_TYPE:
590 {
591 break;
592 }
593 case PROPERTY_TYPE:
594 {
595 break;
596 }
597 case CALLBACK_TYPE:
598 {
599 break;
600 }
601 case CONTENT_TYPE:
602 {
603 break;
604 }
605 case ITEM_TYPE:
606 {
607 eo_do(g->propsview_sc, evas_obj_visibility_set(EINA_TRUE));
608 eo_do(g->itemview_box, evas_obj_visibility_set(EINA_FALSE));
609 break;
610 }
611 }
612
613 _propsview_toolbar_selected_item_type = new_type;
614
615 /* Setting view according to new selected toolbar's item. */
616 switch (new_type)
617 {
618 case DESCRIPTION_TYPE:
619 {
620 break;
621 }
622 case PROPERTY_TYPE:
623 {
624 break;
625 }
626 case CALLBACK_TYPE:
627 {
628 break;
629 }
630 case CONTENT_TYPE:
631 {
632 break;
633 }
634 case ITEM_TYPE:
635 {
636 eo_do(g->propsview_sc, evas_obj_visibility_set(EINA_FALSE));
637 eo_do(g->itemview_box, evas_obj_visibility_set(EINA_TRUE));
638
639 if (wdg_is_container(wdg, DB_DEF_MENU_CLASS))
640 {
641 eo_do(g->itemview_add_item_nested_but, elm_obj_widget_disabled_set(EINA_FALSE));
642 eo_do(g->itemview_add_separator_but, elm_obj_widget_disabled_set(EINA_FALSE));
643 }
644 else if (wdg_is_container(wdg, DB_DEF_DISKSELECTOR_CLASS) ||
645 wdg_is_container(wdg, DB_DEF_CTXPOPUP_CLASS))
646 {
647 eo_do(g->itemview_add_item_nested_but, elm_obj_widget_disabled_set(EINA_TRUE));
648 eo_do(g->itemview_add_separator_but, elm_obj_widget_disabled_set(EINA_TRUE));
649 }
650 break;
651 }
652 }
653}
654
576/* Build property view for current widget. 655/* Build property view for current widget.
577 * Show propeties, which defined in class hyerarchy 656 * Show propeties, which defined in class hyerarchy
578 * for current widget's class. And fill fields, if property 657 * for current widget's class. And fill fields, if property
579 * is defined for current widget.(or put default values into fields.) 658 * is defined for current widget.(or put default values into fields.)
580 * Called, when item in objtree is selected. */ 659 * Called, when item in objtree is selected. */
581void 660void
582propview_build(const Gui_Widget *wdg, It_Data_Type type) 661propview_build(const Gui_Widget *wdg)
583{ 662{
663 It_Data_Type type = _new_type;
664
584 elm_box_clear(sc_box); 665 elm_box_clear(sc_box);
585 if (!wdg) return; 666 if (!wdg) return;
586 667
@@ -629,10 +710,7 @@ propview_build(const Gui_Widget *wdg, It_Data_Type type)
629 default: 710 default:
630 ERR("switch default"); 711 ERR("switch default");
631 } 712 }
632 if (_view_cbs->propview_build_post_cb) 713 _propview_build_post_cb(wdg, type);
633 {
634 _view_cbs->propview_build_post_cb(wdg, type);
635 }
636} 714}
637 715
638/* This func is called, when need to update values in property view. 716/* This func is called, when need to update values in property view.
@@ -712,15 +790,33 @@ propview_item_update(const Gui_Widget_Property *prop)
712 i++; /*Because first item in box list is label*/ 790 i++; /*Because first item in box list is label*/
713 } 791 }
714} 792}
793static void
794_propsview_toolbar_clicked(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
795{
796 const Gui_Context *ctx = _active_context_get();
797 if (!ctx) return;
798 const Gui_Widget *wdg = gui_context_data_get(ctx, SELECTED_WDG);
799 _new_type = (int) (intptr_t) data;
800 propview_build(wdg);
801}
715 802
716void 803void
717propview_scrollbox_set(Eo *box) 804propview_init(Eo *box, Eo *toolbar)
718{ 805{
719 sc_box = box; 806 sc_box = box;
807 /* Put it here, because it Enums defined in propsview.h */
808 elm_toolbar_item_append(toolbar, "fonts", "Description",
809 _propsview_toolbar_clicked, (void *) (intptr_t) DESCRIPTION_TYPE);
810 elm_toolbar_item_append(toolbar, "package_settings", "Properties",
811 _propsview_toolbar_clicked, (void *) (intptr_t) PROPERTY_TYPE);
812 elm_toolbar_item_append(toolbar, "call-start", "Callbacks",
813 _propsview_toolbar_clicked, (void *) (intptr_t) CALLBACK_TYPE);
814 elm_toolbar_item_append(toolbar, "folder-open", "Content",
815 _propsview_toolbar_clicked, (void *) (intptr_t) CONTENT_TYPE);
720} 816}
721 817
722void 818void
723propview_scrollbox_unset() 819propview_shutdown()
724{ 820{
725 eo_do(sc_box, elm_obj_box_clear()); 821 eo_do(sc_box, elm_obj_box_clear());
726 if (op_item_table) eina_hash_free(op_item_table); 822 if (op_item_table) eina_hash_free(op_item_table);
diff --git a/src/bin/egui_gui/propview.h b/src/bin/egui_gui/propview.h
index 9fb26ec..cd9c905 100644
--- a/src/bin/egui_gui/propview.h
+++ b/src/bin/egui_gui/propview.h
@@ -15,17 +15,16 @@ typedef struct
15 Eina_Bool (*content_delete_cb_func)(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info); 15 Eina_Bool (*content_delete_cb_func)(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info);
16 Eina_Bool (*content_reorder_cb_func)(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info); 16 Eina_Bool (*content_reorder_cb_func)(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info);
17 Eina_Bool (*content_change_cb_func)(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info); 17 Eina_Bool (*content_change_cb_func)(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info);
18 void (*propview_build_post_cb)(const Gui_Widget *wdg, It_Data_Type type);
19} PropViewCbs; 18} PropViewCbs;
20 19
21PropViewCbs * 20PropViewCbs *
22propview_cbs_get(); 21propview_cbs_get();
23 22
24void 23void
25propview_scrollbox_set(Eo *box); 24propview_init(Eo *box, Eo *toolbar);
26 25
27void 26void
28propview_scrollbox_unset(); 27propview_shutdown();
29 28
30/* Build property view for current widget. 29/* Build property view for current widget.
31 * Show propeties, which defined in class hyerarchy 30 * Show propeties, which defined in class hyerarchy
@@ -33,7 +32,7 @@ propview_scrollbox_unset();
33 * is defined for current widget.(or put default values into fields.) 32 * is defined for current widget.(or put default values into fields.)
34 * Called, when item in objtree is selected. */ 33 * Called, when item in objtree is selected. */
35void 34void
36propview_build(const Gui_Widget *wdg, It_Data_Type type); 35propview_build(const Gui_Widget *wdg);
37 36
38/* Update values in item in propview list. */ 37/* Update values in item in propview list. */
39void 38void
diff --git a/src/bin/egui_gui/rmview.c b/src/bin/egui_gui/rmview.c
index 9fbc582..cfe6318 100644
--- a/src/bin/egui_gui/rmview.c
+++ b/src/bin/egui_gui/rmview.c
@@ -6,6 +6,7 @@
6#include "egui_logic_private.h" 6#include "egui_logic_private.h"
7#include "rmview.h" 7#include "rmview.h"
8#include "seqview.h" 8#include "seqview.h"
9#include "propview.h"
9 10
10#include "elm_widget.h" 11#include "elm_widget.h"
11#include "elm_widget_container.h" 12#include "elm_widget_container.h"
@@ -237,7 +238,7 @@ _bt_save_clicked(void *data EINA_UNUSED, Eo *obj, const Eo_Event_Description *de
237 } 238 }
238 } 239 }
239 240
240 /* For sequence take data from checkbox. */ 241 /* For SEQUENCE take data from checkbox. */
241 if (res_type == RESOURCE_SEQUENCE) 242 if (res_type == RESOURCE_SEQUENCE)
242 { 243 {
243 Eina_Bool state; 244 Eina_Bool state;
@@ -247,7 +248,7 @@ _bt_save_clicked(void *data EINA_UNUSED, Eo *obj, const Eo_Event_Description *de
247 sequence_public_set(seq, state); 248 sequence_public_set(seq, state);
248 seqview_fill(ctx); 249 seqview_fill(ctx);
249 } 250 }
250 /* For iamge take data from image. */ 251 /* For IMAGE take data from ifileselector. */
251 else if (res_type == RESOURCE_IMAGE) 252 else if (res_type == RESOURCE_IMAGE)
252 { 253 {
253 eo_do(f_data->it_data->en2, str = elm_interface_fileselector_path_get()); 254 eo_do(f_data->it_data->en2, str = elm_interface_fileselector_path_get());
@@ -259,6 +260,8 @@ _bt_save_clicked(void *data EINA_UNUSED, Eo *obj, const Eo_Event_Description *de
259 { 260 {
260 eo_do(f_data->it_data->en2, elm_interface_fileselector_path_set(resource_value_get(res))); 261 eo_do(f_data->it_data->en2, elm_interface_fileselector_path_set(resource_value_get(res)));
261 } 262 }
263 const Gui_Widget *wdg = gui_context_data_get(ctx, SELECTED_WDG);
264 propview_build(wdg);
262 } 265 }
263 /* For CALLBACKS and STRINGS. */ 266 /* For CALLBACKS and STRINGS. */
264 else 267 else
@@ -646,6 +649,8 @@ _rm_add_button_clicked(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const Eo_Eve
646 else if (res_type == RESOURCE_IMAGE) 649 else if (res_type == RESOURCE_IMAGE)
647 { 650 {
648 resource_value_set(gui_res, value_str); 651 resource_value_set(gui_res, value_str);
652 const Gui_Widget *wdg = gui_context_data_get(ctx, SELECTED_WDG);
653 propview_build(wdg);
649 } 654 }
650 else 655 else
651 { 656 {