From: Enlightenment C. <no...@cv...> - 2007-04-11 21:42:22
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_config.c e_config.h e_int_config_clientlist.c e_int_menus.c Log Message: Add checkbox to allow users to enable or disable the clientlist caption length limit. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_config.c,v retrieving revision 1.237 retrieving revision 1.238 diff -u -3 -r1.237 -r1.238 --- e_config.c 11 Apr 2007 15:37:04 -0000 1.237 +++ e_config.c 11 Apr 2007 21:40:53 -0000 1.238 @@ -518,6 +518,7 @@ E_CONFIG_VAL(D, T, clientlist_sort_by, INT); E_CONFIG_VAL(D, T, clientlist_separate_iconified_apps, INT); E_CONFIG_VAL(D, T, clientlist_warp_to_iconified_desktop, INT); + E_CONFIG_VAL(D, T, clientlist_limit_caption_len, INT); E_CONFIG_VAL(D, T, clientlist_max_caption_len, INT); E_CONFIG_VAL(D, T, mouse_accel_numerator, INT); @@ -1378,6 +1379,10 @@ e_config->thumb_nice = 0; IFCFGEND; + IFCFG(0x0115); + e_config->clientlist_limit_caption_len = 0; + IFCFGEND; + e_config->config_version = E_CONFIG_FILE_VERSION; #if 0 /* example of new config */ @@ -1497,7 +1502,8 @@ E_CONFIG_LIMIT(e_config->clientlist_sort_by, 0, 3); E_CONFIG_LIMIT(e_config->clientlist_separate_iconified_apps, 0, 2); E_CONFIG_LIMIT(e_config->clientlist_warp_to_iconified_desktop, 0, 1); - E_CONFIG_LIMIT(e_config->clientlist_max_caption_len, 0, E_CLIENTLIST_MAX_CAPTION_LEN); + E_CONFIG_LIMIT(e_config->clientlist_limit_caption_len, 0, 1); + E_CONFIG_LIMIT(e_config->clientlist_max_caption_len, 2, E_CLIENTLIST_MAX_CAPTION_LEN); E_CONFIG_LIMIT(e_config->mouse_accel_numerator, 1, 10); E_CONFIG_LIMIT(e_config->mouse_accel_denominator, 1, 10); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_config.h,v retrieving revision 1.151 retrieving revision 1.152 diff -u -3 -r1.151 -r1.152 --- e_config.h 11 Apr 2007 15:37:04 -0000 1.151 +++ e_config.h 11 Apr 2007 21:40:53 -0000 1.152 @@ -54,7 +54,7 @@ /* increment this whenever a new set of config values are added but the users * config doesn't need to be wiped - simply new values need to be put in */ -#define E_CONFIG_FILE_GENERATION 0x0114 +#define E_CONFIG_FILE_GENERATION 0x0115 #define E_CONFIG_FILE_VERSION ((E_CONFIG_FILE_EPOCH << 16) | E_CONFIG_FILE_GENERATION) #define E_EVAS_ENGINE_DEFAULT 0 @@ -256,7 +256,8 @@ int clientlist_sort_by; // GUI int clientlist_separate_iconified_apps; // GUI int clientlist_warp_to_iconified_desktop; // GUI - int clientlist_max_caption_len; + int clientlist_limit_caption_len; // GUI + int clientlist_max_caption_len; // GUI int mouse_accel_numerator; // GUI int mouse_accel_denominator; // GUI =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_clientlist.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- e_int_config_clientlist.c 4 Apr 2007 13:25:54 -0000 1.6 +++ e_int_config_clientlist.c 11 Apr 2007 21:40:53 -0000 1.7 @@ -17,6 +17,7 @@ int sort_by; int separate_iconified_apps; int warp_to_iconified_desktop; + int limit_caption_len; int max_caption_len; }; @@ -51,6 +52,7 @@ cfdata->sort_by = e_config->clientlist_sort_by; cfdata->separate_iconified_apps = e_config->clientlist_separate_iconified_apps; cfdata->warp_to_iconified_desktop = e_config->clientlist_warp_to_iconified_desktop; + cfdata->limit_caption_len = e_config->clientlist_limit_caption_len; cfdata->max_caption_len = e_config->clientlist_max_caption_len; } @@ -79,6 +81,7 @@ e_config->clientlist_sort_by = cfdata->sort_by; e_config->clientlist_separate_iconified_apps = cfdata->separate_iconified_apps; e_config->clientlist_warp_to_iconified_desktop = cfdata->warp_to_iconified_desktop; + e_config->clientlist_limit_caption_len = cfdata->limit_caption_len; e_config->clientlist_max_caption_len = cfdata->max_caption_len; e_config_save_queue(); return 1; @@ -140,8 +143,10 @@ e_widget_framelist_object_append(of, ob); e_widget_table_object_append(ot, of, 1, 1, 1, 1, 1, 1, 1, 1); - of = e_widget_framelist_add(evas, _("Maximum Caption Length"), 0); - ob = e_widget_slider_add(evas, 1, 0, _("%1.0f Chars"), 0.0, E_CLIENTLIST_MAX_CAPTION_LEN, 2.0, 0, NULL, &(cfdata->max_caption_len), 200); + of = e_widget_framelist_add(evas, _("Menu Item Captions"), 0); + ob = e_widget_check_add(evas, _("Limit caption length"), &(cfdata->limit_caption_len)); + e_widget_framelist_object_append(of, ob); + ob = e_widget_slider_add(evas, 1, 0, _("%1.0f Chars"), 2.0, E_CLIENTLIST_MAX_CAPTION_LEN, 2.0, 0, NULL, &(cfdata->max_caption_len), 200); e_widget_framelist_object_append(of, ob); e_widget_table_object_append(ot, of, 0, 2, 2, 1, 1, 1, 1, 0); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_menus.c,v retrieving revision 1.212 retrieving revision 1.213 diff -u -3 -r1.212 -r1.213 --- e_int_menus.c 6 Apr 2007 09:55:16 -0000 1.212 +++ e_int_menus.c 11 Apr 2007 21:40:53 -0000 1.213 @@ -1261,7 +1261,7 @@ int max_len; max_len = e_config->clientlist_max_caption_len; - if ((max_len != 0) && (strlen(title) > max_len)) + if ((e_config->clientlist_limit_caption_len) && (strlen(title) > max_len)) { char *abbv; const char *left, *right; |
From: Enlightenment C. <no...@cv...> - 2007-04-18 16:43:44
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_eap_editor.c Log Message: Add textbox to show (read-only) the .desktop file we are creating/matched to. Useful because it is less than obvious under certain circumstances. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_eap_editor.c,v retrieving revision 1.79 retrieving revision 1.80 diff -u -3 -r1.79 -r1.80 --- e_eap_editor.c 15 Apr 2007 17:28:23 -0000 1.79 +++ e_eap_editor.c 18 Apr 2007 16:42:57 -0000 1.80 @@ -470,6 +470,7 @@ Efreet_Desktop *desktop; Evas_Object *ol, *o; Evas_Object *entry; + Evas_Object *fn; editor = cfdata->editor; desktop = editor->desktop; @@ -517,6 +518,15 @@ 0, 2, 2, 1, 1, 1, 1, 1); e_widget_table_object_append(ol, o, 1, 1, 1, 1, 1 ,1, 1, 1); + + o = e_widget_frametable_add(evas, _("Desktop file"), 0); + e_widget_frametable_object_append(o, e_widget_label_add(evas, _("Filename")), + 0, 0, 1, 1, 0, 0, 0, 0); + fn = e_widget_entry_add(evas, &(cfdata->editor->desktop->orig_path)); + e_widget_frametable_object_append(o, fn, 1, 0, 2, 1, 1, 1, 1, 1); + e_widget_disabled_set(fn, 1); + e_widget_table_object_append(ol, o, 0, 2, 2, 1, 1 ,1, 1, 1); + return ol; } |
From: Enlightenment C. <no...@cv...> - 2007-04-19 16:57:50
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/pager Modified Files: e_mod_config.c e_mod_main.c Log Message: Tweak GUI. Fix users ability to disable the slide/drag buttons. =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/pager/e_mod_config.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -3 -r1.29 -r1.30 --- e_mod_config.c 4 Apr 2007 09:55:39 -0000 1.29 +++ e_mod_config.c 19 Apr 2007 16:57:47 -0000 1.30 @@ -136,12 +136,28 @@ Evas_Object *o, *of, *of2, *ob; o = e_widget_list_add(evas, 0, 0); - of = e_widget_framelist_add(evas, _("Resistance to Dragging Windows:"), 0); + + of = e_widget_frametable_add(evas, _("Pager Settings"), 0); + ob = e_widget_check_add(evas, _("Flip desktop on mouse wheel"), &(cfdata->flip_desk)); + e_widget_frametable_object_append(of, ob, 1, 1, 1, 1, 1, 1, 0, 0); + ob = e_widget_label_add(evas, _("Select and Slide button")); + e_widget_frametable_object_append(of, ob, 1, 2, 1, 1, 1, 1, 1, 1); + ob = e_widget_label_add(evas, _("Drag and Drop button (Keeps rel. loc.)")); + e_widget_frametable_object_append(of, ob, 1, 3, 1, 1, 1, 1, 1, 1); + ob = e_widget_button_add(evas, _("Click to set"), NULL, _grab_wnd_show, (void *)GRAB_BUTTON_DRAG, cfdata); + e_widget_frametable_object_append(of, ob, 2, 2, 1, 1, 1, 1, 0, 0); + cfdata->gui.o_btn1 = ob; + ob = e_widget_button_add(evas, _("Click to set"), NULL, _grab_wnd_show, (void *)GRAB_BUTTON_NOPLACE, cfdata); + e_widget_frametable_object_append(of, ob, 2, 3, 1, 1, 1, 1, 0, 0); + cfdata->gui.o_btn2 = ob; + _advanced_update_button_label(cfdata); + ob = e_widget_label_add(evas, _("Resistance to dragging")); + e_widget_frametable_object_append(of, ob, 1, 4, 1, 1, 1, 1, 0, 0); ob = e_widget_slider_add(evas, 1, 0, _("%.0f px"), 0.0, 10.0, 1.0, 0, NULL, &(cfdata->drag_resist), 200); - e_widget_framelist_object_append(of, ob); + e_widget_frametable_object_append(of, ob, 1, 5, 2, 1, 1, 1, 0, 0); e_widget_list_object_append(o, of, 1, 1, 0.5); - of = e_widget_framelist_add(evas, _("Popup Settings"), 0); + of = e_widget_framelist_add(evas, _("Pager Popup Settings"), 0); ob = e_widget_check_add(evas, _("Show Popup on desktop change"), &(cfdata->show_popup)); e_widget_framelist_object_append(of, ob); ob = e_widget_label_add(evas, _("Popup Speed")); @@ -165,25 +181,6 @@ e_widget_framelist_object_append(of, of2); e_widget_list_object_append(o, of, 1, 1, 0.5); - - of = e_widget_frametable_add(evas, _("Buttons Settings"), 0); - ob = e_widget_label_add(evas, _("Drag and select button")); - e_widget_frametable_object_append(of, ob, 1, 1, 1, 1, 1, 1, 1, 1); - ob = e_widget_label_add(evas, _("Drag no place button")); - e_widget_frametable_object_append(of, ob, 1, 2, 1, 1, 1, 1, 1, 1); - ob = e_widget_button_add(evas, _("Click to set"), NULL, _grab_wnd_show, (void *)GRAB_BUTTON_DRAG, cfdata); - e_widget_frametable_object_append(of, ob, 2, 1, 1, 1, 1, 1, 0, 0); - cfdata->gui.o_btn1 = ob; - ob = e_widget_button_add(evas, _("Click to set"), NULL, _grab_wnd_show, (void *)GRAB_BUTTON_NOPLACE, cfdata); - e_widget_frametable_object_append(of, ob, 2, 2, 1, 1, 1, 1, 0, 0); - cfdata->gui.o_btn2 = ob; - _advanced_update_button_label(cfdata); - e_widget_list_object_append(o, of, 1, 1, 0.5); - - of = e_widget_framelist_add(evas, _("Wheel callback"), 0); - ob = e_widget_check_add(evas, _("Flip desktop on mouse wheel"), &(cfdata->flip_desk)); - e_widget_framelist_object_append(of, ob); - e_widget_list_object_append(o, of, 1, 1, 0.5); return o; } =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/pager/e_mod_main.c,v retrieving revision 1.210 retrieving revision 1.211 diff -u -3 -r1.210 -r1.211 --- e_mod_main.c 4 Apr 2007 09:55:39 -0000 1.210 +++ e_mod_main.c 19 Apr 2007 16:57:47 -0000 1.211 @@ -1831,8 +1831,8 @@ E_CONFIG_LIMIT(pager_config->resize, PAGER_RESIZE_HORZ, PAGER_RESIZE_BOTH); E_CONFIG_LIMIT(pager_config->flip_desk, 0, 1); E_CONFIG_LIMIT(pager_config->scale, 0, 1); - E_CONFIG_LIMIT(pager_config->btn_drag, 1, 32); - E_CONFIG_LIMIT(pager_config->btn_noplace, 1, 32); + E_CONFIG_LIMIT(pager_config->btn_drag, 0, 32); + E_CONFIG_LIMIT(pager_config->btn_noplace, 0, 32); pager_config->handlers = evas_list_append (pager_config->handlers, ecore_event_handler_add |
From: Enlightenment C. <no...@cv...> - 2007-04-22 04:45:13
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_exebuf.c Log Message: Make is a little more obvious how to run something in a terminal =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_exebuf.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- e_int_config_exebuf.c 15 Jan 2007 17:19:44 -0000 1.12 +++ e_int_config_exebuf.c 22 Apr 2007 04:45:11 -0000 1.13 @@ -186,7 +186,7 @@ of = e_widget_framelist_add(evas, _("Terminal Settings"), 0); e_widget_framelist_content_align_set(of, 0.5, 0.0); - ob = e_widget_label_add(evas, _("Terminal Command")); + ob = e_widget_label_add(evas, _("Terminal Command (CTRL+RETURN to utilize)")); e_widget_framelist_object_append(of, ob); ob = e_widget_entry_add(evas, &(cfdata->term_cmd)); e_widget_framelist_object_append(of, ob); |
From: Enlightenment C. <no...@cv...> - 2007-04-22 15:59:17
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_menus.c Log Message: Hide the "Favorite Applications" menu item if there is no favorite.menu file. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_menus.c,v retrieving revision 1.213 retrieving revision 1.214 diff -u -3 -r1.213 -r1.214 --- e_int_menus.c 11 Apr 2007 21:40:53 -0000 1.213 +++ e_int_menus.c 22 Apr 2007 15:58:58 -0000 1.214 @@ -91,16 +91,19 @@ dat->menu = m; e_object_data_set(E_OBJECT(m), dat); e_object_del_attach_func_set(E_OBJECT(m), _e_int_menus_main_del_hook); - + e_menu_category_set(m, "main"); subm = e_int_menus_favorite_apps_new(); - dat->apps = subm; - mi = e_menu_item_new(m); + if (subm) + { + dat->apps = subm; + mi = e_menu_item_new(m); - e_menu_item_label_set(mi, _("Favorite Applications")); - e_util_menu_item_edje_icon_set(mi, "enlightenment/favorites"); - e_menu_item_submenu_set(mi, subm); + e_menu_item_label_set(mi, _("Favorite Applications")); + e_util_menu_item_edje_icon_set(mi, "enlightenment/favorites"); + e_menu_item_submenu_set(mi, subm); + } subm = e_int_menus_all_apps_new(); dat->all_apps = subm; @@ -108,7 +111,7 @@ e_menu_item_label_set(mi, _("Applications")); e_util_menu_item_edje_icon_set(mi, "enlightenment/applications"); e_menu_item_submenu_set(mi, subm); - + #ifdef ENABLE_FILES mi = e_menu_item_new(m); e_menu_item_label_set(mi, _("Files")); @@ -255,13 +258,15 @@ EAPI E_Menu * e_int_menus_favorite_apps_new(void) { - E_Menu *m; + E_Menu *m = NULL; char buf[4096]; const char *homedir; homedir = e_user_homedir_get(); snprintf(buf, sizeof(buf), "%s/.e/e/applications/menu/favorite.menu", homedir); - m = e_int_menus_apps_new(buf); + + if (ecore_file_exists(buf)) + m = e_int_menus_apps_new(buf); return m; } @@ -374,7 +379,7 @@ dat = e_object_data_get(E_OBJECT(obj)); if (dat) { - e_object_del(E_OBJECT(dat->apps)); + if (dat->apps) e_object_del(E_OBJECT(dat->apps)); e_object_del(E_OBJECT(dat->all_apps)); e_object_del(E_OBJECT(dat->desktops)); e_object_del(E_OBJECT(dat->clients)); |
From: Enlightenment C. <no...@cv...> - 2007-04-28 14:52:34
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_actions.c Log Message: Allow windows being pushed around to be pushed over the space once occupied by a presently iconic window =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_actions.c,v retrieving revision 1.99 retrieving revision 1.100 diff -u -3 -r1.99 -r1.100 --- e_actions.c 12 Apr 2007 19:09:45 -0000 1.99 +++ e_actions.c 28 Apr 2007 14:52:29 -0000 1.100 @@ -860,7 +860,7 @@ while (cur != NULL) { - if ((bd->desk == cur->desk) && (bd != cur)) + if ((bd->desk == cur->desk) && (bd != cur) && (!cur->iconic)) { if ((dir == E_DIRECTION_LEFT) && (cur->x + cur->w < bd->x) |
From: Enlightenment C. <no...@cv...> - 2007-04-29 03:24:19
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: Setting max|=E_MAXIMIZE_BOTH after resizing it causes the hints to disagree with the geometry. This was causing max_vert or max_horz windows to come up max_both on a restart of E. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.588 retrieving revision 1.589 diff -u -3 -r1.588 -r1.589 --- e_border.c 17 Apr 2007 03:07:16 -0000 1.588 +++ e_border.c 29 Apr 2007 03:24:16 -0000 1.589 @@ -1767,7 +1767,6 @@ else if ((max & E_MAXIMIZE_DIRECTION) == E_MAXIMIZE_HORIZONTAL) e_border_move_resize(bd, x1, bd->y, w, bd->h); - max |= E_MAXIMIZE_BOTH; break; case E_MAXIMIZE_SMART: case E_MAXIMIZE_EXPAND: |
From: Enlightenment C. <no...@cv...> - 2007-05-20 05:20:09
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/battery Modified Files: e_mod_config.c e_mod_main.c e_mod_main.h Log Message: Allow module to fire its alarm given a percentage remaining threshold. =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/battery/e_mod_config.c,v retrieving revision 1.22 retrieving revision 1.23 diff -u -3 -r1.22 -r1.23 --- e_mod_config.c 24 Mar 2007 23:12:22 -0000 1.22 +++ e_mod_config.c 20 May 2007 05:20:04 -0000 1.23 @@ -6,6 +6,7 @@ int show_alert; double poll_time; int alarm_time; + int alarm_percent; }; /* Protos */ @@ -45,8 +46,9 @@ { if (!battery_config) return; cfdata->alarm_time = battery_config->alarm; + cfdata->alarm_percent = battery_config->alarm_p; cfdata->poll_time = battery_config->poll_time; - if (cfdata->alarm_time > 0) + if (cfdata->alarm_time > 0 || cfdata->alarm_percent > 0) cfdata->show_alert = 1; else cfdata->show_alert = 0; @@ -87,10 +89,16 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { if (!battery_config) return 0; - if (cfdata->show_alert) + if (cfdata->show_alert) + { battery_config->alarm = cfdata->alarm_time; - else + battery_config->alarm_p = cfdata->alarm_percent; + } + else + { battery_config->alarm = 0; + battery_config->alarm_p = 0; + } _battery_config_updated(); e_config_save_queue(); return 1; @@ -108,16 +116,19 @@ ob = e_widget_label_add(evas, _("Check battery every:")); e_widget_frametable_object_append(of, ob, 0, 0, 1, 1, 1, 0, 1, 0); - ob = e_widget_slider_add(evas, 1, 0, _("%1.1f seconds"), 0.5, 1000.0, 0.5, 0, &(cfdata->poll_time), NULL, 200); + ob = e_widget_slider_add(evas, 1, 0, _("%1.1f seconds"), 0.5, 900.0, 0.5, 0, &(cfdata->poll_time), NULL, 200); e_widget_frametable_object_append(of, ob, 0, 1, 1, 1, 1, 0, 1, 0); ob = e_widget_check_add(evas, _("Show alert when battery is low"), &(cfdata->show_alert)); - e_widget_frametable_object_append(of, ob, 0, 3, 1, 1, 1, 1, 1, 0); + e_widget_frametable_object_append(of, ob, 0, 2, 1, 1, 1, 1, 1, 0); ob = e_widget_label_add(evas, _("Alert when battery is down to:")); - e_widget_frametable_object_append(of, ob, 0, 4, 1, 1, 1, 0, 1, 1); + e_widget_frametable_object_append(of, ob, 0, 3, 1, 1, 1, 0, 1, 1); ob = e_widget_slider_add(evas, 1, 0, _("%1.0f minutes"), 1, 60, 1, 0, NULL, &(cfdata->alarm_time), 200); + e_widget_frametable_object_append(of, ob, 0, 4, 1, 1, 1, 0, 1, 0); + + ob = e_widget_slider_add(evas, 1, 0, _("%1.0f percent"), 1, 100, 1, 0, NULL, &(cfdata->alarm_percent), 200); e_widget_frametable_object_append(of, ob, 0, 5, 1, 1, 1, 0, 1, 0); e_widget_list_object_append(o, of, 1, 1, 0.5); @@ -129,10 +140,16 @@ { if (!battery_config) return 0; battery_config->poll_time = cfdata->poll_time; - if (cfdata->show_alert) + if (cfdata->show_alert) + { battery_config->alarm = cfdata->alarm_time; + battery_config->alarm_p = cfdata->alarm_percent; + } else + { battery_config->alarm = 0; + battery_config->alarm_p = 0; + } _battery_config_updated(); e_config_save_queue(); return 1; =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/battery/e_mod_main.c,v retrieving revision 1.96 retrieving revision 1.97 diff -u -3 -r1.96 -r1.97 --- e_mod_main.c 25 Mar 2007 22:46:20 -0000 1.96 +++ e_mod_main.c 20 May 2007 05:20:04 -0000 1.97 @@ -559,6 +559,8 @@ { if (((hours * 60) + minutes) <= battery_config->alarm) stat->alarm = 1; + if (bat_val <= battery_config->alarm_p) + stat->alarm = 1; } } if (level_unknown) @@ -684,6 +686,8 @@ { if (((hours * 60) + minutes) <= battery_config->alarm) stat->alarm = 1; + if (bat_val <= battery_config->alarm_p) + stat->alarm = 1; } } @@ -859,11 +863,21 @@ else if ((charging) || (discharging)) { stat->has_battery = 1; - if (charging) - { + stat->level = (double)charge / (double)max_charge; + if (stat->level > 1.0) stat->level = 1.0; + tmp = (double)max_charge / 100; + tmp = (double)charge / tmp; + stat->level = (double)tmp / 100; + + snprintf(buf, sizeof(buf), "%.0f%%", tmp); + stat->reading = strdup(buf); + snprintf(buf, sizeof(buf), "%i:%02i", hours, minutes); + stat->time = strdup(buf); + if (charging) + { stat->state = BATTERY_STATE_CHARGING; battery_config->alarm_triggered = 0; - } + } else if (discharging) { stat->state = BATTERY_STATE_DISCHARGING; @@ -871,18 +885,10 @@ { if (((hours * 60) + minutes) <= battery_config->alarm) stat->alarm = 1; + if (stat->level <= battery_config->alarm_p) + stat->alarm = 1; } } - stat->level = (double)charge / (double)max_charge; - if (stat->level > 1.0) stat->level = 1.0; - tmp = (double)max_charge / 100; - tmp = (double)charge / tmp; - stat->level = (double)tmp / 100; - - snprintf(buf, sizeof(buf), "%.0f%%", tmp); - stat->reading = strdup(buf); - snprintf(buf, sizeof(buf), "%i:%02i", hours, minutes); - stat->time = strdup(buf); } else { @@ -1027,6 +1033,8 @@ { if (((hours * 60) + minutes) <= battery_config->alarm) stat->alarm = 1; + if (bat_val <= battery_config->alarm_p) + stat->alarm = 1; } } if (level == -1) @@ -1150,6 +1158,8 @@ { if (((hours * 60) + minutes) <= battery_config->alarm) stat->alarm = 1; + if (bat_val <= battery_config->alarm_p) + stat->alarm = 1; } } @@ -1288,6 +1298,8 @@ */ if (currentval <= battery_config->alarm) stat->alarm = 1; + if (stat->level <= battery_config->alarm_p) + stat->alarm = 1; } else { @@ -1397,6 +1409,7 @@ #define D conf_edd E_CONFIG_VAL(D, T, poll_time, DOUBLE); E_CONFIG_VAL(D, T, alarm, INT); + E_CONFIG_VAL(D, T, alarm_p, INT); battery_config = e_config_domain_load("module.battery", conf_edd); if (!battery_config) @@ -1404,9 +1417,11 @@ battery_config = E_NEW(Config, 1); battery_config->poll_time = 30.0; battery_config->alarm = 30; + battery_config->alarm_p = 10; } E_CONFIG_LIMIT(battery_config->poll_time, 0.5, 1000.0); E_CONFIG_LIMIT(battery_config->alarm, 0, 60); + E_CONFIG_LIMIT(battery_config->alarm_p, 0, 100); battery_config->battery_check_mode = CHECK_NONE; battery_config->battery_prev_drain = 1; =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/battery/e_mod_main.h,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- e_mod_main.h 3 Sep 2006 08:51:32 -0000 1.26 +++ e_mod_main.h 20 May 2007 05:20:04 -0000 1.27 @@ -16,7 +16,8 @@ { /* saved * loaded config values */ double poll_time; - int alarm; + int alarm; /* Alarm on minutes remaining */ + int alarm_p; /* Alarm on percentage remaining */ /* just config state */ E_Module *module; E_Config_Dialog *config_dialog; |
From: Enlightenment C. <no...@cv...> - 2007-05-30 05:44:41
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_theme.c Log Message: Add an "Advanced" dialog to the theme config panel, to allow a user to associate individual theme categories with whichever theme they desire. Basically a gui for enlightenment_remote`s caps in this area. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_theme.c,v retrieving revision 1.50 retrieving revision 1.51 diff -u -3 -r1.50 -r1.51 --- e_int_config_theme.c 2 May 2007 18:38:23 -0000 1.50 +++ e_int_config_theme.c 30 May 2007 05:44:38 -0000 1.51 @@ -9,10 +9,15 @@ static void _fill_data (E_Config_Dialog_Data *cfdata); static int _basic_apply_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 _advanced_apply_data (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); +static Evas_Object *_advanced_create_widgets (E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata); +static Evas_List *_get_theme_categories_list(); struct _E_Config_Dialog_Data { E_Config_Dialog *cfd; + + /* Basic */ Evas_Object *o_frame; Evas_Object *o_fm; Evas_Object *o_up_button; @@ -20,8 +25,13 @@ Evas_Object *o_personal; Evas_Object *o_system; int fmdir; - char *theme; + + /* Advanced */ + Evas_Object *o_categories_ilist; + Evas_Object *o_files_ilist; + int personal_file_count; + Evas_List *theme_list; /* Dialog */ E_Win *win_import; @@ -40,6 +50,8 @@ v->free_cfdata = _free_data; v->basic.apply_cfdata = _basic_apply_data; v->basic.create_widgets = _basic_create_widgets; + v->advanced.apply_cfdata = _advanced_apply_data; + v->advanced.create_widgets = _advanced_create_widgets; v->override_auto_apply = 1; cfd = e_config_dialog_new(con, _("Theme Selector"), @@ -306,7 +318,9 @@ } } } - + + cfdata->theme_list = _get_theme_categories_list(); + snprintf(path, sizeof(path), "%s/data/themes", e_prefix_data_get()); if (!strncmp(cfdata->theme, path, strlen(path))) cfdata->fmdir = 1; @@ -330,6 +344,7 @@ if (cfdata->win_import) e_int_config_theme_del(cfdata->win_import); + evas_list_free(cfdata->theme_list); E_FREE(cfdata->theme); E_FREE(cfdata); } @@ -374,8 +389,8 @@ else snprintf(path, sizeof(path), "%s/.e/e/themes", homedir); + cfdata->o_fm = NULL; o = e_fm2_add(evas); - cfdata->o_fm = o; memset(&fmc, 0, sizeof(E_Fm2_Config)); fmc.view.mode = E_FM2_VIEW_MODE_LIST; fmc.view.open_dirs_in_place = 1; @@ -413,6 +428,7 @@ e_fm2_pan_get, e_fm2_pan_max_get, e_fm2_pan_child_size_get); + cfdata->o_fm = o; cfdata->o_frame = of; e_widget_min_size_set(of, 160, 160); e_widget_table_object_append(ol, of, 0, 2, 1, 1, 1, 1, 1, 1); @@ -463,4 +479,580 @@ a = e_action_find("restart"); if ((a) && (a->func.go)) a->func.go(NULL, NULL); return 1; /* Apply was OK */ +} + +/* + * -------------------------------------- + * --- A D V A N C E D S U P P O R T --- + * -------------------------------------- + */ + +static int +_cb_sort(void *data1, void *data2) +{ + const char *d1, *d2; + + d1 = data1; + d2 = data2; + if (!d1) return 1; + if (!d2) return -1; + + return strcmp(d1, d2); +} + +static Evas_List * +_get_theme_categories_list() +{ + Evas_List *themes, *tcl = NULL; + Evas_List *cats = NULL, *g = NULL, *cats2 = NULL; + const char *category; + + /* Setup some default theme categories */ + cats = evas_list_append(cats, strdup("base/theme/about")); + cats = evas_list_append(cats, strdup("base/theme/borders")); + cats = evas_list_append(cats, strdup("base/theme/background")); + cats = evas_list_append(cats, strdup("base/theme/configure")); + cats = evas_list_append(cats, strdup("base/theme/dialog")); + cats = evas_list_append(cats, strdup("base/theme/dnd")); + cats = evas_list_append(cats, strdup("base/theme/error")); + cats = evas_list_append(cats, strdup("base/theme/exebuf")); + cats = evas_list_append(cats, strdup("base/theme/fileman")); + cats = evas_list_append(cats, strdup("base/theme/gadman")); + cats = evas_list_append(cats, strdup("base/theme/icons")); + cats = evas_list_append(cats, strdup("base/theme/menus")); + cats = evas_list_append(cats, strdup("base/theme/modules")); + cats = evas_list_append(cats, strdup("base/theme/modules/pager")); + cats = evas_list_append(cats, strdup("base/theme/modules/ibar")); + cats = evas_list_append(cats, strdup("base/theme/modules/ibox")); + cats = evas_list_append(cats, strdup("base/theme/modules/clock")); + cats = evas_list_append(cats, strdup("base/theme/modules/battery")); + cats = evas_list_append(cats, strdup("base/theme/modules/cpufreq")); + cats = evas_list_append(cats, strdup("base/theme/modules/start")); + cats = evas_list_append(cats, strdup("base/theme/modules/temperature")); + cats = evas_list_append(cats, strdup("base/theme/pointer")); + cats = evas_list_append(cats, strdup("base/theme/shelf")); + cats = evas_list_append(cats, strdup("base/theme/transitions")); + cats = evas_list_append(cats, strdup("base/theme/widgets")); + cats = evas_list_append(cats, strdup("base/theme/winlist")); + + /* + * Get a list of registered themes. + * Add those which are not in the above list + */ + for (g = e_theme_category_list(); g; g = g->next) + { + const char *c; + c = g->data; + if (!c) continue; + + cats2 = cats; + while (cats2) + { + if (!strcmp(c, cats2->data)) + break; + cats2 = cats2->next; + } + if (!cats2) + cats = evas_list_append(cats, strdup(c)); + } + cats = evas_list_sort(cats, -1, _cb_sort); + + while (cats) + { + E_Config_Theme *theme, *newtheme = NULL; + + category = cats->data; + /* Not interested in adding "base" and "base/theme" */ + if (strcmp(category, "base") && strcmp(category, "base/theme")) + { + newtheme = (E_Config_Theme *)malloc(sizeof(E_Config_Theme)); + if (!newtheme) break; + newtheme->category = strdup(category); + newtheme->file = NULL; + + for (themes = e_config->themes; themes; themes = themes->next) + { + theme = themes->data; + if (!strcmp(category + 5, theme->category)) + { + newtheme->file = strdup(theme->file); + } + } + tcl = evas_list_append(tcl, newtheme); + } + cats = cats->next; + } + cats = evas_list_free(cats); + + return tcl; +} + +static void +_cb_adv_categories_change(void *data, Evas_Object *obj) +{ + E_Config_Dialog_Data *cfdata; + const char *label = NULL; + const char *file = NULL; + char category[256]; + Evas_List *themes = NULL, *l; + Evas_Object *ic = NULL; + int n; + + cfdata = data; + if (!cfdata) return; + + label = e_widget_ilist_selected_label_get(cfdata->o_categories_ilist); + if (!label) return; + + n = e_widget_ilist_selected_get(cfdata->o_categories_ilist); + ic = e_widget_ilist_nth_icon_get(cfdata->o_categories_ilist, n); + if (!ic) return; + + snprintf(category, sizeof(category), "base/theme/%s", label); + for (themes = cfdata->theme_list; themes; themes = themes->next) + { + E_Config_Theme *t; + + t = themes->data; + if (!strcmp(category, t->category) && (t->file)) + { + file = strdup(t->file); + break; + } + } + if (!file) return; + + for (n = 0, l = e_widget_ilist_items_get(cfdata->o_files_ilist); l; l = l->next, n++) + { + if (strstr(file, e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n))) + { + e_widget_ilist_selected_set(cfdata->o_files_ilist, n); + break; + } + } + + free((void *)file); +} + +static void +_cb_adv_theme_change(void *data, Evas_Object *obj) +{ + E_Config_Dialog_Data *cfdata; + const char *label = NULL; + char theme[4096]; + int n; + + cfdata = data; + if (!cfdata) return; + + n = e_widget_ilist_selected_get(cfdata->o_files_ilist); + label = e_widget_ilist_selected_label_get(cfdata->o_files_ilist); + if (label) + { + if (n > cfdata->personal_file_count) + snprintf(theme, sizeof(theme), "%s/data/themes/%s.edj", + e_prefix_data_get(), label); + else + snprintf(theme, sizeof(theme), "%s/.e/e/themes/%s.edj", + e_user_homedir_get(), label); + e_widget_preview_edje_set(cfdata->o_preview, theme, + "e/desktop/background"); + } +} + +static int +_theme_file_used(Evas_List *tlist, const char *filename) +{ + E_Config_Theme *theme; + + while (tlist) + { + theme = tlist->data; + if (theme->file && strstr(theme->file, filename)) + { + return 1; + } + tlist = tlist->next; + } + + return 0; +} + +static int +_ilist_files_add(E_Config_Dialog_Data *cfdata, const char *header, const char *dir) +{ + DIR *d = NULL; + struct dirent *dentry = NULL; + Evas_List *themefiles = NULL; + int count; + char themename[256]; + Evas_Object *o; + Evas *evas; + + o = cfdata->o_files_ilist; + e_widget_ilist_header_append(o, NULL, header); + evas = evas_object_evas_get(o); + + d = opendir(dir); + if (d) + { + while ((dentry = readdir(d)) != NULL) + { + if (strstr(dentry->d_name,".edj") != NULL) + { + strncpy(themename, dentry->d_name, strlen(dentry->d_name)-3); + themename[strlen(dentry->d_name)-4] = '\0'; + themefiles = evas_list_append(themefiles, strdup(themename)); + } + } + closedir(d); + } + + if (themefiles) + { + themefiles = evas_list_sort(themefiles, -1, _cb_sort); + count = evas_list_count(themefiles); + + while (themefiles) + { + Evas_Object *ic = NULL; + if (_theme_file_used(cfdata->theme_list, themefiles->data)) + { + ic = edje_object_add(evas); + e_util_edje_icon_set(ic, "enlightenment/themes"); + } + e_widget_ilist_append(o, ic, themefiles->data, NULL, NULL, NULL); + + themefiles = themefiles->next; + } + } + + return count; +} + +static void +_fill_files_ilist(E_Config_Dialog_Data *cfdata) +{ + Evas *evas; + Evas_Object *o; + char theme_dir[4096]; + + o = cfdata->o_files_ilist; + if (!o) return; + + evas = evas_object_evas_get(o); + evas_event_freeze(evas); + edje_freeze(); + e_widget_ilist_freeze(o); + e_widget_ilist_clear(o); + + /* Grab the "Personal" themes. */ + snprintf(theme_dir, sizeof(theme_dir), "%s/.e/e/themes", + e_user_homedir_get()); + cfdata->personal_file_count = _ilist_files_add(cfdata, _("Personal"), + theme_dir); + + /* Grab the "System" themes. */ + snprintf(theme_dir, sizeof(theme_dir), + "%s/data/themes", e_prefix_data_get()); + _ilist_files_add(cfdata, _("System"), theme_dir); + + e_widget_ilist_go(o); + e_widget_ilist_thaw(o); + edje_thaw(); + evas_event_thaw(evas); +} + +static void +_fill_categories_ilist(E_Config_Dialog_Data *cfdata) +{ + Evas *evas; + Evas_List *themes; + E_Config_Theme *theme; + Evas_Object *o; + + o = cfdata->o_categories_ilist; + if (!o) return; + + evas = evas_object_evas_get(o); + evas_event_freeze(evas); + edje_freeze(); + e_widget_ilist_freeze(o); + e_widget_ilist_clear(o); + + themes = cfdata->theme_list; + while (themes) + { + Evas_Object *ic = NULL; + + theme = themes->data; + if (theme->file) + { + ic = edje_object_add(evas); + e_util_edje_icon_set(ic, "enlightenment/e"); + } + e_widget_ilist_append(o, ic, theme->category + 11, NULL, NULL, NULL); + themes = themes->next; + } + + e_widget_ilist_go(o); + e_widget_ilist_thaw(o); + edje_thaw(); + evas_event_thaw(evas); +} + +static void +_cb_adv_btn_assign(void *data1, void *data2) +{ + Evas *evas; + E_Config_Dialog_Data *cfdata; + E_Config_Theme *newtheme, *t; + Evas_List *themes; + Evas_Object *ic = NULL, *oc = NULL, *of = NULL; + char buf[1024]; + const char *label; + int n; + + cfdata = data1; + if (!cfdata) return; + + oc = cfdata->o_categories_ilist; + if (!oc) return; + of = cfdata->o_files_ilist; + if (!of) return; + + evas = evas_object_evas_get(oc); + n = e_widget_ilist_selected_get(oc); + ic = edje_object_add(evas); + e_util_edje_icon_set(ic, "enlightenment/e"); + e_widget_ilist_nth_icon_set(oc, n, ic); + + newtheme = malloc(sizeof(E_Config_Theme)); + if (!newtheme) return; + + label = e_widget_ilist_selected_label_get(oc); + snprintf(buf, sizeof(buf), "base/theme/%s", label); + newtheme->category = strdup(buf); + + n = e_widget_ilist_selected_get(of); + ic = edje_object_add(evas); + e_util_edje_icon_set(ic, "enlightenment/themes"); + e_widget_ilist_nth_icon_set(of, n, ic); + label = e_widget_ilist_selected_label_get(of); + if (n > cfdata->personal_file_count) + snprintf(buf, sizeof(buf), "%s/data/themes/%s.edj", + e_prefix_data_get(), label); + else + snprintf(buf, sizeof(buf), "%s/.e/e/themes/%s.edj", + e_user_homedir_get(), label); + newtheme->file = strdup(buf); + + for (themes = cfdata->theme_list; themes; themes = themes->next) + { + char * filename; + + t = themes->data; + if (!strcmp(t->category, newtheme->category)) + { + if (t->file) + { + filename = strdup(t->file); + free((void *)(t->file)); + t->file = NULL; + if (!_theme_file_used(cfdata->theme_list, filename)) + { + for (n = 0; n < e_widget_ilist_count(of); n++) + if (strstr(filename, e_widget_ilist_nth_label_get(of, n))) + e_widget_ilist_nth_icon_set(of, n, NULL); + } + free(filename); + } + t->file = strdup(newtheme->file); + break; + } + } + if (!themes) + cfdata->theme_list = evas_list_append(cfdata->theme_list, newtheme); + + return; +} + +static void +_cb_adv_btn_clear(void *data1, void *data2) +{ + E_Config_Dialog_Data *cfdata; + E_Config_Theme *t; + Evas_List *themes; + Evas_Object *oc = NULL, *of = NULL; + char cat[1024]; + const char *label; + int n; + + cfdata = data1; + if (!cfdata) return; + + oc = cfdata->o_categories_ilist; + if (!oc) return; + of = cfdata->o_files_ilist; + if (!of) return; + + n = e_widget_ilist_selected_get(oc); + e_widget_ilist_nth_icon_set(oc, n, NULL); + + label = e_widget_ilist_selected_label_get(oc); + snprintf(cat, sizeof(cat), "base/theme/%s", label); + + for (themes = cfdata->theme_list; themes; themes = themes->next) + { + t = themes->data; + if (!strcmp(t->category, cat)) + { + if (t->file) + { + free((void *)(t->file)); + t->file = NULL; + } + break; + } + } + + if (!_theme_file_used(cfdata->theme_list, e_widget_ilist_selected_label_get(of))) + { + n = e_widget_ilist_selected_get(of); + e_widget_ilist_nth_icon_set(of, n, NULL); + } + + return; +} + +static void +_cb_adv_btn_clearall(void *data1, void *data2) +{ + E_Config_Dialog_Data *cfdata; + E_Config_Theme *t; + Evas_List *themes; + Evas_Object *oc = NULL, *of = NULL; + int n; + + cfdata = data1; + if (!cfdata) return; + + oc = cfdata->o_categories_ilist; + if (!oc) return; + of = cfdata->o_files_ilist; + if (!of) return; + + for (n = 0; n < e_widget_ilist_count(oc); n++) + e_widget_ilist_nth_icon_set(oc, n, NULL); + for (n = 0; n < e_widget_ilist_count(of); n++) + e_widget_ilist_nth_icon_set(of, n, NULL); + + for (themes = cfdata->theme_list; themes; themes = themes->next) + { + t = themes->data; + if (t->file) + { + free((void *)(t->file)); + t->file = NULL; + } + } + + return; +} + +static Evas_Object * +_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) +{ + Evas_Object *ot, *of, *ob, *oa, *ol; + int mw, mh; + E_Zone *zone; + + zone = e_zone_current_get(cfd->con); + ot = e_widget_table_add(evas, 0); + + of = e_widget_framelist_add(evas, _("Theme Categories"), 0); + ob = e_widget_ilist_add(evas, 16, 16, NULL); + e_widget_on_change_hook_set(ob, _cb_adv_categories_change, cfdata); + cfdata->o_categories_ilist = ob; + e_widget_ilist_multi_select_set(ob, 0); + e_widget_min_size_set(ob, 150, 250); + e_widget_framelist_object_append(of, ob); + e_widget_table_object_append(ot, of, 0, 0, 1, 1, 1, 1, 1, 1); + + of = e_widget_framelist_add(evas, _("Themes"), 0); + ob = e_widget_ilist_add(evas, 16, 16, NULL); + e_widget_on_change_hook_set(ob, _cb_adv_theme_change, cfdata); + cfdata->o_files_ilist = ob; + e_widget_ilist_multi_select_set(ob, 0); + e_widget_min_size_set(ob, 150, 250); + e_widget_framelist_object_append(of, ob); + e_widget_table_object_append(ot, of, 1, 0, 1, 1, 1, 1, 1, 1); + + ol = e_widget_list_add(evas, 1, 1); + ob = e_widget_button_add(evas, _("Assign"), NULL, _cb_adv_btn_assign, cfdata, NULL); + e_widget_list_object_append(ol, ob, 1, 0, 0.5); + ob = e_widget_button_add(evas, _("Clear"), NULL, _cb_adv_btn_clear, cfdata, NULL); + e_widget_list_object_append(ol, ob, 1, 0, 0.5); + ob = e_widget_button_add(evas, _("Clear All"), NULL, _cb_adv_btn_clearall, cfdata, NULL); + e_widget_list_object_append(ol, ob, 1, 0, 0.5); + e_widget_table_object_append(ot, ol, 0, 1, 1, 1, 1, 0, 1, 0); + + of = e_widget_framelist_add(evas, _("Preview"), 0); + mw = 320; + mh = (mw * zone->h) / zone->w; + oa = e_widget_aspect_add(evas, mw, mh); + ob = e_widget_preview_add(evas, mw, mh); + cfdata->o_preview = ob; + if (cfdata->theme) + e_widget_preview_edje_set(ob, cfdata->theme, "e/desktop/background"); + e_widget_aspect_child_set(oa, ob); + e_widget_framelist_object_append(of, oa); + e_widget_table_object_append(ot, of, 2, 0, 1, 1, 1, 1, 1, 1); + + _fill_files_ilist(cfdata); + _fill_categories_ilist(cfdata); + + e_widget_ilist_selected_set(cfdata->o_files_ilist, 1); + e_widget_ilist_selected_set(cfdata->o_categories_ilist, 0); + + e_dialog_resizable_set(cfd->dia, 1); + return ot; +} + +static int +_advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) +{ + Evas_List *themes, *ec_themes; + E_Action *a; + + themes = cfdata->theme_list; + while (themes) + { + E_Config_Theme *theme, *ec_theme; + + theme = themes->data; + for (ec_themes = e_config->themes; ec_themes; ec_themes = ec_themes->next) + { + ec_theme = ec_themes->data; + if (!strcmp(theme->category + 5, ec_theme->category)) + { + if (theme->file) + e_theme_config_set(theme->category + 5, theme->file); + else + e_theme_config_remove(theme->category + 5); + break; + } + } + if ((!ec_themes) && (theme->file)) + e_theme_config_set(theme->category + 5, theme->file); + + themes = themes->next; + } + + e_config_save_queue(); + + a = e_action_find("restart"); + if ((a) && (a->func.go)) a->func.go(NULL, NULL); + + return 1; } |
From: Enlightenment C. <no...@cv...> - 2007-05-30 11:51:14
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_theme.c Log Message: Fix issue in which assigning the same theme category to many themes would result in the lack of an icon designating that it was in fact assigned. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_theme.c,v retrieving revision 1.51 retrieving revision 1.52 diff -u -3 -r1.51 -r1.52 --- e_int_config_theme.c 30 May 2007 05:44:38 -0000 1.51 +++ e_int_config_theme.c 30 May 2007 11:51:06 -0000 1.52 @@ -854,7 +854,7 @@ t = themes->data; if (!strcmp(t->category, newtheme->category)) { - if (t->file) + if ((t->file) && (strcmp(t->file, newtheme->file))) { filename = strdup(t->file); free((void *)(t->file)); @@ -873,6 +873,8 @@ } if (!themes) cfdata->theme_list = evas_list_append(cfdata->theme_list, newtheme); + else + free(newtheme); return; } |
From: Enlightenment C. <no...@cv...> - 2007-06-02 03:22:42
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_theme.c Log Message: Should be more robust with respect to "Assign", "Clear", and "Clear All". Additionally I have added (as best I could) previews of each individual category/part. In the absence of a suitable preview, I display the theme background. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_theme.c,v retrieving revision 1.52 retrieving revision 1.53 diff -u -3 -r1.52 -r1.53 --- e_int_config_theme.c 30 May 2007 11:51:06 -0000 1.52 +++ e_int_config_theme.c 2 Jun 2007 03:22:32 -0000 1.53 @@ -12,6 +12,7 @@ static int _advanced_apply_data (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); static Evas_Object *_advanced_create_widgets (E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata); static Evas_List *_get_theme_categories_list(); +static Evas_List *_get_parts_list(); struct _E_Config_Dialog_Data { @@ -32,6 +33,7 @@ Evas_Object *o_files_ilist; int personal_file_count; Evas_List *theme_list; + Evas_List *parts_list; /* Dialog */ E_Win *win_import; @@ -320,6 +322,7 @@ } cfdata->theme_list = _get_theme_categories_list(); + cfdata->parts_list = _get_parts_list(); snprintf(path, sizeof(path), "%s/data/themes", e_prefix_data_get()); if (!strncmp(cfdata->theme, path, strlen(path))) @@ -501,6 +504,45 @@ } static Evas_List * +_get_parts_list() +{ + Evas_List *parts = NULL; + + /* + * TODO: Those parts with ZZZ, are the ones I could not find a suitable + * part to use as its preview. + */ + parts = evas_list_append(parts, strdup("about:e/widgets/about/main")); + parts = evas_list_append(parts, strdup("borders:e/widgets/border/default/border")); + parts = evas_list_append(parts, strdup("background:e/desktop/background")); + parts = evas_list_append(parts, strdup("configure:e/widgets/configure/main")); + parts = evas_list_append(parts, strdup("dialog:e/widgets/dialog/main")); + parts = evas_list_append(parts, strdup("dnd:ZZZ")); + parts = evas_list_append(parts, strdup("error:e/error/main")); + parts = evas_list_append(parts, strdup("exebuf:e/widgets/exebuf/main")); + parts = evas_list_append(parts, strdup("fileman:ZZZ")); + parts = evas_list_append(parts, strdup("gadman:e/gadman/control")); + parts = evas_list_append(parts, strdup("icons:ZZZ")); + parts = evas_list_append(parts, strdup("menus:ZZZ")); + parts = evas_list_append(parts, strdup("modules:ZZZ")); + parts = evas_list_append(parts, strdup("modules/pager:e/widgets/pager/popup")); + parts = evas_list_append(parts, strdup("modules/ibar:ZZZ")); + parts = evas_list_append(parts, strdup("modules/ibox:ZZZ")); + parts = evas_list_append(parts, strdup("modules/clock:e/modules/clock/main")); + parts = evas_list_append(parts, strdup("modules/battery:e/modules/battery/main")); + parts = evas_list_append(parts, strdup("modules/cpufreq:e/modules/cpufreq/main")); + parts = evas_list_append(parts, strdup("modules/start:e/modules/start/main")); + parts = evas_list_append(parts, strdup("modules/temperature:e/modules/temperature/main")); + parts = evas_list_append(parts, strdup("pointer:e/pointer")); + parts = evas_list_append(parts, strdup("shelf:e/shelf/default/base")); + parts = evas_list_append(parts, strdup("transitions:ZZZ")); + parts = evas_list_append(parts, strdup("widgets:ZZZ")); + parts = evas_list_append(parts, strdup("winlist:e/widgets/winlist/main")); + + return parts; +} + +static Evas_List * _get_theme_categories_list() { Evas_List *themes, *tcl = NULL; @@ -587,6 +629,60 @@ return tcl; } +static char * +_files_ilist_nth_label_to_file(void *data, int n) +{ + E_Config_Dialog_Data *cfdata; + char file[1024]; + + cfdata = data; + if (!cfdata) return NULL; + if (!cfdata->o_files_ilist) return NULL; + + if (n > cfdata->personal_file_count) + snprintf(file, sizeof(file), "%s/data/themes/%s.edj", + e_prefix_data_get(), e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n)); + else + snprintf(file, sizeof(file), "%s/.e/e/themes/%s.edj", + e_user_homedir_get(), e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n)); + + return strdup(file); +} + +static void +_preview_set(void *data) +{ + E_Config_Dialog_Data *cfdata; + const char *theme; + char c_label[128]; + int n, ret = 0; + Evas_List *p; + + cfdata = data; + if (!cfdata) return; + + n = e_widget_ilist_selected_get(cfdata->o_files_ilist); + theme = _files_ilist_nth_label_to_file(cfdata, n); + snprintf(c_label, sizeof(c_label), "%s:", + e_widget_ilist_selected_label_get(cfdata->o_categories_ilist)); + if (theme) + { + p = cfdata->parts_list; + while (p) + { + if (strstr((char *)(p->data), c_label)) + break; + p = p->next; + } + if (p) + ret = e_widget_preview_edje_set(cfdata->o_preview, theme, + p->data + strlen(c_label)); + if (!ret) + ret = e_widget_preview_edje_set(cfdata->o_preview, theme, + "e/desktop/background"); + } +} + static void _cb_adv_categories_change(void *data, Evas_Object *obj) { @@ -594,7 +690,7 @@ const char *label = NULL; const char *file = NULL; char category[256]; - Evas_List *themes = NULL, *l; + Evas_List *themes = NULL; Evas_Object *ic = NULL; int n; @@ -606,7 +702,11 @@ n = e_widget_ilist_selected_get(cfdata->o_categories_ilist); ic = e_widget_ilist_nth_icon_get(cfdata->o_categories_ilist, n); - if (!ic) return; + if (!ic) + { + _preview_set(data); + return; + } snprintf(category, sizeof(category), "base/theme/%s", label); for (themes = cfdata->theme_list; themes; themes = themes->next) @@ -622,11 +722,11 @@ } if (!file) return; - for (n = 0, l = e_widget_ilist_items_get(cfdata->o_files_ilist); l; l = l->next, n++) + for (n = 0; n < e_widget_ilist_count(cfdata->o_files_ilist); n++) { - if (strstr(file, e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n))) + if (!strcmp(file, _files_ilist_nth_label_to_file(cfdata, n))) { - e_widget_ilist_selected_set(cfdata->o_files_ilist, n); + e_widget_ilist_selected_set(cfdata->o_files_ilist, n); break; } } @@ -637,27 +737,7 @@ static void _cb_adv_theme_change(void *data, Evas_Object *obj) { - E_Config_Dialog_Data *cfdata; - const char *label = NULL; - char theme[4096]; - int n; - - cfdata = data; - if (!cfdata) return; - - n = e_widget_ilist_selected_get(cfdata->o_files_ilist); - label = e_widget_ilist_selected_label_get(cfdata->o_files_ilist); - if (label) - { - if (n > cfdata->personal_file_count) - snprintf(theme, sizeof(theme), "%s/data/themes/%s.edj", - e_prefix_data_get(), label); - else - snprintf(theme, sizeof(theme), "%s/.e/e/themes/%s.edj", - e_user_homedir_get(), label); - e_widget_preview_edje_set(cfdata->o_preview, theme, - "e/desktop/background"); - } + _preview_set(data); } static int @@ -665,10 +745,12 @@ { E_Config_Theme *theme; + if (!filename) return 0; + while (tlist) { theme = tlist->data; - if (theme->file && strstr(theme->file, filename)) + if (theme->file && !strcmp(theme->file, filename)) { return 1; } @@ -685,7 +767,8 @@ struct dirent *dentry = NULL; Evas_List *themefiles = NULL; int count; - char themename[256]; + char themename[1024]; + char *tmp; Evas_Object *o; Evas *evas; @@ -700,8 +783,8 @@ { if (strstr(dentry->d_name,".edj") != NULL) { - strncpy(themename, dentry->d_name, strlen(dentry->d_name)-3); - themename[strlen(dentry->d_name)-4] = '\0'; + snprintf(themename, sizeof(themename), "%s/%s", + dir, dentry->d_name); themefiles = evas_list_append(themefiles, strdup(themename)); } } @@ -721,7 +804,11 @@ ic = edje_object_add(evas); e_util_edje_icon_set(ic, "enlightenment/themes"); } - e_widget_ilist_append(o, ic, themefiles->data, NULL, NULL, NULL); + tmp = strdup(strrchr(themefiles->data, '/') + 1); + strncpy(themename, tmp, strlen(tmp)-3); + themename[strlen(tmp)-4] = '\0'; + e_widget_ilist_append(o, ic, themename, NULL, NULL, NULL); + free(tmp); themefiles = themefiles->next; } @@ -838,14 +925,7 @@ ic = edje_object_add(evas); e_util_edje_icon_set(ic, "enlightenment/themes"); e_widget_ilist_nth_icon_set(of, n, ic); - label = e_widget_ilist_selected_label_get(of); - if (n > cfdata->personal_file_count) - snprintf(buf, sizeof(buf), "%s/data/themes/%s.edj", - e_prefix_data_get(), label); - else - snprintf(buf, sizeof(buf), "%s/.e/e/themes/%s.edj", - e_user_homedir_get(), label); - newtheme->file = strdup(buf); + newtheme->file = _files_ilist_nth_label_to_file(cfdata, n); for (themes = cfdata->theme_list; themes; themes = themes->next) { @@ -862,7 +942,7 @@ if (!_theme_file_used(cfdata->theme_list, filename)) { for (n = 0; n < e_widget_ilist_count(of); n++) - if (strstr(filename, e_widget_ilist_nth_label_get(of, n))) + if (!strcmp(filename, _files_ilist_nth_label_to_file(cfdata, n))) e_widget_ilist_nth_icon_set(of, n, NULL); } free(filename); @@ -888,6 +968,7 @@ Evas_Object *oc = NULL, *of = NULL; char cat[1024]; const char *label; + const char *filename; int n; cfdata = data1; @@ -911,6 +992,7 @@ { if (t->file) { + filename = strdup(t->file); free((void *)(t->file)); t->file = NULL; } @@ -918,10 +1000,11 @@ } } - if (!_theme_file_used(cfdata->theme_list, e_widget_ilist_selected_label_get(of))) + if ((filename) && (!_theme_file_used(cfdata->theme_list, filename))) { - n = e_widget_ilist_selected_get(of); - e_widget_ilist_nth_icon_set(of, n, NULL); + for (n = 0; n < e_widget_ilist_count(of); n++) + if (!strcmp(filename, _files_ilist_nth_label_to_file(cfdata, n))) + e_widget_ilist_nth_icon_set(of, n, NULL); } return; @@ -1014,8 +1097,8 @@ _fill_files_ilist(cfdata); _fill_categories_ilist(cfdata); - e_widget_ilist_selected_set(cfdata->o_files_ilist, 1); e_widget_ilist_selected_set(cfdata->o_categories_ilist, 0); + e_widget_ilist_selected_set(cfdata->o_files_ilist, 1); e_dialog_resizable_set(cfd->dia, 1); return ot; |
From: Enlightenment C. <no...@cv...> - 2007-06-02 19:43:11
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_theme.c Log Message: Its preferred to have the files selected first, and then the categories. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_theme.c,v retrieving revision 1.53 retrieving revision 1.54 diff -u -3 -r1.53 -r1.54 --- e_int_config_theme.c 2 Jun 2007 03:22:32 -0000 1.53 +++ e_int_config_theme.c 2 Jun 2007 19:43:08 -0000 1.54 @@ -1097,8 +1097,8 @@ _fill_files_ilist(cfdata); _fill_categories_ilist(cfdata); - e_widget_ilist_selected_set(cfdata->o_categories_ilist, 0); e_widget_ilist_selected_set(cfdata->o_files_ilist, 1); + e_widget_ilist_selected_set(cfdata->o_categories_ilist, 0); e_dialog_resizable_set(cfd->dia, 1); return ot; |
From: Enlightenment C. <no...@cv...> - 2007-06-05 21:52:17
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e.h e_fm_main.c Log Message: FreeBSD has large file support out of the box =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e.h,v retrieving revision 1.63 retrieving revision 1.64 diff -u -3 -r1.63 -r1.64 --- e.h 3 Jun 2007 03:51:33 -0000 1.63 +++ e.h 5 Jun 2007 21:52:15 -0000 1.64 @@ -16,7 +16,9 @@ #define _FILE_OFFSET_BITS 64 #endif +#ifndef __FreeBSD__ #include <features.h> +#endif #include <stdio.h> #include <stdlib.h> #include <unistd.h> =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_fm_main.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- e_fm_main.c 2 Jun 2007 16:50:43 -0000 1.17 +++ e_fm_main.c 5 Jun 2007 21:52:15 -0000 1.18 @@ -4,10 +4,10 @@ #ifndef _FILE_OFFSET_BITS #define _FILE_OFFSET_BITS 64 #endif -#ifndef __USE_FILE_OFFSET64 /* for large file support */ -#define __USE_FILE_OFFSET64 -#endif +#ifndef __FreeBSD__ +#include <features.h> +#endif #include <stdio.h> #include <stdlib.h> #include <unistd.h> |
From: Enlightenment C. <no...@cv...> - 2007-06-05 22:10:14
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e.h e_fm_main.c Log Message: oops. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e.h,v retrieving revision 1.64 retrieving revision 1.65 diff -u -3 -r1.64 -r1.65 --- e.h 5 Jun 2007 21:52:15 -0000 1.64 +++ e.h 5 Jun 2007 22:10:13 -0000 1.65 @@ -16,7 +16,7 @@ #define _FILE_OFFSET_BITS 64 #endif -#ifndef __FreeBSD__ +#ifdef __linux__ #include <features.h> #endif #include <stdio.h> =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_fm_main.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- e_fm_main.c 5 Jun 2007 21:52:15 -0000 1.18 +++ e_fm_main.c 5 Jun 2007 22:10:13 -0000 1.19 @@ -5,7 +5,7 @@ #define _FILE_OFFSET_BITS 64 #endif -#ifndef __FreeBSD__ +#ifdef __linux__ #include <features.h> #endif #include <stdio.h> |
From: Enlightenment C. <no...@cv...> - 2007-06-06 05:26:16
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_window_display.c Log Message: Tweak gui to clarify the border icon option =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_window_display.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- e_int_config_window_display.c 15 Jan 2007 17:43:19 -0000 1.21 +++ e_int_config_window_display.c 6 Jun 2007 05:26:14 -0000 1.22 @@ -246,9 +246,12 @@ e_widget_framelist_object_append(of, ob); e_widget_table_object_append(ot, of, 0, 1, 1, 1, 1, 1, 1, 1); - of = e_widget_framelist_add(evas, _("Window Frame"), 0); + of = e_widget_framelist_add(evas, _("Window Border"), 0); e_widget_framelist_content_align_set(of, 0.0, 0.0); - ob = e_widget_check_add(evas, _("Use application provided icon instead"), &(cfdata->use_app_icon)); + rg = e_widget_radio_group_new(&(cfdata->use_app_icon)); + ob = e_widget_radio_add(evas, _("Prefer user defined icon"), 0, rg); + e_widget_framelist_object_append(of, ob); + ob = e_widget_radio_add(evas, _("Prefer application provided icon"), 1, rg); e_widget_framelist_object_append(of, ob); e_widget_table_object_append(ot, of, 0, 2, 1, 1, 1, 1, 1, 1); |
From: Enlightenment C. <no...@cv...> - 2007-06-08 00:43:32
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_widget_tlist.c Log Message: tlist was not showing it had focus. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_widget_tlist.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_widget_tlist.c 30 Apr 2006 04:31:42 -0000 1.4 +++ e_widget_tlist.c 8 Jun 2007 00:43:29 -0000 1.5 @@ -231,13 +231,13 @@ if (e_widget_focus_get(obj)) { edje_object_signal_emit(e_scrollframe_edje_object_get - (wd->o_scrollframe), "focus_in", ""); + (wd->o_scrollframe), "e,state,focused", "e"); evas_object_focus_set(wd->o_tlist, 1); } else { edje_object_signal_emit(e_scrollframe_edje_object_get - (wd->o_scrollframe), "focus_out", ""); + (wd->o_scrollframe), "e,state,unfocused", "e"); evas_object_focus_set(wd->o_tlist, 0); } } |
From: Enlightenment C. <no...@cv...> - 2007-06-12 03:51:49
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/data/themes/images Added Files: e17_button_detail_select.png Log Message: Patch from tokyo to populate the entry widgets context menu with icons. |
From: Enlightenment C. <no...@cv...> - 2007-06-12 11:59:21
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/data/themes Modified Files: default_fileman.edc Log Message: Patch from tokyo to populate the entry widgets context menu with icons. =================================================================== RCS file: /cvs/e/e17/apps/e/data/themes/default_fileman.edc,v retrieving revision 1.57 retrieving revision 1.58 diff -u -3 -r1.57 -r1.58 --- default_fileman.edc 3 Jun 2007 04:50:54 -0000 1.57 +++ default_fileman.edc 12 Jun 2007 11:59:15 -0000 1.58 @@ -9252,7 +9252,8 @@ image: "e17_button_detail_refresh.png" COMP; image: "e17_button_detail_view_details.png" COMP; image: "e17_button_detail_view_name.png" COMP; - image: "e17_button_detail_view.png" COMP; + image: "e17_button_detail_view.png" COMP; + image: "e17_button_detail_select.png" COMP; } FILEMAN_ICON_CLICKABLE("folder"); @@ -9314,4 +9315,5 @@ FULL_SIZE_FILEMAN_BUTTON("view_details"); FULL_SIZE_FILEMAN_BUTTON("view_name"); FULL_SIZE_FILEMAN_BUTTON("view"); +FULL_SIZE_FILEMAN_BUTTON("select"); |
From: Enlightenment C. <no...@cv...> - 2007-06-12 11:59:50
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_entry.c Log Message: Patch from tokyo to populate the entry widgets context menu with icons. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_entry.c,v retrieving revision 1.43 retrieving revision 1.44 diff -u -3 -r1.43 -r1.44 --- e_entry.c 1 May 2007 13:41:09 -0000 1.43 +++ e_entry.c 12 Jun 2007 11:59:47 -0000 1.44 @@ -386,8 +386,8 @@ e_menu_item_label_set(mi, _("Delete")); e_menu_item_icon_edje_set(mi, e_theme_edje_file_get("base/theme/fileman", - "e/fileman/button/delete"), - "e/fileman/button/delete"); + "e/fileman/default/button/delete"), + "e/fileman/default/button/delete"); e_menu_item_callback_set(mi, _e_entry_cb_delete, sd); mi = e_menu_item_new(sd->popup); @@ -399,8 +399,8 @@ e_menu_item_label_set(mi, _("Cut")); e_menu_item_icon_edje_set(mi, e_theme_edje_file_get("base/theme/fileman", - "e/fileman/button/cut"), - "e/fileman/button/cut"); + "e/fileman/default/button/cut"), + "e/fileman/default/button/cut"); e_menu_item_callback_set(mi, _e_entry_cb_cut, sd); } } @@ -410,8 +410,8 @@ e_menu_item_label_set(mi, _("Copy")); e_menu_item_icon_edje_set(mi, e_theme_edje_file_get("base/theme/fileman", - "e/fileman/button/copy"), - "e/fileman/button/copy"); + "e/fileman/default/button/copy"), + "e/fileman/default/button/copy"); e_menu_item_callback_set(mi, _e_entry_cb_copy, sd); } } @@ -420,8 +420,8 @@ mi = e_menu_item_new(sd->popup); e_menu_item_label_set(mi, _("Paste")); e_menu_item_icon_edje_set(mi, e_theme_edje_file_get("base/theme/fileman", - "e/fileman/button/paste"), - "e/fileman/button/paste"); + "e/fileman/default/button/paste"), + "e/fileman/default/button/paste"); e_menu_item_callback_set(mi, _e_entry_cb_paste, sd); } if (!s_empty) @@ -431,6 +431,9 @@ mi = e_menu_item_new(sd->popup); e_menu_item_label_set(mi, _("Select All")); + e_menu_item_icon_edje_set(mi, e_theme_edje_file_get("base/theme/fileman", + "e/fileman/default/button/select"), + "e/fileman/default/button/select"); e_menu_item_callback_set(mi, _e_entry_cb_select_all, sd); } |
From: Enlightenment C. <no...@cv...> - 2007-07-15 13:26:01
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.h e_config.c e_int_border_menu.c Log Message: Fix typo of mine. Fix some whitespace. Allow appropriate icons to be viewed in "Border Icons" border menu. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.h,v retrieving revision 1.162 retrieving revision 1.163 diff -u -3 -r1.162 -r1.163 --- e_border.h 15 Jul 2007 08:28:03 -0000 1.162 +++ e_border.h 15 Jul 2007 13:25:56 -0000 1.163 @@ -3,7 +3,7 @@ */ #ifdef E_TYPEDEFS -typedef enum _E_Icon_Preferece +typedef enum _E_Icon_Preference { E_ICON_PREF_E_DEFAULT, E_ICON_PREF_NETWM, =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_config.c,v retrieving revision 1.250 retrieving revision 1.251 diff -u -3 -r1.250 -r1.251 --- e_config.c 15 Jul 2007 08:28:03 -0000 1.250 +++ e_config.c 15 Jul 2007 13:25:56 -0000 1.251 @@ -64,7 +64,7 @@ { char *data; int data_len = 0; - + data = eet_read(ef, "config", &data_len); if ((data) && (data_len > 0)) { =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_border_menu.c,v retrieving revision 1.67 retrieving revision 1.68 diff -u -3 -r1.67 -r1.68 --- e_int_border_menu.c 15 Jul 2007 08:28:03 -0000 1.67 +++ e_int_border_menu.c 15 Jul 2007 13:25:56 -0000 1.68 @@ -39,6 +39,8 @@ static void _e_border_menu_cb_iconpref_e(void *data, E_Menu *m, E_Menu_Item *mi); static void _e_border_menu_cb_iconpref_netwm(void *data, E_Menu *m, E_Menu_Item *mi); static void _e_border_menu_cb_iconpref_user(void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_border_menu_cb_default_icon(void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_border_menu_cb_netwm_icon(void *data, E_Menu *m, E_Menu_Item *mi); EAPI void e_int_border_menu_show(E_Border *bd, Evas_Coord x, Evas_Coord y, int key, Ecore_X_Time timestamp) @@ -731,8 +733,8 @@ e_border_pinned_set(bd, 0); } -static void -_e_border_menu_cb_raise(void *data, E_Menu *m, E_Menu_Item *mi) +static void +_e_border_menu_cb_raise(void *data, E_Menu *m, E_Menu_Item *mi) { E_Border *bd; @@ -741,11 +743,11 @@ ((bd->layer == 50) || (bd->layer == 100) || (bd->layer == 150))) { e_border_raise(bd); - } + } } -static void -_e_border_menu_cb_lower(void *data, E_Menu *m, E_Menu_Item *mi) +static void +_e_border_menu_cb_lower(void *data, E_Menu *m, E_Menu_Item *mi) { E_Border *bd; @@ -758,6 +760,44 @@ } static void +_e_border_menu_cb_default_icon(void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Border *bd; + Evas_Object *o; + unsigned char prev_icon_pref; + + bd = data; + E_OBJECT_CHECK(bd); + + o = e_icon_add(m->evas); + prev_icon_pref = bd->icon_preference; + bd->icon_preference = E_ICON_PREF_E_DEFAULT; + e_icon_object_set(o, e_border_icon_add(bd, m->evas)); + bd->icon_preference = prev_icon_pref; + mi->icon_object = o; +} + +static void +_e_border_menu_cb_netwm_icon(void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Border *bd; + Evas_Object *o; + + bd = data; + E_OBJECT_CHECK(bd); + + if (bd->client.netwm.icons) + { + o = e_icon_add(m->evas); + e_icon_data_set(o, bd->client.netwm.icons[0].data, + bd->client.netwm.icons[0].width, + bd->client.netwm.icons[0].height); + e_icon_alpha_set(o, 1); + mi->icon_object = o; + } +} + +static void _e_border_menu_cb_border_pre(void *data, E_Menu *m, E_Menu_Item *mi) { E_Menu *subm; @@ -773,18 +813,15 @@ e_object_data_set(E_OBJECT(subm), bd); e_menu_item_submenu_set(mi, subm); - if (!bd->lock_border) + if (e_configure_registry_exists("internal/borders_border")) { - if (e_configure_registry_exists("internal/borders_border")) - { - submi = e_menu_item_new(subm); - e_menu_item_label_set(submi, _("Select Border Style")); - e_menu_item_callback_set(submi, _e_border_menu_cb_border, bd); - e_menu_item_icon_edje_set(submi, - e_theme_edje_file_get("base/theme/borders", - "e/widgets/border/default/borderless"), - "e/widgets/border/default/borderless"); - } + submi = e_menu_item_new(subm); + e_menu_item_label_set(submi, _("Select Border Style")); + e_menu_item_callback_set(submi, _e_border_menu_cb_border, bd); + e_menu_item_icon_edje_set(submi, + e_theme_edje_file_get("base/theme/borders", + "e/widgets/border/default/borderless"), + "e/widgets/border/default/borderless"); } submi = e_menu_item_new(subm); @@ -793,7 +830,7 @@ e_menu_item_radio_group_set(submi, 2); e_menu_item_toggle_set(submi, (bd->icon_preference == E_ICON_PREF_E_DEFAULT ? 1 : 0)); e_menu_item_callback_set(submi, _e_border_menu_cb_iconpref_e, bd); - + submi = e_menu_item_new(subm); evas = submi->menu->evas; e_menu_item_label_set(submi, _("Use Application Provided Icon ")); @@ -811,8 +848,8 @@ e_menu_item_callback_set(submi, _e_border_menu_cb_iconpref_user, bd); } -static void -_e_border_menu_cb_iconpref_e(void *data, E_Menu *m, E_Menu_Item *mi) +static void +_e_border_menu_cb_iconpref_e(void *data, E_Menu *m, E_Menu_Item *mi) { E_Border *bd; @@ -904,19 +941,19 @@ } } -static void -_e_border_menu_cb_skip(void *data, E_Menu *m, E_Menu_Item *mi) +static void +_e_border_menu_cb_skip(void *data, E_Menu *m, E_Menu_Item *mi) { E_Border *bd = data; E_Menu *subm; E_Menu_Item *submi; - + if (!bd) return; subm = e_menu_new(); e_object_data_set(E_OBJECT(subm), bd); e_menu_item_submenu_set(mi, subm); - + submi = e_menu_item_new(subm); e_menu_item_label_set(submi, _("Window List")); @@ -939,16 +976,16 @@ "e/widgets/border/default/skip_pager"); } -static void -_e_border_menu_cb_fav_add(void *data, E_Menu *m, E_Menu_Item *mi) +static void +_e_border_menu_cb_fav_add(void *data, E_Menu *m, E_Menu_Item *mi) { E_Border *bd; Efreet_Menu *menu; char buf[4096]; - + bd = data; if (!bd) return; - snprintf(buf, sizeof(buf), "%s/.e/e/applications/menu/favorite.menu", + snprintf(buf, sizeof(buf), "%s/.e/e/applications/menu/favorite.menu", e_user_homedir_get()); menu = efreet_menu_parse(buf); if (!menu) return; |
From: Enlightenment C. <no...@cv...> - 2007-07-15 14:06:41
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_border_menu.c Log Message: forgot my separator bar. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_border_menu.c,v retrieving revision 1.68 retrieving revision 1.69 diff -u -3 -r1.68 -r1.69 --- e_int_border_menu.c 15 Jul 2007 13:25:56 -0000 1.68 +++ e_int_border_menu.c 15 Jul 2007 14:06:38 -0000 1.69 @@ -825,6 +825,9 @@ } submi = e_menu_item_new(subm); + e_menu_item_separator_set(submi, 1); + + submi = e_menu_item_new(subm); e_menu_item_label_set(submi, _("Use E17 Default Icon Preference")); e_menu_item_radio_set(submi, 1); e_menu_item_radio_group_set(submi, 2); |
From: Enlightenment C. <no...@cv...> - 2007-07-15 15:00:22
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_border_menu.c Log Message: Actually able to see the appropriate icons now. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_border_menu.c,v retrieving revision 1.69 retrieving revision 1.70 diff -u -3 -r1.69 -r1.70 --- e_int_border_menu.c 15 Jul 2007 14:06:38 -0000 1.69 +++ e_int_border_menu.c 15 Jul 2007 15:00:14 -0000 1.70 @@ -832,6 +832,7 @@ e_menu_item_radio_set(submi, 1); e_menu_item_radio_group_set(submi, 2); e_menu_item_toggle_set(submi, (bd->icon_preference == E_ICON_PREF_E_DEFAULT ? 1 : 0)); + e_menu_item_realize_callback_set(submi, _e_border_menu_cb_default_icon, bd); e_menu_item_callback_set(submi, _e_border_menu_cb_iconpref_e, bd); submi = e_menu_item_new(subm); @@ -840,6 +841,7 @@ e_menu_item_radio_set(submi, 1); e_menu_item_radio_group_set(submi, 2); e_menu_item_toggle_set(submi, (bd->icon_preference == E_ICON_PREF_NETWM ? 1 : 0)); + e_menu_item_realize_callback_set(submi, _e_border_menu_cb_netwm_icon, bd); e_menu_item_callback_set(submi, _e_border_menu_cb_iconpref_netwm, bd); submi = e_menu_item_new(subm); |
From: Enlightenment C. <no...@cv...> - 2007-07-16 03:15:22
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/pager Modified Files: e_mod_config.c Log Message: Slight change in text. =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/pager/e_mod_config.c,v retrieving revision 1.31 retrieving revision 1.32 diff -u -3 -r1.31 -r1.32 --- e_mod_config.c 15 Jul 2007 08:28:03 -0000 1.31 +++ e_mod_config.c 16 Jul 2007 03:15:17 -0000 1.32 @@ -148,7 +148,7 @@ e_widget_frametable_object_append(of, ob, 1, 2, 1, 1, 1, 1, 1, 1); ob = e_widget_label_add(evas, _("Drag and Drop button (Keeps rel. loc.)")); e_widget_frametable_object_append(of, ob, 1, 3, 1, 1, 1, 1, 1, 1); - ob = e_widget_label_add(evas, _("Drag whole desktop (Move every windowsof a desk)")); + ob = e_widget_label_add(evas, _("Drag whole desktop (Move all windows of a desktop)")); e_widget_frametable_object_append(of, ob, 1, 4, 1, 1, 1, 1, 1, 1); ob = e_widget_button_add(evas, _("Click to set"), NULL, _grab_wnd_show, (void *)GRAB_BUTTON_DRAG, cfdata); e_widget_frametable_object_append(of, ob, 2, 2, 1, 1, 1, 1, 0, 0); |
From: Enlightenment C. <no...@cv...> - 2007-08-18 02:28:42
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: I suspect this was intended. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.600 retrieving revision 1.601 diff -u -3 -r1.600 -r1.601 --- e_border.c 5 Aug 2007 04:41:55 -0000 1.600 +++ e_border.c 18 Aug 2007 02:28:40 -0000 1.601 @@ -1326,7 +1326,7 @@ } if (bd->visible) { - if (focus_track_frozen > 0) + if (focus_track_frozen == 0) e_border_focus_latest_set(bd); } // printf("EMIT 0x%x activeve\n", bd->client.win); |
From: Enlightenment C. <no...@cv...> - 2007-08-24 04:22:28
|
Enlightenment CVS committal Author : ravenlock Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_ipc_handlers.h e_ipc_handlers_list.h Log Message: Rename -shutdown to -exit, to match the operations in the menu. Create a -shutdown that will shut the computer down. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_ipc_handlers.h,v retrieving revision 1.149 retrieving revision 1.150 diff -u -3 -r1.149 -r1.150 --- e_ipc_handlers.h 5 Aug 2007 08:07:39 -0000 1.149 +++ e_ipc_handlers.h 24 Aug 2007 04:22:25 -0000 1.150 @@ -1390,7 +1390,7 @@ /****************************************************************************/ #define HDL E_IPC_OP_SHUTDOWN #if (TYPE == E_REMOTE_OPTIONS) - OP("-shutdown", 0, "Shutdown (exit) Enlightenment", 0, HDL) + OP("-exit", 0, "Exit Enlightenment", 0, HDL) #elif (TYPE == E_REMOTE_OUT) REQ_NULL(HDL); #elif (TYPE == E_WM_IN) @@ -7769,6 +7769,23 @@ GENERIC(HDL); E_Action *act; act = e_action_find("suspend"); + if (act && act->func.go) + act->func.go(NULL, NULL); + END_GENERIC(); +#elif (TYPE == E_REMOTE_IN) +#endif +#undef HDL + +/****************************************************************************/ +#define HDL E_IPC_OP_HALT +#if (TYPE == E_REMOTE_OPTIONS) + OP("-shutdown", 0, "Halt (shutdown) the computer", 0, HDL) +#elif (TYPE == E_REMOTE_OUT) + REQ_NULL(HDL); +#elif (TYPE == E_WM_IN) + GENERIC(HDL); + E_Action *act; + act = e_action_find("halt"); if (act && act->func.go) act->func.go(NULL, NULL); END_GENERIC(); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_ipc_handlers_list.h,v retrieving revision 1.56 retrieving revision 1.57 diff -u -3 -r1.56 -r1.57 --- e_ipc_handlers_list.h 25 Mar 2007 19:28:51 -0000 1.56 +++ e_ipc_handlers_list.h 24 Aug 2007 04:22:25 -0000 1.57 @@ -411,10 +411,11 @@ #define E_IPC_OP_HIBERNATE 376 #define E_IPC_OP_REBOOT 377 #define E_IPC_OP_SUSPEND 378 +#define E_IPC_OP_HALT 379 -#define E_IPC_OP_DESKLOCK_USE_CUSTOM_DESKLOCK_SET 379 -#define E_IPC_OP_DESKLOCK_USE_CUSTOM_DESKLOCK_GET 380 -#define E_IPC_OP_DESKLOCK_USE_CUSTOM_DESKLOCK_GET_REPLY 381 -#define E_IPC_OP_DESKLOCK_CUSTOM_DESKLOCK_CMD_SET 382 -#define E_IPC_OP_DESKLOCK_CUSTOM_DESKLOCK_CMD_GET 383 -#define E_IPC_OP_DESKLOCK_CUSTOM_DESKLOCK_CMD_GET_REPLY 384 +#define E_IPC_OP_DESKLOCK_USE_CUSTOM_DESKLOCK_SET 380 +#define E_IPC_OP_DESKLOCK_USE_CUSTOM_DESKLOCK_GET 381 +#define E_IPC_OP_DESKLOCK_USE_CUSTOM_DESKLOCK_GET_REPLY 382 +#define E_IPC_OP_DESKLOCK_CUSTOM_DESKLOCK_CMD_SET 383 +#define E_IPC_OP_DESKLOCK_CUSTOM_DESKLOCK_CMD_GET 384 +#define E_IPC_OP_DESKLOCK_CUSTOM_DESKLOCK_CMD_GET_REPLY 385 |