Enlightenment CVS committal

Author  : essiene
Project : e17
Module  : proto

Dir     : e17/proto/entrance_edit_gui/src/gui


Modified Files:
        Egui.h background.c behavior.c egui_graphics_selector.c 
        egui_settings.c egui_settings.h layout.c main.c sessions.c 
        theme.c x_settings.c 


Log Message:
- Started work on proper object managing overall. I've had some object 
corruption issues that seems to be caused by lost pointers. Time to byte this 
bullet.
- Theme and Background dialog now will only ever create one instance, no matter 
how many times you try to launch it.
- Prompted by entrance bloat issues, cleaned up some very silly memory usages. 
Its amazing the what you gain just by watching top while clicking away at your 
app. Awesome stuff.

===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/Egui.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- Egui.h      23 Aug 2006 02:10:49 -0000      1.10
+++ Egui.h      27 Sep 2006 21:45:47 -0000      1.11
@@ -18,17 +18,39 @@
        int show_pointer_options;
 } Egui_Graphics_Selector;
 
+typedef struct {
 
+       Entrance_Dialog win;
+       Entrance_Preview img_preview;
+       Entrance_Widget pointer_preview;
+       Entrance_List list_thumbs;
+       Entrance_Entry browse_entry;
+       Entrance_Widget browse_button;
+       Entrance_Widget pointer_browse_button;
+       Entrance_Widget group_graphics;
+       Entrance_Widget group_preview;
+       Entrance_Widget group_options;
+       Entrance_Widget group_pointer;
 
-void egui_theme_dialog_show(void);
-void egui_background_dialog_show(void);
-void egui_layout_dialog_show(void);
-
-void egui_behavior_dialog_show(void);
-void egui_sessions_dialog_show(void);
-void egui_x_settings_dialog_show(void);
-void egui_preview_show(void);
+       Egui_Graphics_Selector egs;
+
+       char *first;
+       int newly_created;
+
+} *Egui_Graphics_Dialog;
+
+
+void egui_theme_dialog_show(void*);
+void egui_background_dialog_show(void*);
+void egui_layout_dialog_show(void*);
+
+void egui_behavior_dialog_show(void*);
+void egui_sessions_dialog_show(void*);
+void egui_x_settings_dialog_show(void*);
+/*void egui_preview_show(void*);*/
+
+Egui_Graphics_Dialog egui_gd_new(Egui_Graphics_Selector egs);
+void egui_gd_show(Egui_Graphics_Dialog egd);
 
-void egui_gs_dialog_show(Egui_Graphics_Selector);
 
 #endif
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/background.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- background.c        23 Aug 2006 02:10:49 -0000      1.9
+++ background.c        27 Sep 2006 21:45:47 -0000      1.10
@@ -7,7 +7,7 @@
 
 
 void
-egui_background_dialog_show()
+egui_background_dialog_show(void* data)
 {
        Egui_Graphics_Selector background_egs = {
                "background",
@@ -20,5 +20,8 @@
                0
        };
 
-       egui_gs_dialog_show(background_egs);
+       static Egui_Graphics_Dialog egd = NULL;
+       if(!egd)
+               egd = egui_gd_new(background_egs);
+       egui_gd_show(egd);
 }
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/behavior.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- behavior.c  23 Aug 2006 13:06:31 -0000      1.9
+++ behavior.c  27 Sep 2006 21:45:47 -0000      1.10
@@ -4,7 +4,7 @@
 #include "Egui.h"
 
 void
-egui_behavior_dialog_show() {
+egui_behavior_dialog_show(void *data) {
        Ecore_List *groups = ecore_list_new();
 
        /* Autologin group */
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/egui_graphics_selector.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- egui_graphics_selector.c    25 Sep 2006 19:08:56 -0000      1.13
+++ egui_graphics_selector.c    27 Sep 2006 21:45:47 -0000      1.14
@@ -12,109 +12,129 @@
 #define PREVIEW_V_WIDTH 1024
 #define PREVIEW_V_HEIGHT 768
 
-static void _gs_cb_selected(void);
+static void _gs_cb_selected(void*);
 static void _gs_cb_ok(void *, void *);
 static void _gs_cb_apply(void *, void *);
 static void _gs_cb_close(void *, void *);
 static void _gs_cb_browse(void*, void*);
 
-static char* _gs_get_path(const char *);
-static void _gs_close(void);
-static int _gs_apply(void);
-static char* _gs_populate_list(void);
-static void _gs_load_preview(const char *);
-
-static Entrance_Dialog win;
-static Entrance_Preview img_preview;
-static Entrance_Widget pointer_preview;
-static Entrance_List list_thumbs;
-static Entrance_Entry browse_entry;
-static Entrance_Widget browse_button;
-static Entrance_Widget pointer_browse_button;
-static Entrance_Widget group_graphics;
-static Entrance_Widget group_preview;
-static Entrance_Widget group_options;
-static Entrance_Widget group_pointer;
+static char* _gs_get_path(Egui_Graphics_Dialog, const char *);
+static void _gs_close(void*);
+static int _gs_apply(void*);
+static char* _gs_populate_list(Egui_Graphics_Dialog);
+static void _gs_load_preview(Egui_Graphics_Dialog, const char *);
 
-static Egui_Graphics_Selector egs;
+static Egui_Graphics_Dialog _egui_gd_create_widgets(Egui_Graphics_Dialog egd);
 
-void
-egui_gs_dialog_show(Egui_Graphics_Selector _egs)
+
+Egui_Graphics_Dialog
+egui_gd_new(Egui_Graphics_Selector egs)
 {
-   egs = _egs;
-   
-   win = ew_dialog_new(egs.dialog_title, EW_FALSE);
+   Egui_Graphics_Dialog egd = calloc(1, sizeof(*egd));
+   if(!egd)
+          return NULL;
 
+   egd->egs = egs;
+   egd = _egui_gd_create_widgets(egd);
 
-   group_preview = ew_dialog_group_add(win, _("Preview"), EW_GROUP_VERTICAL);
+   return egd;
+}
 
-   img_preview = ew_preview_new(PREVIEW_WIDTH, PREVIEW_HEIGHT);
-   ew_group_add(group_preview, img_preview);
+Egui_Graphics_Dialog
+_egui_gd_create_widgets(Egui_Graphics_Dialog egd)
+{
+       if(!egd)
+               return NULL;
 
-   group_graphics = ew_dialog_group_add(win, egs.list_title, 
EW_GROUP_VERTICAL);
+   egd->win = ew_dialog_new(egd->egs.dialog_title, EW_FALSE);
 
-   list_thumbs = ew_textlist_new(NULL, PREVIEW_WIDTH, 140, 20, 90);
+   egd->group_preview = ew_dialog_group_add(egd->win, _("Preview"), 
EW_GROUP_VERTICAL);
+
+   egd->img_preview = ew_preview_new(PREVIEW_WIDTH, PREVIEW_HEIGHT);
+   ew_group_add(egd->group_preview, egd->img_preview);
+
+   egd->group_graphics = ew_dialog_group_add(egd->win, egd->egs.list_title, 
EW_GROUP_VERTICAL);
+
+   egd->list_thumbs = ew_textlist_new(NULL, PREVIEW_WIDTH, 140, 20, 90);
    
       
-   ew_group_add(group_graphics, list_thumbs);
+   ew_group_add(egd->group_graphics, egd->list_thumbs);
 
    char t[PATH_MAX];
-   snprintf(t, PATH_MAX, "Browse system for %ss", egs.name);
-   group_options = ew_dialog_group_add(win, t, EW_GROUP_HORIZONTAL);
+   snprintf(t, PATH_MAX, "Browse system for %ss", egd->egs.name);
+   egd->group_options = ew_dialog_group_add(egd->win, t, EW_GROUP_HORIZONTAL);
 
-   browse_entry = ew_entry_new(NULL, NULL, EW_FALSE);
-   ew_group_add(group_options, browse_entry);
+   egd->browse_entry = ew_entry_new(NULL, NULL, EW_FALSE);
+   ew_group_add(egd->group_options, egd->browse_entry);
 
-   browse_button = ew_button_new(_("Browse..."), _gs_cb_browse, NULL);
-   ew_group_add(group_options, browse_button);
+   egd->browse_button = ew_button_new(_("Browse..."), _gs_cb_browse, egd);
+   ew_group_add(egd->group_options, egd->browse_button);
 
-   if(egs.show_pointer_options)
+   if(egd->egs.show_pointer_options)
    {
-          group_pointer = ew_dialog_group_add(win, _("Pointer Options"), 
EW_GROUP_HORIZONTAL);
+          egd->group_pointer = ew_dialog_group_add(egd->win, _("Pointer 
Options"), EW_GROUP_HORIZONTAL);
 
-          pointer_preview = ew_image_new(100, 50);
-          ew_group_add(group_pointer, pointer_preview);
+          egd->pointer_preview = ew_image_new(100, 50);
+          ew_group_add(egd->group_pointer, egd->pointer_preview);
 
-          pointer_browse_button = ew_button_new(_("Browse..."), _gs_cb_browse, 
NULL);
-          ew_group_add(group_pointer, pointer_browse_button);
+          egd->pointer_browse_button = ew_button_new(_("Browse..."), 
_gs_cb_browse, egd);
+          ew_group_add(egd->group_pointer, egd->pointer_browse_button);
    }
+
+   egd->first = _gs_populate_list(egd);
    
-   ew_dialog_close_button_add(win, _gs_cb_close, NULL);
-   ew_dialog_apply_button_add(win, _gs_cb_apply, NULL);
-   ew_dialog_ok_button_add(win, _gs_cb_ok, NULL);
-   
-   ew_dialog_show(win);
+   ew_dialog_close_button_add(egd->win, _gs_cb_close, egd);
+   ew_dialog_apply_button_add(egd->win, _gs_cb_apply, egd);
+   ew_dialog_ok_button_add(egd->win, _gs_cb_ok, egd);
 
+   egd->newly_created = 1;
+   return egd;
+}
+ 
+void
+egui_gd_show(Egui_Graphics_Dialog egd)
+{
+       if(!egd)
+               return;
+  
+   if(egd->win == NULL)
+          egd = _egui_gd_create_widgets(egd);
 
-   char *first = _gs_populate_list();
-       _gs_load_preview(first);
+   ew_dialog_show(egd->win);
+   _gs_load_preview(egd, egd->first);
+   egd->newly_created = 0;
 }
 
 static void
-_gs_cb_selected()
+_gs_cb_selected(void *data)
 {
-       char* graphic = ew_list_selected_data_get(list_thumbs);
-       _gs_load_preview(graphic);
+       Egui_Graphics_Dialog egd = data;
+       if(!egd)
+               return;
+
+       char* graphic = ew_list_selected_data_get(egd->list_thumbs);
+       _gs_load_preview(egd, graphic);
 }
 
 
 static void
 _gs_cb_ok(void *object, void *data)
 {
-   if(_gs_apply()) 
-          _gs_close();
+   if(_gs_apply(data)) 
+          _gs_close(data);
 }
 
 static void
 _gs_cb_apply(void *object, void *data)
 {
-   _gs_apply();
+   _gs_apply(data);
 }
 
 static void
 _gs_cb_close(void *object, void *data)
 {
-       _gs_close();
+       _gs_close(data);
+       data = NULL;
 }
 
 static void
@@ -124,39 +144,45 @@
 }
 
 static char*
-_gs_get_path(const char *t)
+_gs_get_path(Egui_Graphics_Dialog egd, const char *t)
 {
+       if(!egd)
+               return NULL;
+
        char *path = calloc(PATH_MAX, sizeof(*path));
-       snprintf(path, PATH_MAX, "%s/%s", egs.files_path, t);
+       snprintf(path, PATH_MAX, "%s/%s", egd->egs.files_path, t);
 
        return path;
 }
 
 static int
-_gs_apply(void)
+_gs_apply(void* data)
 {
        char msg[PATH_MAX];
+       Egui_Graphics_Dialog egd = data;
+       if(!egd)
+               return;
 
-    char *graphic = ew_list_selected_data_get(list_thumbs);
+    char *graphic = ew_list_selected_data_get(egd->list_thumbs);
        if(!graphic) 
        {
-               snprintf(msg, PATH_MAX, "Please select a %s first", egs.name);
+               snprintf(msg, PATH_MAX, "Please select a %s first", 
egd->egs.name);
                ew_messagebox_ok("Entrance Config - Error", msg, 
EW_MESSAGEBOX_ICON_ERROR);
                return 0;
        }
 
-       if(egs.use_full_path)
+       if(egd->egs.use_full_path)
        {
-               char *full_path = _gs_get_path(graphic);
-               entrance_edit_string_set(egs.entrance_edit_key, full_path);
+               char *full_path = _gs_get_path(egd, graphic);
+               entrance_edit_string_set(egd->egs.entrance_edit_key, full_path);
                free(full_path);
        }
        else 
-               entrance_edit_string_set(egs.entrance_edit_key, graphic);
+               entrance_edit_string_set(egd->egs.entrance_edit_key, graphic);
 
        if(!entrance_edit_save())
        {
-               snprintf(msg, PATH_MAX, "Can not set %s. Please check your 
permissions", egs.name);
+               snprintf(msg, PATH_MAX, "Can not set %s. Please check your 
permissions", egd->egs.name);
                ew_messagebox_ok("Entrance Config - Error", msg, 
EW_MESSAGEBOX_ICON_ERROR);
                return 0;
        }
@@ -165,15 +191,19 @@
 }
 
 static void
-_gs_close(void)
+_gs_close(void* data)
 {
-       ew_dialog_destroy(win);
+       Egui_Graphics_Dialog egd = data;
+       if(!egd)
+               return;
+       ew_dialog_destroy(egd->win);
+       egd->win = NULL;
 }
 
 static char*
-_gs_populate_list(void)
+_gs_populate_list(Egui_Graphics_Dialog egd)
 {
-   Ecore_List *glist = ecore_file_ls(egs.files_path);
+   Ecore_List *glist = ecore_file_ls(egd->egs.files_path);
    char* first;
 
    if(glist && !ecore_list_is_empty(glist))
@@ -186,7 +216,7 @@
           while((graphic = ecore_list_next(glist)))
                 {
                        char *graphic_no_ext = ecore_file_strip_ext(graphic);
-                       ew_textlist_add(list_thumbs, graphic_no_ext, graphic, 
strlen(graphic) + 1, _gs_cb_selected);
+                       ew_textlist_add(egd->list_thumbs, graphic_no_ext, 
graphic, strlen(graphic) + 1, _gs_cb_selected, egd);
                        free(graphic_no_ext);
                 }
 
@@ -197,10 +227,15 @@
 }
 
 static void
-_gs_load_preview(const char *graphic)
+_gs_load_preview(Egui_Graphics_Dialog egd, const char *graphic)
 {
-   char *file = _gs_get_path(graphic);
-   Evas *evas = ew_preview_evas_get(img_preview, PREVIEW_WIDTH, 
PREVIEW_HEIGHT, PREVIEW_V_WIDTH, PREVIEW_V_HEIGHT);
+       if(!egd)
+               return;
+
+   char *file = _gs_get_path(egd, graphic);
+   static Evas *evas = NULL;
+   if(evas == NULL || egd->newly_created == 1) 
+          evas = ew_preview_evas_get(egd->img_preview, PREVIEW_WIDTH, 
PREVIEW_HEIGHT, PREVIEW_V_WIDTH, PREVIEW_V_HEIGHT);
 
    /*TODO: currently, i'm just grabbing *file and displaying blindly, which 
mean, I won't be able to 
        * preview different background and themes, the below commented code 
should be filled out to
@@ -209,7 +244,10 @@
    /*char *bg_path = _gs_get_bg_path();
    char *theme_path = _gs_get_theme_path();*/
 
-   Evas_Object *es  = es_new(evas);
+   static Evas_Object *es  = NULL;
+   if(es == NULL || egd->newly_created == 1) 
+          es = es_new(evas);
+
    es_background_edje_set(es, file);
    es_main_edje_set(es, file);
    evas_object_resize(es, PREVIEW_V_WIDTH, PREVIEW_V_HEIGHT);
@@ -218,4 +256,6 @@
    free(file);
    /*FIXME: selecting the first row doesn't work - maybe we select first row 
while adding elements to the list:(*/
    /*ew_list_first_row_select(list_thumbs);*/
+
+   return;
 }
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/egui_settings.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- egui_settings.c     25 Sep 2006 19:08:56 -0000      1.5
+++ egui_settings.c     27 Sep 2006 21:45:47 -0000      1.6
@@ -12,6 +12,8 @@
 
 static void _cb_group_build(void*, void*);
 static void _cb_item_build(void*, void*);
+static void _cb_foreach_item(void *listdata, void *data);
+static void _cb_foreach_group(void *listdata, void *data);
 
 static void _close(void);
 static int _apply(void);
@@ -29,7 +31,19 @@
 static Entrance_Widget _item_build(Egui_Settings_Item);
 
 static Entrance_Dialog win;
-static Ecore_List *items;
+static Ecore_List *group_list = NULL;
+static Ecore_List *item_list = NULL;
+Entrance_Widget grp;
+
+void
+egui_init(void)
+{
+       if(!group_list)
+               group_list = ecore_list_new();
+       if(!item_list)
+               item_list = ecore_list_new();
+}
+
 
 
 Egui_Settings_Group es_group_new(const char* name, int direction)
@@ -55,10 +69,12 @@
 es_dialog_show(char *title, Ecore_List *groups) 
 {
        win = ew_dialog_new(title, EW_FALSE);
-       items = ecore_list_new();
 
        ecore_list_for_each(groups, _cb_group_build, NULL);
        
+       ecore_list_for_each(group_list, _cb_foreach_group, NULL);
+       ecore_list_for_each(item_list, _cb_foreach_item, NULL);
+
        ew_dialog_close_button_add(win, _cb_close, NULL);
        ew_dialog_apply_button_add(win, _cb_apply, NULL);
        ew_dialog_ok_button_add(win, _cb_ok, NULL);
@@ -167,12 +183,15 @@
 _apply(void) 
 {
        /*printf("starting apply main\n");*/
-       Egui_Settings_Item *item;
-       ecore_list_goto_first(items);
+       /*Egui_Settings_Item *item;
+       ecore_list_goto_first(item_list);*/
+
+       ecore_list_for_each(group_list, _cb_foreach_group, NULL);
+       ecore_list_for_each(item_list, _cb_foreach_item, NULL);
 
-       while(item = ecore_list_next(items)) {
+       /*while(item = ecore_list_next(item_list)) {
 
-               /*printf("first widget key = %s, type = %d\n", 
item->entrance_edit_key, item->widget_type);*/
+               printf("first widget key = %s, type = %d\n", 
item->entrance_edit_key, item->widget_type);
                switch(item->widget_type) {
                        case EGUI_TYPE_BUTTON:
                                _save_button(item->widget, 
item->entrance_edit_key, item->key_type);
@@ -188,7 +207,7 @@
                                break;
                        default: break;
                }
-       }
+       }*/
 
        if(!entrance_edit_save())
        {
@@ -224,20 +243,37 @@
 _cb_group_build(void *listdata, void* data) 
 {
        Egui_Settings_Group group = listdata;
-       Entrance_Widget grp = ew_dialog_group_add(win, group->title, 
group->direction);
+       printf("processing group = %s\n", group->title);
+       grp = ew_dialog_group_add(win, group->title, group->direction);
 
        ecore_list_for_each(group->items, _cb_item_build, grp);
+       ecore_list_append(group_list, grp);
+       ecore_list_for_each(group_list, _cb_foreach_group, NULL);
 }
 
 static void
-_cb_item_build(void * listdata, void* data)
+_cb_item_build(void *listdata, void* data)
 {
        Egui_Settings_Item *itemp = listdata;
-       Egui_Settings_Item item = *itemp;
+/*     Egui_Settings_Item item = *itemp;*/
 
        Entrance_Widget group = data;
 
-       ew_group_add(group, _item_build(item));
+       ew_group_add(group, _item_build(*itemp));
+
+       ecore_list_append(item_list, itemp);
+}
 
-       ecore_list_append(items, &item);
+static void
+_cb_foreach_item(void *listdata, void *data)
+{
+       Egui_Settings_Item *itemp = listdata;
+       printf("widget key = %s, type = %d\n", itemp->entrance_edit_key, 
itemp->widget_type);
+}
+
+static void
+_cb_foreach_group(void *listdata, void *data)
+{
+       Egui_Settings_Group group = listdata;
+       printf("group = %s\n", group->title);
 }
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/egui_settings.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- egui_settings.h     18 Aug 2006 04:57:02 -0000      1.1
+++ egui_settings.h     27 Sep 2006 21:45:47 -0000      1.2
@@ -9,10 +9,10 @@
 #define EGUI_TYPE_STR 5
 
 typedef struct _Egui_Settings_Item {
-       void *widget;
-       int widget_type;
+       void *widget; 
+       int widget_type; /*BUTTON, ENTRY, LABEL, or LIST*/
        const char *entrance_edit_key;
-       int key_type; /*BUTTON, ENTRY, LABEL, or LIST*/
+       int key_type; 
 } Egui_Settings_Item;
 
 typedef struct _Egui_Settings_Group {
@@ -21,6 +21,7 @@
        Ecore_List *items;
 } *Egui_Settings_Group;
 
+void egui_init(void);
 void es_dialog_show(char *title, Ecore_List *groups);
 
 Egui_Settings_Group es_group_new(const char* name, int direction);
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/layout.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- layout.c    18 Aug 2006 04:51:53 -0000      1.8
+++ layout.c    27 Sep 2006 21:45:47 -0000      1.9
@@ -4,7 +4,7 @@
 #include "Egui.h"
 
 void
-egui_layout_dialog_show() 
+egui_layout_dialog_show(void *data) 
 {
 
        Egui_Settings_Group group_greeting = es_group_new("Greetings", 
EW_GROUP_VERTICAL);
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/main.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -3 -r1.16 -r1.17
--- main.c      25 Sep 2006 19:08:56 -0000      1.16
+++ main.c      27 Sep 2006 21:45:47 -0000      1.17
@@ -35,13 +35,13 @@
    const char* edjefile = PACKAGE_DATA_DIR"/icons/icons.edj";
 
    Entrance_List tree = ew_edjelist_new("<b>Configuration</b>", 320, 240, 52, 
90);
-   ew_edjelist_add(tree, _("Theme"), edjefile, "icons/main/theme", NULL, 0, 
egui_theme_dialog_show);
-   ew_edjelist_add(tree, _("Background"), edjefile, "icons/main/background", 
NULL, 0, egui_background_dialog_show);
-   ew_edjelist_add(tree, _("Behavior"), edjefile, "icons/main/behavior", NULL, 
0,  egui_behavior_dialog_show);
-   ew_edjelist_add(tree, _("X settings"), edjefile, 
"icons/main/xsettings",NULL, 0, egui_x_settings_dialog_show);
-/*   ew_edjelist_add(tree, _("Sessions"),edjefile, "icons/main/sessions", 
NULL, 0,  egui_sessions_dialog_show);*/
-   ew_edjelist_add(tree, _("Layout"), edjefile, "icons/main/layout", NULL, 0,  
egui_layout_dialog_show);
-/*   ew_edjelist_add(tree, _("Modules"), edjefile, "icons/main/modules",NULL, 
0, NULL);*/
+   ew_edjelist_add(tree, _("Theme"), edjefile, "icons/main/theme", NULL, 0, 
egui_theme_dialog_show, NULL);
+   ew_edjelist_add(tree, _("Background"), edjefile, "icons/main/background", 
NULL, 0, egui_background_dialog_show, NULL);
+   ew_edjelist_add(tree, _("Behavior"), edjefile, "icons/main/behavior", NULL, 
0,  egui_behavior_dialog_show, NULL);
+   ew_edjelist_add(tree, _("X settings"), edjefile, 
"icons/main/xsettings",NULL, 0, egui_x_settings_dialog_show, NULL);
+/*   ew_edjelist_add(tree, _("Sessions"),edjefile, "icons/main/sessions", 
NULL, 0,  egui_sessions_dialog_show, NULL);*/
+   ew_edjelist_add(tree, _("Layout"), edjefile, "icons/main/layout", NULL, 0,  
egui_layout_dialog_show, NULL);
+/*   ew_edjelist_add(tree, _("Modules"), edjefile, "icons/main/modules",NULL, 
0, NULL, NULL);*/
 
    Entrance_Widget group = ew_dialog_group_add(dialog, _("Configuration"), 
EW_GROUP_VERTICAL);
    ew_group_add(group, tree);
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/sessions.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- sessions.c  25 Sep 2006 19:08:56 -0000      1.4
+++ sessions.c  27 Sep 2006 21:45:47 -0000      1.5
@@ -2,7 +2,7 @@
 #include <stdio.h>
 
 void
-egui_sessions_dialog_show() {
+egui_sessions_dialog_show(void *data) {
        printf("Sessions clicked\n");
 }
 
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/theme.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- theme.c     23 Aug 2006 02:10:49 -0000      1.10
+++ theme.c     27 Sep 2006 21:45:47 -0000      1.11
@@ -7,7 +7,7 @@
 
 
 void
-egui_theme_dialog_show()
+egui_theme_dialog_show(void *data)
 {
        Egui_Graphics_Selector theme_egs = {
                "theme",
@@ -21,6 +21,10 @@
        };
 
 
-       egui_gs_dialog_show(theme_egs);
-
+       static Egui_Graphics_Dialog egd = NULL;
+       if(!egd)
+       {
+               egd = egui_gd_new(theme_egs);
+       }
+       egui_gd_show(egd);
 }
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/gui/x_settings.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- x_settings.c        18 Aug 2006 04:51:53 -0000      1.6
+++ x_settings.c        27 Sep 2006 21:45:47 -0000      1.7
@@ -8,8 +8,10 @@
 
 
 void
-egui_x_settings_dialog_show() 
+egui_x_settings_dialog_show(void *data) 
 {
+       egui_init();
+
        Egui_Settings_Group group_daemon = es_group_new("Daemon Settings", 
EW_GROUP_VERTICAL);
 
        Egui_Settings_Item item_attempts = {



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to