From: <enl...@li...> - 2004-11-26 10:52:05
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/clock Log Message: Directory /cvsroot/enlightenment/e17/apps/e/src/modules/clock added to the repository |
From: <enl...@li...> - 2004-11-26 10:53:48
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/clock Added Files: Makefile.am e_mod_main.c e_mod_main.h module_icon.png Log Message: Added clock module - read notes at top of e_mod_main.c to try it out |
From: <enl...@li...> - 2004-11-26 10:59:33
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e Modified Files: configure.in Log Message: Added clock module - read notes at top of e_mod_main.c to try it out =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/configure.in,v retrieving revision 1.33 retrieving revision 1.34 diff -u -3 -r1.33 -r1.34 --- configure.in 25 Nov 2004 03:37:33 -0000 1.33 +++ configure.in 26 Nov 2004 10:59:26 -0000 1.34 @@ -180,6 +180,7 @@ src/modules/Makefile src/modules/test/Makefile src/modules/ibar/Makefile +src/modules/clock/Makefile src/modules/dropshadow/Makefile data/Makefile data/fonts/Makefile |
From: <enl...@li...> - 2004-11-26 10:59:33
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_module.c Log Message: Added clock module - read notes at top of e_mod_main.c to try it out =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_module.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_module.c 26 Nov 2004 10:57:58 -0000 1.3 +++ e_module.c 26 Nov 2004 10:59:26 -0000 1.4 @@ -52,6 +52,8 @@ if (m) e_module_enable(m); m = e_module_new("dropshadow"); if (m) e_module_enable(m); +/* m = e_module_new("clock"); + if (m) e_module_enable(m);*/ } return 1; |
From: <enl...@li...> - 2004-11-26 10:59:36
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules Modified Files: Makefile.am Log Message: Added clock module - read notes at top of e_mod_main.c to try it out =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/Makefile.am,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- Makefile.am 25 Nov 2004 03:37:45 -0000 1.1 +++ Makefile.am 26 Nov 2004 10:59:26 -0000 1.2 @@ -2,4 +2,5 @@ SUBDIRS = \ test \ ibar \ +clock \ dropshadow |
From: <enl...@li...> - 2004-11-26 16:51:20
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/clock Modified Files: e_mod_main.c Log Message: Actually save as we get disabled, so we load same state when re-enabled =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/clock/e_mod_main.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_mod_main.c 26 Nov 2004 10:53:38 -0000 1.1 +++ e_mod_main.c 26 Nov 2004 16:51:12 -0000 1.2 @@ -86,6 +86,7 @@ ecore_config_int_set("e.module.clock.x", e->face->fx); ecore_config_int_set("e.module.clock.y", e->face->fy); ecore_config_int_set("e.module.clock.width", e->face->fw); + e_config_save_queue(); return 1; } |
From: <enl...@li...> - 2004-11-27 20:14:20
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/clock Modified Files: e_mod_main.c Log Message: Remove note now that the default theme is in cvs - nice one raster :) Add edge checking for move and resize =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/clock/e_mod_main.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_mod_main.c 27 Nov 2004 16:33:22 -0000 1.3 +++ e_mod_main.c 27 Nov 2004 18:17:21 -0000 1.4 @@ -1,23 +1,9 @@ #include "e.h" #include "e_mod_main.h" -/* NOTE: - * - * currently the edje data to display the clock is not in CVS, to use the clock - * you must: - * a) set up expedition to get mouse events - in parts/bg.edc set part "bg"'s - * mouse_events to 1 - * b) build expedition.eet with this change - * c) copy your "expedition.eet" to - * $PREFIX/lib/enlightenment/modules/clock/default.eet - * d) in src/bin/e_module.c uncomment the lines: - * m = e_module_new("clock"); - * e_module_enable(m); - */ - /* TODO List: * - * Add checking for screen edges - do not want to drag off screen + * fix up a better default x and y * */ @@ -310,8 +296,9 @@ { Evas_Event_Mouse_Move *ev; Clock_Face *ef; - Evas_Coord x, y, w, h, cx, cy; + Evas_Coord x, y, w, h, cx, cy, sw, sh; evas_pointer_canvas_xy_get(e, &cx, &cy); + evas_output_viewport_get(e, NULL, NULL, &sw, &sh); ev = event_info; ef = data; @@ -319,6 +306,10 @@ { ef->fx += cx - ef->xx; ef->fy += cy - ef->yy; + if (ef->fx < 0) ef->fx = 0; + if (ef->fy < 0) ef->fy = 0; + if (ef->fx + ef->fw > sw) ef->fx = sw - ef->fw; + if (ef->fy + ef->fw > sh) ef->fy = sh - ef->fw; evas_object_move(ef->clock_object, ef->fx, ef->fy); evas_object_move(ef->event_object, ef->fx, ef->fy); } @@ -330,6 +321,8 @@ ef->fw += d; if (ef->fw < ef->minsize) ef->fw = ef->minsize; if (ef->fw > ef->maxsize) ef->fw = ef->maxsize; + if (ef->fx + ef->fw > sw) ef->fw = sw - ef->fx; + if (ef->fy + ef->fw > sh) ef->fw = sh - ef->fy; evas_object_resize(ef->clock_object, ef->fw, ef->fw); evas_object_resize(ef->event_object, ef->fw, ef->fw); } |
From: <enl...@li...> - 2004-12-09 17:45:20
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_main.c Log Message: Bad raster (hehe) stop overwriting my files... =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_main.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- e_main.c 9 Dec 2004 13:56:06 -0000 1.10 +++ e_main.c 9 Dec 2004 17:45:09 -0000 1.11 @@ -405,7 +405,7 @@ } /* FIXME: THIS is a hack to get people started!!! */ - snprintf(buf, sizeof(buf), "%s/.e/e/applications/all/eterm.eet", homedir); + snprintf(buf, sizeof(buf), "%s/.e/e/applications/all/eterm.eapp", homedir); if (!e_file_exists(buf)) { printf("GETTING YOU STARTED!\n"); |
From: <enl...@li...> - 2004-12-09 18:51:59
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/snow Log Message: Directory /cvsroot/enlightenment/e17/apps/e/src/modules/snow added to the repository |
From: <enl...@li...> - 2004-12-09 18:54:03
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/snow Added Files: .cvsignore Makefile.am e_mod_main.c e_mod_main.h flake-l.png flake-m.png flake-s.png module_icon.png tree.png Log Message: Added snow module, just started but looking OK - give it a shot (enlightenment_remote -module-load if it is not in the menu) |
From: <enl...@li...> - 2004-12-09 18:54:04
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules Modified Files: Makefile.am Log Message: Added snow module, just started but looking OK - give it a shot (enlightenment_remote -module-load if it is not in the menu) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/Makefile.am,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- Makefile.am 8 Dec 2004 17:35:58 -0000 1.3 +++ Makefile.am 9 Dec 2004 18:53:50 -0000 1.4 @@ -4,4 +4,5 @@ ibar \ clock \ flame \ +snow \ dropshadow |
From: <enl...@li...> - 2004-12-09 18:54:27
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_config.c Log Message: Added snow module, just started but looking OK - give it a shot (enlightenment_remote -module-load if it is not in the menu) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_config.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_config.c 6 Dec 2004 06:03:01 -0000 1.4 +++ e_config.c 9 Dec 2004 18:53:50 -0000 1.5 @@ -75,6 +75,9 @@ em->name = strdup("clock"); em->enabled = 1; e_config->modules = evas_list_append(e_config->modules, em); + em = E_NEW(E_Config_Module, 1); + em->name = strdup("snow"); + e_config->modules = evas_list_append(e_config->modules, em); } } |
From: <enl...@li...> - 2004-12-09 18:54:28
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e Modified Files: configure.in Log Message: Added snow module, just started but looking OK - give it a shot (enlightenment_remote -module-load if it is not in the menu) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/configure.in,v retrieving revision 1.35 retrieving revision 1.36 diff -u -3 -r1.35 -r1.36 --- configure.in 8 Dec 2004 17:35:58 -0000 1.35 +++ configure.in 9 Dec 2004 18:53:50 -0000 1.36 @@ -182,6 +182,7 @@ src/modules/ibar/Makefile src/modules/clock/Makefile src/modules/flame/Makefile +src/modules/snow/Makefile src/modules/dropshadow/Makefile data/Makefile data/fonts/Makefile |
From: <enl...@li...> - 2004-12-09 23:07:52
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/snow Modified Files: e_mod_main.c e_mod_main.h Log Message: small fixes and slow the snow fall =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/snow/e_mod_main.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_mod_main.c 9 Dec 2004 18:53:50 -0000 1.1 +++ e_mod_main.c 9 Dec 2004 23:07:39 -0000 1.2 @@ -96,10 +96,6 @@ { Snow *snow; Evas_List *managers, *l, *l2; - Evas_Object *o; - Evas_Coord xx, yy, ww, hh; - char buf[4096]; - int tw, th, i; snow = calloc(1, sizeof(Snow)); if (!snow) return NULL; @@ -137,6 +133,7 @@ } } + evas_output_viewport_get(snow->canvas, NULL, NULL, &snow->width, &snow->height); _snow_trees_load(snow); _snow_flakes_load('s', snow); _snow_flakes_load('m', snow); @@ -275,11 +272,9 @@ static void _snow_trees_load(Snow *snow) { Evas_Object *o; - Evas_Coord xx, yy, ww, hh; char buf[4096]; int tw, th, i; - evas_output_viewport_get(snow->canvas, &xx, &yy, &ww, &hh); snprintf(buf, sizeof(buf), "%s/tree.png", e_module_dir_get(snow->module)); o = evas_object_image_add(snow->canvas); @@ -297,8 +292,8 @@ evas_object_image_alpha_set(o, 1); evas_object_image_fill_set(o, 0, 0, tw, th); - tx = random() % (ww - tw); - ty = random() % (hh - th); + tx = random() % (snow->width - tw); + ty = random() % (snow->height - th); evas_object_move(o, tx, ty); evas_object_show(o); snow->trees = evas_list_append(snow->trees, o); @@ -376,9 +371,9 @@ flake = next->data; d = ecore_time_get() - flake->start_time; - y = 100 * d * flake->speed; + y = 30 * d * flake->speed; evas_object_geometry_get(flake->flake, &x, NULL, NULL, NULL); - if (y > 1024) /* FIXME */ + if (y > snow->height) flake->start_time = ecore_time_get() + (double) (random() % 100) / (double) 100; evas_object_move(flake->flake, x, y); =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/snow/e_mod_main.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_mod_main.h 9 Dec 2004 18:53:50 -0000 1.1 +++ e_mod_main.h 9 Dec 2004 23:07:40 -0000 1.2 @@ -22,6 +22,7 @@ E_Config_DD *conf_edd; Config *conf; + Evas_Coord width, height; }; struct _Snow_Flake |
From: <enl...@li...> - 2004-12-09 23:09:34
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/flame Added Files: .cvsignore Log Message: silent flames |
From: <enl...@li...> - 2004-12-21 15:17:08
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_container.c e_int_menus.c e_int_menus.h Log Message: be gone demons of test menu nastiness fix a few typo bugs on client list menu move client menu to middle click - feel free to slap me down, just think it looks nicer like this =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_container.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_container.c 21 Dec 2004 03:01:19 -0000 1.3 +++ e_container.c 21 Dec 2004 15:17:01 -0000 1.4 @@ -351,112 +351,12 @@ } else if (ev->button == 2) { - static E_Menu *m = NULL; - static E_Menu *m1 = NULL; - static E_Menu *m2 = NULL; - - if (!m) - { - E_Menu_Item *mi; - - m1 = e_menu_new(); - mi = e_menu_item_new(m1); - e_menu_item_label_set(mi, "Submenu 1 Item 1"); - mi = e_menu_item_new(m1); - e_menu_item_label_set(mi, "Submenu 1 Item 2"); - mi = e_menu_item_new(m1); - e_menu_item_label_set(mi, "Submenu 1 Item 3"); - - m2 = e_menu_new(); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "Flimstix"); - e_menu_item_icon_file_set(mi, - e_path_find(path_images, "e.png")); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "Shub Shub"); - e_menu_item_icon_file_set(mi, - e_path_find(path_images, "e.png")); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "Gah I thought I'd just make this long"); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "And more"); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "Getting stenchy"); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "Ich bin ein Fisch"); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "PONG"); - mi = e_menu_item_new(m2); - e_menu_item_label_set(mi, "The last word"); - - m = e_menu_new(); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "First Menu Item"); - e_menu_item_icon_file_set(mi, - e_path_find(path_images, "e.png")); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "Short"); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "A very long menu item is here to test with"); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "There is no spoon!"); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "Icon: Pants On."); - e_menu_item_icon_file_set(mi, - e_path_find(path_images, "e.png")); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "First Submenu"); - e_menu_item_submenu_set(mi, m1); - mi = e_menu_item_new(m); - e_menu_item_separator_set(mi, 1); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "Other side of a separator"); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "A Submenu"); - e_menu_item_icon_file_set(mi, - e_path_find(path_images, "e.png")); - e_menu_item_submenu_set(mi, m2); - mi = e_menu_item_new(m); - e_menu_item_check_set(mi, 1); - e_menu_item_label_set(mi, "Check 1"); - e_menu_item_icon_file_set(mi, - e_path_find(path_images, "e.png")); - mi = e_menu_item_new(m); - e_menu_item_check_set(mi, 1); - e_menu_item_label_set(mi, "Check 2"); - mi = e_menu_item_new(m); - e_menu_item_check_set(mi, 1); - e_menu_item_label_set(mi, "Check 3"); - mi = e_menu_item_new(m); - e_menu_item_separator_set(mi, 1); - mi = e_menu_item_new(m); - e_menu_item_radio_set(mi, 1); - e_menu_item_radio_group_set(mi, 1); - e_menu_item_label_set(mi, "Radio 1 Group 1"); - mi = e_menu_item_new(m); - e_menu_item_radio_set(mi, 1); - e_menu_item_radio_group_set(mi, 1); - e_menu_item_label_set(mi, "Radio 2 Group 1"); - mi = e_menu_item_new(m); - e_menu_item_radio_set(mi, 1); - e_menu_item_radio_group_set(mi, 1); - e_menu_item_label_set(mi, "Radio 3 Group 1"); - e_menu_item_icon_file_set(mi, - e_path_find(path_images, "e.png")); - mi = e_menu_item_new(m); - e_menu_item_separator_set(mi, 1); - mi = e_menu_item_new(m); - e_menu_item_radio_set(mi, 1); - e_menu_item_radio_group_set(mi, 2); - e_menu_item_label_set(mi, "Radio 1 Group 2"); - mi = e_menu_item_new(m); - e_menu_item_radio_set(mi, 1); - e_menu_item_radio_group_set(mi, 2); - e_menu_item_label_set(mi, "Radio 2 Group 2"); - } - e_menu_activate_mouse(m, con, ev->output.x, ev->output.y, 1, 1, + E_Menu *m; + + m = e_int_menus_clients_new(); + m->con = con; + e_menu_activate_mouse(m, con, ev->output.x, ev->output.y, 1, 1, E_MENU_POP_DIRECTION_DOWN); - /* fake the up event as we will now grab the mouse to the menu */ e_util_container_fake_mouse_up_all_later(con); } else if (ev->button == 3) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_menus.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_int_menus.c 21 Dec 2004 03:01:19 -0000 1.3 +++ e_int_menus.c 21 Dec 2004 15:17:01 -0000 1.4 @@ -49,12 +49,6 @@ e_menu_item_label_set(mi, "Modules"); e_menu_item_submenu_set(mi, subm); - subm = e_menu_new(); - e_menu_pre_activate_callback_set(subm, _e_int_menus_clients_pre_cb, NULL); - mi = e_menu_item_new(m); - e_menu_item_label_set(mi, "Clients"); - e_menu_item_submenu_set(mi, subm); - mi = e_menu_item_new(m); e_menu_item_separator_set(mi, 1); @@ -88,13 +82,15 @@ } E_Menu * -e_int_menus_clients_new(char *dir, int top) +e_int_menus_clients_new() { E_Menu *m; E_Menu_Item *mi; m = e_menu_new(); - + e_menu_pre_activate_callback_set(m, _e_int_menus_clients_pre_cb, NULL); + + return m; } /* local subsystem functions */ @@ -230,9 +226,9 @@ } /* get the current containers clients */ - if (m->parent_item && m->parent_item->menu && m->parent_item->menu->con) + if (m->con) { - for (l = e_container_clients_list_get(m->parent_item->menu->con); l; l = l->next) + for (l = e_container_clients_list_get(m->con); l; l = l->next) { borders = evas_list_append(borders, l->data); } @@ -244,7 +240,13 @@ if (!evas_list_find(borders, l->data)) borders = evas_list_append(borders, l->data); } - + + if (!borders) + { /* FIXME here we want nothing, but that crashes!!! */ + mi = e_menu_item_new(m); + e_menu_item_label_set(mi, "empty"); + return; + } for (l = borders; l; l = l->next) { E_Border *bd = l->data; =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_menus.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- e_int_menus.h 25 Nov 2004 05:31:20 -0000 1.2 +++ e_int_menus.h 21 Dec 2004 15:17:01 -0000 1.3 @@ -2,6 +2,7 @@ #define E_INT_MENUS_H EAPI E_Menu *e_int_menus_about_new(void); +EAPI E_Menu *e_int_menus_client_new(void); EAPI E_Menu *e_int_menus_apps_new(char *dir, int top); #endif |
From: <enl...@li...> - 2004-12-22 10:41:14
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_menus.c e_menu.c e_menu.h Log Message: Set client list to fit better with rasters master plan, now client menu can be at any depth :) demonstrated by putting a clone where it was origionally entered =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_menus.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_int_menus.c 21 Dec 2004 15:17:01 -0000 1.4 +++ e_int_menus.c 22 Dec 2004 10:41:03 -0000 1.5 @@ -49,6 +49,11 @@ e_menu_item_label_set(mi, "Modules"); e_menu_item_submenu_set(mi, subm); + subm = e_int_menus_clients_new(); + mi = e_menu_item_new(m); + e_menu_item_label_set(mi, "Clients"); + e_menu_item_submenu_set(mi, subm); + mi = e_menu_item_new(m); e_menu_item_separator_set(mi, 1); @@ -210,6 +215,7 @@ { E_Menu_Item *mi; Evas_List *l, *borders = NULL; + E_Menu *root; if (m->realized) return; @@ -225,10 +231,11 @@ } + root = e_menu_root_get(m); /* get the current containers clients */ - if (m->con) + if (root && root->con) { - for (l = e_container_clients_list_get(m->con); l; l = l->next) + for (l = e_container_clients_list_get(root->con); l; l = l->next) { borders = evas_list_append(borders, l->data); } =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_menu.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_menu.c 14 Dec 2004 03:32:25 -0000 1.3 +++ e_menu.c 22 Dec 2004 10:41:03 -0000 1.4 @@ -240,6 +240,20 @@ m->post_deactivate_cb.data = data; } +E_Menu * +e_menu_root_get(E_Menu *m) +{ + E_Menu *ret; + + E_OBJECT_CHECK_RETURN(m, NULL); + ret = m; + while (ret->parent_item && ret->parent_item->menu) + { + ret = ret->parent_item->menu; + } + + return ret; +} E_Menu_Item * e_menu_item_new(E_Menu *m) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_menu.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- e_menu.h 25 Nov 2004 05:31:20 -0000 1.2 +++ e_menu.h 22 Dec 2004 10:41:03 -0000 1.3 @@ -119,6 +119,8 @@ EAPI void e_menu_pre_activate_callback_set(E_Menu *m, void (*func) (void *data, E_Menu *m), void *data); EAPI void e_menu_post_deactivate_callback_set(E_Menu *m, void (*func) (void *data, E_Menu *m), void *data); +EAPI E_Menu *e_menu_root_get(E_Menu *m); + EAPI E_Menu_Item *e_menu_item_new(E_Menu *m); EAPI E_Menu_Item *e_menu_item_nth(E_Menu *m, int n); EAPI int e_menu_item_num_get(E_Menu_Item *mi); |
From: <enl...@li...> - 2004-12-22 15:50:34
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: Added first take on border menus, may need a little tidying install e_utils module for full icon editing effect need to fix up icon creation in eapp_edit, then hook in file name generation here will be able to pass in window class, which will save folk a lot of time =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- e_border.c 21 Dec 2004 03:01:19 -0000 1.26 +++ e_border.c 22 Dec 2004 15:50:26 -0000 1.27 @@ -61,6 +61,12 @@ static void _e_border_resize_handle(E_Border *bd); static int _e_border_shade_animator(void *data); +static void _e_border_menu_show(E_Border *bd, Evas_Coord x, Evas_Coord y); +static void _e_border_menu_cb_close(void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_border_menu_cb_iconify(void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_border_menu_cb_maximize(void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_border_menu_cb_shade(void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_border_menu_cb_icon_edit(void *data, E_Menu *m, E_Menu_Item *mi); /* local subsystem globals */ static Evas_List *handlers = NULL; @@ -1163,7 +1169,7 @@ ecore_x_sync(); // ecore_x_window_del(bd->client.win); e_object_del(E_OBJECT(bd)); - } + } } else if (!strcmp(source, "shade_up") || !strcmp(source, "shade")) { @@ -1195,7 +1201,12 @@ if (bd->iconic) e_border_uniconify(bd); else e_border_iconify(bd); } - + else if (!strcmp(source, "menu")) + { + Evas_Coord x, y; + evas_pointer_canvas_xy_get(bd->bg_evas , &x, &y); + _e_border_menu_show(bd, x + bd->x, y + bd->y); + } } @@ -2258,3 +2269,142 @@ return 1; } +E_Menu *_e_border_menu; + +static void +_e_border_menu_show(E_Border *bd, Evas_Coord x, Evas_Coord y) +{ + E_Menu *m; + E_Menu_Item *mi; + E_App *a; + + if (!_e_border_menu) + _e_border_menu= e_menu_new(); + m = _e_border_menu; + + /* clear menu */ + if (m->items) + { + Evas_List *l; + for (l = m->items; l; l = l->next) + { + E_Menu_Item *mi = l->data; + e_object_free(E_OBJECT(mi)); + } + + } + + mi = e_menu_item_new(m); + e_menu_item_label_set(mi, "Close"); + e_menu_item_callback_set(mi, _e_border_menu_cb_close, bd); + e_menu_item_callback_set(mi, _e_border_menu_cb_maximize, bd); + mi = e_menu_item_new(m); + if (bd->shaded) + e_menu_item_label_set(mi, "Un-Shade"); + else + e_menu_item_label_set(mi, "Shade"); + e_menu_item_callback_set(mi, _e_border_menu_cb_shade, bd); + + mi = e_menu_item_new(m); + e_menu_item_label_set(mi, "Iconify"); + e_menu_item_callback_set(mi, _e_border_menu_cb_iconify, bd); + mi = e_menu_item_new(m); + if (bd->maximized) + e_menu_item_label_set(mi, "Restore"); + else + e_menu_item_label_set(mi, "Maximise"); + e_menu_item_callback_set(mi, _e_border_menu_cb_maximize, bd); + + mi = e_menu_item_new(m); + e_menu_item_separator_set(mi, 1); + + a = e_app_window_name_class_find(bd->client.icccm.name, + bd->client.icccm.class); + + if (a) + { + mi = e_menu_item_new(m); + e_menu_item_label_set(mi, "Edit Icon"); + e_menu_item_callback_set(mi, _e_border_menu_cb_icon_edit, a->path); + } + else + { + mi = e_menu_item_new(m); + e_menu_item_label_set(mi, "Create Icon"); + /* FIXME need to create path for newly created icon */ + e_menu_item_callback_set(mi, _e_border_menu_cb_icon_edit, ""); + } + + e_menu_activate_mouse(m, bd->container, x, y, 1, 1, + E_MENU_POP_DIRECTION_DOWN); + +} + +static void +_e_border_menu_cb_close(void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Border *bd; + + bd = data; + if (bd->client.icccm.delete_request) + ecore_x_window_delete_request_send(bd->client.win); + else + { + ecore_x_kill(bd->client.win); + ecore_x_sync(); +// ecore_x_window_del(bd->client.win); + e_object_del(E_OBJECT(bd)); + } +} + +static void +_e_border_menu_cb_iconify(void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Border *bd; + + bd = data; + if (bd->maximized) e_border_uniconify(bd); + else e_border_iconify(bd); +} + +static void +_e_border_menu_cb_maximize(void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Border *bd; + + bd = data; + if (bd->maximized) e_border_unmaximize(bd); + else e_border_maximize(bd); +} + +static void +_e_border_menu_cb_shade(void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Border *bd; + + bd = data; + if (bd->shaded) e_border_unshade(bd, E_DIRECTION_UP); + else e_border_shade(bd, E_DIRECTION_UP); +} + +static void +_e_border_menu_cb_icon_edit(void *data, E_Menu *m, E_Menu_Item *mi) +{ + char *file; + char *command; + char *full; + Ecore_Exe *process; + + file = data; + command = "e_util_eapp_edit "; + full = malloc(strlen(file) + strlen(command) + 1); + strcpy(full, command); + strcat(full, file); + printf("e_util_eapp_edit %s\n", full); + process = ecore_exe_run(full, NULL); + if (!process || !ecore_exe_pid_get(process)) + e_error_dialog_show("Icon Edit Error", "Error starting icon editor\n\n \ + please install e_util_eapp_edit\n \ + or make sure it is in your PATH\n"); +} + |
From: <enl...@li...> - 2004-12-22 15:51:06
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/data/themes Modified Files: default.edc Log Message: Added first take on border menus, may need a little tidying install e_utils module for full icon editing effect need to fix up icon creation in eapp_edit, then hook in file name generation here will be able to pass in window class, which will save folk a lot of time =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/data/themes/default.edc,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- default.edc 21 Dec 2004 03:03:23 -0000 1.14 +++ default.edc 22 Dec 2004 15:50:25 -0000 1.15 @@ -1595,6 +1595,12 @@ action: SIGNAL_EMIT "resize_stop" "mouse,1"; } program { + name: "menu_action"; + signal: "mouse,clicked,1"; + source: "icon"; + action: SIGNAL_EMIT "action" "menu"; + } + program { name: "close_action"; signal: "mouse,clicked,1"; source: "button_0"; |
From: <enl...@li...> - 2004-12-22 16:33:35
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: hmm, weirdness - bad copy paste :( =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -3 -r1.27 -r1.28 --- e_border.c 22 Dec 2004 15:50:26 -0000 1.27 +++ e_border.c 22 Dec 2004 16:33:25 -0000 1.28 @@ -2297,7 +2297,6 @@ mi = e_menu_item_new(m); e_menu_item_label_set(mi, "Close"); e_menu_item_callback_set(mi, _e_border_menu_cb_close, bd); - e_menu_item_callback_set(mi, _e_border_menu_cb_maximize, bd); mi = e_menu_item_new(m); if (bd->shaded) e_menu_item_label_set(mi, "Un-Shade"); |
From: <enl...@li...> - 2004-12-23 11:39:15
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: Finish icon creation code, a little feeble now, but works big feature: passes in window class - no moew xprop nonsense :) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.31 retrieving revision 1.32 diff -u -3 -r1.31 -r1.32 --- e_border.c 23 Dec 2004 06:38:27 -0000 1.31 +++ e_border.c 23 Dec 2004 11:39:08 -0000 1.32 @@ -2318,10 +2318,28 @@ } else { + static char buf[PATH_MAX + 50]; + char *name, *homedir; + int i; + + buf[0] = '\0'; + /* generate a reasonable file name from the window class */ + /* FIXME - I think there could be duplicates - how better to do this? */ + name = strdup(bd->client.icccm.class); + for (i = 0; i < strlen(name); i++) + { + if (name[i] == ' ') + name[i] = '_'; + } + /* previously this could be null, but it will exist now */ + homedir = e_user_homedir_get(); + + snprintf(buf, sizeof(buf), + "--win-class %s %s/.e/e/applications/all/%s.eapp", + bd->client.icccm.class, homedir, name); mi = e_menu_item_new(m); e_menu_item_label_set(mi, "Create Icon"); - /* FIXME need to create path for newly created icon */ - e_menu_item_callback_set(mi, _e_border_menu_cb_icon_edit, ""); + e_menu_item_callback_set(mi, _e_border_menu_cb_icon_edit, buf); } e_menu_activate_mouse(m, bd->container, x, y, 1, 1, @@ -2389,7 +2407,7 @@ full = malloc(strlen(file) + strlen(command) + 1); strcpy(full, command); strcat(full, file); - printf("e_util_eapp_edit %s\n", full); + printf("EXEC %s\n", full); process = ecore_exe_run(full, NULL); if (!process || !ecore_exe_pid_get(process)) e_error_dialog_show("Icon Edit Error", "Error starting icon editor\n\n \ |
From: <enl...@li...> - 2005-01-03 20:35:24
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_object.h Log Message: Missing casts =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_object.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- e_object.h 25 Nov 2004 05:31:20 -0000 1.2 +++ e_object.h 3 Jan 2005 20:35:16 -0000 1.3 @@ -32,8 +32,8 @@ # define E_OBJECT_CHECK_RETURN(x, ret) {if (e_object_error(E_OBJECT(x))) return ret;} #else # ifdef OBJECT_CHECK -# define E_OBJECT_CHECK(x) {if ((!x) || (x->magic != E_OBJECT_MAGIC)) return;} -# define E_OBJECT_CHECK_RETURN(x, ret) {if ((!x) || (x->magic != E_OBJECT_MAGIC)) return ret;} +# define E_OBJECT_CHECK(x) {if ((!E_OBJECT(x)) || (E_OBJECT(x)->magic != E_OBJECT_MAGIC)) return;} +# define E_OBJECT_CHECK_RETURN(x, ret) {if ((!E_OBJECT(x)) || (E_OBJECT(x)->magic != E_OBJECT_MAGIC)) return ret;} # else # define E_OBJECT_CHECK(x) # define E_OBJECT_CHECK_RETURN(x, ret) |
From: <enl...@li...> - 2005-01-03 21:10:17
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_container.c e_desk.c e_int_menus.c Log Message: fix a couple of warnings etc - now no segs, but desks lose clients =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_container.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- e_container.c 3 Jan 2005 20:40:26 -0000 1.12 +++ e_container.c 3 Jan 2005 21:10:08 -0000 1.13 @@ -57,7 +57,7 @@ ecore_evas_show(con->bg_ecore_evas); e_path_evas_append(path_fonts, con->bg_evas); - ecore_evas_callback_resize_set(con->bg_evas, _e_container_cb_bg_ecore_evas_resize); + ecore_evas_callback_resize_set(con->bg_ecore_evas, _e_container_cb_bg_ecore_evas_resize); e_pointer_container_set(con); =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_desk.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_desk.c 3 Jan 2005 20:23:47 -0000 1.3 +++ e_desk.c 3 Jan 2005 21:10:08 -0000 1.4 @@ -17,7 +17,6 @@ char name[40]; desk = E_OBJECT_ALLOC(E_Desk, _e_desk_free); - memset(desk, 0, sizeof(E_Desk)); if (!desk) return NULL; desk->zone = zone; @@ -50,7 +49,7 @@ { E_Border *bd = l->data; - if (evas_list_find(desk->clients, bd)) + if (desk->clients && evas_list_find(desk->clients, bd)) e_border_show(bd); else e_border_hide(bd); =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_menus.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- e_int_menus.c 3 Jan 2005 09:34:24 -0000 1.14 +++ e_int_menus.c 3 Jan 2005 21:10:08 -0000 1.15 @@ -336,8 +336,6 @@ e_menu_item_callback_set(mi, _e_int_menus_desktops_item_cb, desk); if (desk == e_desk_current_get(zone)) e_menu_item_toggle_set(mi, 1); - e_menu_item_icon_edje_set(mi, e_path_find(path_icons, "default.eet"), - "desktop"); } } |
From: <enl...@li...> - 2005-01-04 01:09:28
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/temperature Added Files: .cvsignore Log Message: shh |
From: <enl...@li...> - 2005-01-04 01:09:29
|
Enlightenment CVS committal Author : handyande Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/battery Added Files: .cvsignore Log Message: shh |