Enlightenment CVS committal Author : onefang Project : e_modules Module : emu
Dir : e_modules/emu/src/modules/emu Modified Files: Makefile.am e_mod_main.c e_mod_main.h Added Files: e_mod_config.c e_mod_config.h Log Message: Add a config dialog, just like everybody else. It's just a copy of the ibar for now. I'll change it to suit, and remove the excess stuff from the menu later. It also currently doesn't actually do anything. =================================================================== RCS file: /cvsroot/enlightenment/e_modules/emu/src/modules/emu/Makefile.am,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- Makefile.am 27 Jan 2006 00:55:36 -0000 1.1 +++ Makefile.am 27 Jan 2006 03:43:32 -0000 1.2 @@ -30,7 +30,9 @@ pkgdir = $(libdir)/enlightenment/modules/$(MODULE)/$(MODULE_ARCH) pkg_LTLIBRARIES = module.la module_la_SOURCES = e_mod_main.c \ - e_mod_main.h + e_mod_main.h \ + e_mod_config.c \ + e_mod_config.h module_la_LIBADD = @e_libs@ module_la_LDFLAGS = -module -avoid-version module_la_DEPENDENCIES = $(top_builddir)/config.h =================================================================== RCS file: /cvsroot/enlightenment/e_modules/emu/src/modules/emu/e_mod_main.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_mod_main.c 27 Jan 2006 00:55:36 -0000 1.1 +++ e_mod_main.c 27 Jan 2006 03:43:32 -0000 1.2 @@ -65,6 +65,7 @@ static Evas_Bool _emu_menus_hash_cb_free(Evas_Hash *hash, const char *key, void *data, void *fdata); static void _emu_menu_cb_free(void *obj); +static void _emu_cb_menu_configure(void *data, E_Menu *m, E_Menu_Item *mi); /* This is temporary until there is support in E_Gadget for third party modules. */ void @@ -664,6 +665,10 @@ E_Menu_Item *mi; mi = e_menu_item_new(menu); + e_menu_item_label_set(mi, _("Configuration")); + e_menu_item_callback_set(mi, _emu_cb_menu_configure, face); + + mi = e_menu_item_new(menu); e_menu_item_separator_set(mi, 1); mi = e_menu_item_new(menu); @@ -672,9 +677,6 @@ e_menu_item_label_set(mi, _("Remove face")); mi = e_menu_item_new(menu); - e_menu_item_separator_set(mi, 1); - - mi = e_menu_item_new(menu); e_menu_item_label_set(mi, _("Add row")); mi = e_menu_item_new(menu); e_menu_item_label_set(mi, _("Remove row")); @@ -712,6 +714,17 @@ if (0) e_menu_item_toggle_set(mi, 1); } +static void +_emu_cb_menu_configure(void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Gadget_Face *face; + Emu_Face *emu_face; + + face = data; + if (!face) return; + emu_face = face->data; + _config_ibar_module(face->con, emu_face->emu); +} /** * Construct a menu. @@ -1256,3 +1269,14 @@ E_FREE(menu); } } + + +void +_emu_cb_config_updated(void *data) +{ + /* Call Any Needed Funcs To Let Module Handle Config Changes */ +// _ibar_bar_cb_follower(data); +// _ibar_bar_cb_width_auto(data); +// _ibar_bar_cb_iconsize_change(data); +} + =================================================================== RCS file: /cvsroot/enlightenment/e_modules/emu/src/modules/emu/e_mod_main.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_mod_main.h 27 Jan 2006 00:55:36 -0000 1.1 +++ e_mod_main.h 27 Jan 2006 03:43:32 -0000 1.2 @@ -2,6 +2,29 @@ #define E_MOD_MAIN_H +typedef struct _Config Config; +typedef struct _Config_Emu Config_Emu; + +#define EMU_WIDTH_AUTO -1 +#define EMU_WIDTH_FIXED -2 + +struct _Config +{ + char *appdir; + int follower; + double follow_speed; + double autoscroll_speed; + int iconsize; + int width; + int allow_overlap; + Evas_List *emus; +}; + +struct _Config_Emu +{ + unsigned char enabled; +}; + struct _Menu_Item_Data { E_Menu_Item *item; @@ -42,6 +65,12 @@ E_Gadget *gad; Ecore_Event_Handler *del; + +// Evas_List *bars; + E_Menu *config_menu; + + Config *conf; + E_Config_Dialog *config_dialog; }; typedef struct _Emu_Face Emu_Face; @@ -71,4 +100,6 @@ EAPI int e_modapi_info (E_Module *m); EAPI int e_modapi_about (E_Module *m); +void _emu_cb_config_updated(void *data); + #endif ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs