Enlightenment CVS committal

Author  : sebastid
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/modules/ibar


Modified Files:
        e_mod_config.c 


Log Message:
Do NOT use \r\n for EOL!

===================================================================
RCS file: /cvs/e/e17/apps/e/src/modules/ibar/e_mod_config.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -3 -r1.25 -r1.26
--- e_mod_config.c      4 Jun 2006 09:29:15 -0000       1.25
+++ e_mod_config.c      8 Jun 2006 07:35:31 -0000       1.26
@@ -1,270 +1,270 @@
-/*

- * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2

- */

-#include "e.h"

-#include "e_mod_main.h"

-#include <Ecore_File.h>

-

-struct _E_Config_Dialog_Data

-{

-   char *dir;

-   int   show_label;

-   int   eap_label;

-   

-   Evas_Object *tlist;

-   Evas_Object *radio_name;

-   Evas_Object *radio_comment;

-   Evas_Object *radio_generic;

-};

-

-/* Protos */

-static void *_create_data(E_Config_Dialog *cfd);

-static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);

-static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata);

-static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data 
*cfdata);

-static void _cb_add(void *data, void *data2);

-static void _cb_del(void *data, void *data2);

-static void _cb_entry_ok(char *text, void *data);

-static void _cb_confirm_dialog_yes(void *data);

-static void _load_tlist(E_Config_Dialog_Data *cfdata);

-static void _show_label_cb_change(void *data, Evas_Object *obj);

-

-void 

-_config_ibar_module(Config_Item *ci)

-{

-   E_Config_Dialog *cfd;

-   E_Config_Dialog_View *v;

-

-   v = E_NEW(E_Config_Dialog_View, 1);

-

-   /* Dialog Methods */

-   v->create_cfdata = _create_data;

-   v->free_cfdata = _free_data;

-   v->basic.apply_cfdata = _basic_apply_data;

-   v->basic.create_widgets = _basic_create_widgets;

-   v->advanced.apply_cfdata = NULL;

-   v->advanced.create_widgets = NULL;

-   

-   /* Create The Dialog */

-   cfd = e_config_dialog_new(e_container_current_get(e_manager_current_get()),

-                            _("IBar Configuration"), NULL, 0, v, ci);

-   ibar_config->config_dialog = cfd;

-}

-

-static void 

-_fill_data(Config_Item *ci, E_Config_Dialog_Data *cfdata)

-{

-   if (ci->dir)

-     cfdata->dir = strdup(ci->dir);

-   else

-     cfdata->dir = strdup("");

-   cfdata->show_label = ci->show_label;

-   cfdata->eap_label = ci->eap_label;

-}

-

-static void *

-_create_data(E_Config_Dialog *cfd)

-{

-   E_Config_Dialog_Data *cfdata;

-   Config_Item *ci;

-   

-   ci = cfd->data;

-   cfdata = E_NEW(E_Config_Dialog_Data, 1);

-   _fill_data(ci, cfdata);

-   return cfdata;

-}

-

-static void 

-_free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)

-{

-   if (cfdata->dir) free(cfdata->dir);

-   ibar_config->config_dialog = NULL;

-   free(cfdata);

-}

-

-static Evas_Object *

-_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data 
*cfdata)

-{

-   Evas_Object *o, *of, *ol, *ob, *ot;

-   E_Radio_Group *rg;

-   

-   o = e_widget_list_add(evas, 0, 0);

-   

-   of = e_widget_frametable_add(evas, _("Selected Bar Source"), 0);

-   ol = e_widget_tlist_add(evas, &(cfdata->dir));

-   cfdata->tlist = ol;

-   _load_tlist(cfdata);

-   e_widget_min_size_set(ol, 140, 140);

-//   e_widget_framelist_object_append(of, ol);

-   

-   e_widget_frametable_object_append(of, ol, 0, 0, 1, 2, 1, 1, 1, 0);

-   

-   ot = e_widget_table_add(evas, 0);

-   ob = e_widget_button_add(evas, _("Add"), "widget/add", _cb_add, cfdata, 
NULL);

-   e_widget_table_object_append(ot, ob, 0, 0, 1, 1, 1, 1, 1, 0);

-   ob = e_widget_button_add(evas, _("Delete"), "widget/del", _cb_del, cfdata, 
NULL);

-   e_widget_table_object_append(ot, ob, 0, 1, 1, 1, 1, 1, 1, 0);

-   e_widget_frametable_object_append(of, ot, 1, 0, 1, 1, 1, 1, 1, 0);

-   e_widget_list_object_append(o, of, 1, 1, 0.5);

-   

-   of = e_widget_framelist_add(evas, _("Icon Labels"), 0);

-   ob = e_widget_check_add(evas, _("Show Icon Label"), &(cfdata->show_label));

-   e_widget_on_change_hook_set(ob, _show_label_cb_change, cfdata);

-   e_widget_framelist_object_append(of, ob);  

-   

-   rg = e_widget_radio_group_new(&(cfdata->eap_label));

-

-   cfdata->radio_name = e_widget_radio_add(evas, _("Display Eap Name"), 0, rg);

-   e_widget_framelist_object_append(of, cfdata->radio_name);

-   if (!cfdata->show_label) e_widget_disabled_set(cfdata->radio_name, 1);

-

-   cfdata->radio_comment = e_widget_radio_add(evas, _("Display Eap Comment"), 
1, rg);

-   e_widget_framelist_object_append(of, cfdata->radio_comment);

-   if (!cfdata->show_label) e_widget_disabled_set(cfdata->radio_comment, 1);

-   

-   cfdata->radio_generic = e_widget_radio_add(evas, _("Display Eap Generic"), 
2, rg);

-   e_widget_framelist_object_append(of, cfdata->radio_generic);

-   if (!cfdata->show_label) e_widget_disabled_set(cfdata->radio_generic, 1);

-   

-   e_widget_list_object_append(o, of, 1, 1, 0.5);

-

-   return o;

-}

-

-static int 

-_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)

-{

-   Config_Item *ci;

-   

-   ci = cfd->data;

-   if (ci->dir) evas_stringshare_del(ci->dir);

-   ci->dir = NULL;

-   if (cfdata->dir) ci->dir = evas_stringshare_add(cfdata->dir);

-   ci->show_label = cfdata->show_label;

-   ci->eap_label = cfdata->eap_label;

-   _ibar_config_update();

-   e_config_save_queue();

-   return 1;

-}

-

-static void 

-_cb_add(void *data, void *data2) 

-{

-   E_Config_Dialog_Data *cfdata;

-   

-   cfdata = data;

-   e_entry_dialog_show(_("Create new ibar source"), "enlightenment/e",

-                      _("Enter a name for this new source"), NULL, NULL,

-                      _cb_entry_ok, NULL, cfdata);

-}

-

-static void 

-_cb_del(void *data, void *data2) 

-{

-   char buf[4096];

-   E_Config_Dialog_Data *cfdata;

-   

-   cfdata = data;

-   snprintf(buf, sizeof(buf), _("You requested to delete \"%s\".<br>"

-                               "<br>"

-                               "Are you sure you want to delete this bar 
source?"),

-           cfdata->dir);

-   

-   e_confirm_dialog_show(_("Are you sure you want to delete this bar source?"),

-                        "enlightenment/exit", buf, NULL, NULL, 
_cb_confirm_dialog_yes, NULL, cfdata, NULL);

-}

-

-static void

-_cb_entry_ok(char *text, void *data) 

-{

-   char buf[4096];

-   char tmp[4096];

-   FILE *f;

-   

-   snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s", 

-           e_user_homedir_get(), text);

-

-   if (!ecore_file_exists(buf)) 

-     {

-       ecore_file_mkdir(buf);

-       snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s/.order", 

-                e_user_homedir_get(), text);

-       f = fopen(buf, "w");

-       if (f) 

-         {

-            /* Populate this .order file with some defaults */

-            snprintf(tmp, sizeof(tmp), "xterm.eap\n" "sylpheed.eap\n" 

-                     "firefox.eap\n" "openoffice.eap\n" "xchat.eap\n"

-                     "gimp.eap\n" "xmms.eap\n");

-            fwrite(tmp, sizeof(char), strlen(tmp), f);

-            fclose(f);

-         }

-     }

-   

-   _load_tlist(data);

-}

-

-static void

-_cb_confirm_dialog_yes(void *data) 

-{

-   E_Config_Dialog_Data *cfdata;

-   char buf[4096];

-   

-   cfdata = data;

-   snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s", 
e_user_homedir_get(), cfdata->dir);

-   if (ecore_file_is_dir(buf))

-     ecore_file_recursive_rm(buf);

-   

-   _load_tlist(cfdata);

-}

-

-static void 

-_load_tlist(E_Config_Dialog_Data *cfdata) 

-{

-   Ecore_List *dirs;

-   char *home, buf[4096], *file;

-   int selnum = -1;

-

-   e_widget_tlist_clear(cfdata->tlist);

-   

-   home = e_user_homedir_get();

-   snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar", home);

-   dirs = ecore_file_ls(buf);

-   

-   if (dirs)

-     {

-       int i;

-       

-       i = 0;

-       while ((file = ecore_list_next(dirs)))

-         {

-            if (file[0] == '.') continue;

-            snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s", home, 
file);

-            if (ecore_file_is_dir(buf))

-              {

-                 e_widget_tlist_append(cfdata->tlist, file, NULL, NULL, file);

-                 if ((cfdata->dir) && (!strcmp(cfdata->dir, file)))

-                   selnum = i;

-                 i++;

-              }

-         }

-       ecore_list_destroy(dirs);

-     }

-   free(home);

-   e_widget_tlist_go(cfdata->tlist);

-   if (selnum >= 0)

-     e_widget_tlist_selected_set(cfdata->tlist, selnum);   

-}

-

-static void 

-_show_label_cb_change(void *data, Evas_Object *obj) 

-{

-   E_Config_Dialog_Data *cfdata;

-   

-   cfdata = data;

-   if (!cfdata) return;

-   

-   e_widget_disabled_set(cfdata->radio_name, !cfdata->show_label);

-   e_widget_disabled_set(cfdata->radio_comment, !cfdata->show_label);

-   e_widget_disabled_set(cfdata->radio_generic, !cfdata->show_label);   

-}

+/*
+ * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
+ */
+#include "e.h"
+#include "e_mod_main.h"
+#include <Ecore_File.h>
+
+struct _E_Config_Dialog_Data
+{
+   char *dir;
+   int   show_label;
+   int   eap_label;
+   
+   Evas_Object *tlist;
+   Evas_Object *radio_name;
+   Evas_Object *radio_comment;
+   Evas_Object *radio_generic;
+};
+
+/* Protos */
+static void *_create_data(E_Config_Dialog *cfd);
+static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
+static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata);
+static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data 
*cfdata);
+static void _cb_add(void *data, void *data2);
+static void _cb_del(void *data, void *data2);
+static void _cb_entry_ok(char *text, void *data);
+static void _cb_confirm_dialog_yes(void *data);
+static void _load_tlist(E_Config_Dialog_Data *cfdata);
+static void _show_label_cb_change(void *data, Evas_Object *obj);
+
+void 
+_config_ibar_module(Config_Item *ci)
+{
+   E_Config_Dialog *cfd;
+   E_Config_Dialog_View *v;
+
+   v = E_NEW(E_Config_Dialog_View, 1);
+
+   /* Dialog Methods */
+   v->create_cfdata = _create_data;
+   v->free_cfdata = _free_data;
+   v->basic.apply_cfdata = _basic_apply_data;
+   v->basic.create_widgets = _basic_create_widgets;
+   v->advanced.apply_cfdata = NULL;
+   v->advanced.create_widgets = NULL;
+   
+   /* Create The Dialog */
+   cfd = e_config_dialog_new(e_container_current_get(e_manager_current_get()),
+                            _("IBar Configuration"), NULL, 0, v, ci);
+   ibar_config->config_dialog = cfd;
+}
+
+static void 
+_fill_data(Config_Item *ci, E_Config_Dialog_Data *cfdata)
+{
+   if (ci->dir)
+     cfdata->dir = strdup(ci->dir);
+   else
+     cfdata->dir = strdup("");
+   cfdata->show_label = ci->show_label;
+   cfdata->eap_label = ci->eap_label;
+}
+
+static void *
+_create_data(E_Config_Dialog *cfd)
+{
+   E_Config_Dialog_Data *cfdata;
+   Config_Item *ci;
+   
+   ci = cfd->data;
+   cfdata = E_NEW(E_Config_Dialog_Data, 1);
+   _fill_data(ci, cfdata);
+   return cfdata;
+}
+
+static void 
+_free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
+{
+   if (cfdata->dir) free(cfdata->dir);
+   ibar_config->config_dialog = NULL;
+   free(cfdata);
+}
+
+static Evas_Object *
+_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data 
*cfdata)
+{
+   Evas_Object *o, *of, *ol, *ob, *ot;
+   E_Radio_Group *rg;
+   
+   o = e_widget_list_add(evas, 0, 0);
+   
+   of = e_widget_frametable_add(evas, _("Selected Bar Source"), 0);
+   ol = e_widget_tlist_add(evas, &(cfdata->dir));
+   cfdata->tlist = ol;
+   _load_tlist(cfdata);
+   e_widget_min_size_set(ol, 140, 140);
+//   e_widget_framelist_object_append(of, ol);
+   
+   e_widget_frametable_object_append(of, ol, 0, 0, 1, 2, 1, 1, 1, 0);
+   
+   ot = e_widget_table_add(evas, 0);
+   ob = e_widget_button_add(evas, _("Add"), "widget/add", _cb_add, cfdata, 
NULL);
+   e_widget_table_object_append(ot, ob, 0, 0, 1, 1, 1, 1, 1, 0);
+   ob = e_widget_button_add(evas, _("Delete"), "widget/del", _cb_del, cfdata, 
NULL);
+   e_widget_table_object_append(ot, ob, 0, 1, 1, 1, 1, 1, 1, 0);
+   e_widget_frametable_object_append(of, ot, 1, 0, 1, 1, 1, 1, 1, 0);
+   e_widget_list_object_append(o, of, 1, 1, 0.5);
+   
+   of = e_widget_framelist_add(evas, _("Icon Labels"), 0);
+   ob = e_widget_check_add(evas, _("Show Icon Label"), &(cfdata->show_label));
+   e_widget_on_change_hook_set(ob, _show_label_cb_change, cfdata);
+   e_widget_framelist_object_append(of, ob);  
+   
+   rg = e_widget_radio_group_new(&(cfdata->eap_label));
+
+   cfdata->radio_name = e_widget_radio_add(evas, _("Display Eap Name"), 0, rg);
+   e_widget_framelist_object_append(of, cfdata->radio_name);
+   if (!cfdata->show_label) e_widget_disabled_set(cfdata->radio_name, 1);
+
+   cfdata->radio_comment = e_widget_radio_add(evas, _("Display Eap Comment"), 
1, rg);
+   e_widget_framelist_object_append(of, cfdata->radio_comment);
+   if (!cfdata->show_label) e_widget_disabled_set(cfdata->radio_comment, 1);
+   
+   cfdata->radio_generic = e_widget_radio_add(evas, _("Display Eap Generic"), 
2, rg);
+   e_widget_framelist_object_append(of, cfdata->radio_generic);
+   if (!cfdata->show_label) e_widget_disabled_set(cfdata->radio_generic, 1);
+   
+   e_widget_list_object_append(o, of, 1, 1, 0.5);
+
+   return o;
+}
+
+static int 
+_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
+{
+   Config_Item *ci;
+   
+   ci = cfd->data;
+   if (ci->dir) evas_stringshare_del(ci->dir);
+   ci->dir = NULL;
+   if (cfdata->dir) ci->dir = evas_stringshare_add(cfdata->dir);
+   ci->show_label = cfdata->show_label;
+   ci->eap_label = cfdata->eap_label;
+   _ibar_config_update();
+   e_config_save_queue();
+   return 1;
+}
+
+static void 
+_cb_add(void *data, void *data2) 
+{
+   E_Config_Dialog_Data *cfdata;
+   
+   cfdata = data;
+   e_entry_dialog_show(_("Create new ibar source"), "enlightenment/e",
+                      _("Enter a name for this new source"), NULL, NULL,
+                      _cb_entry_ok, NULL, cfdata);
+}
+
+static void 
+_cb_del(void *data, void *data2) 
+{
+   char buf[4096];
+   E_Config_Dialog_Data *cfdata;
+   
+   cfdata = data;
+   snprintf(buf, sizeof(buf), _("You requested to delete \"%s\".<br>"
+                               "<br>"
+                               "Are you sure you want to delete this bar 
source?"),
+           cfdata->dir);
+   
+   e_confirm_dialog_show(_("Are you sure you want to delete this bar source?"),
+                        "enlightenment/exit", buf, NULL, NULL, 
_cb_confirm_dialog_yes, NULL, cfdata, NULL);
+}
+
+static void
+_cb_entry_ok(char *text, void *data) 
+{
+   char buf[4096];
+   char tmp[4096];
+   FILE *f;
+   
+   snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s", 
+           e_user_homedir_get(), text);
+
+   if (!ecore_file_exists(buf)) 
+     {
+       ecore_file_mkdir(buf);
+       snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s/.order", 
+                e_user_homedir_get(), text);
+       f = fopen(buf, "w");
+       if (f) 
+         {
+            /* Populate this .order file with some defaults */
+            snprintf(tmp, sizeof(tmp), "xterm.eap\n" "sylpheed.eap\n" 
+                     "firefox.eap\n" "openoffice.eap\n" "xchat.eap\n"
+                     "gimp.eap\n" "xmms.eap\n");
+            fwrite(tmp, sizeof(char), strlen(tmp), f);
+            fclose(f);
+         }
+     }
+   
+   _load_tlist(data);
+}
+
+static void
+_cb_confirm_dialog_yes(void *data) 
+{
+   E_Config_Dialog_Data *cfdata;
+   char buf[4096];
+   
+   cfdata = data;
+   snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s", 
e_user_homedir_get(), cfdata->dir);
+   if (ecore_file_is_dir(buf))
+     ecore_file_recursive_rm(buf);
+   
+   _load_tlist(cfdata);
+}
+
+static void 
+_load_tlist(E_Config_Dialog_Data *cfdata) 
+{
+   Ecore_List *dirs;
+   char *home, buf[4096], *file;
+   int selnum = -1;
+
+   e_widget_tlist_clear(cfdata->tlist);
+   
+   home = e_user_homedir_get();
+   snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar", home);
+   dirs = ecore_file_ls(buf);
+   
+   if (dirs)
+     {
+       int i;
+       
+       i = 0;
+       while ((file = ecore_list_next(dirs)))
+         {
+            if (file[0] == '.') continue;
+            snprintf(buf, sizeof(buf), "%s/.e/e/applications/bar/%s", home, 
file);
+            if (ecore_file_is_dir(buf))
+              {
+                 e_widget_tlist_append(cfdata->tlist, file, NULL, NULL, file);
+                 if ((cfdata->dir) && (!strcmp(cfdata->dir, file)))
+                   selnum = i;
+                 i++;
+              }
+         }
+       ecore_list_destroy(dirs);
+     }
+   free(home);
+   e_widget_tlist_go(cfdata->tlist);
+   if (selnum >= 0)
+     e_widget_tlist_selected_set(cfdata->tlist, selnum);   
+}
+
+static void 
+_show_label_cb_change(void *data, Evas_Object *obj) 
+{
+   E_Config_Dialog_Data *cfdata;
+   
+   cfdata = data;
+   if (!cfdata) return;
+   
+   e_widget_disabled_set(cfdata->radio_name, !cfdata->show_label);
+   e_widget_disabled_set(cfdata->radio_comment, !cfdata->show_label);
+   e_widget_disabled_set(cfdata->radio_generic, !cfdata->show_label);   
+}




_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to