Enlightenment CVS committal Author : raster Project : e17 Module : apps/e
Dir : e17/apps/e/src/modules/ibar Modified Files: e_mod_config.c e_mod_main.c e_mod_main.h Log Message: 2 pending patches in my inbox. 1. "allow overlap" patch for modules - needs better names in the gui (Allow windows to overlap maybe - as allow overlap is very vague) 2. itray module (buggy - buggy - beware. i know why. beware i said!) 3. TODO items =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/ibar/e_mod_config.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- e_mod_config.c 14 Jan 2006 16:10:57 -0000 1.13 +++ e_mod_config.c 20 Jan 2006 04:04:13 -0000 1.14 @@ -10,6 +10,7 @@ int autofit; int follower; int iconsize; + int allow_overlap; double follow_speed; double autoscroll_speed; }; @@ -53,6 +54,7 @@ cfdata->autofit = (ib->conf->width == IBAR_WIDTH_AUTO); cfdata->follower = ib->conf->follower; cfdata->iconsize = ib->conf->iconsize; + cfdata->allow_overlap = ib->conf->allow_overlap; cfdata->follow_speed = ib->conf->follow_speed; cfdata->autoscroll_speed = ib->conf->autoscroll_speed; } @@ -93,6 +95,9 @@ e_widget_list_object_append(o, ob, 1, 1, 0.5); ob = e_widget_check_add(evas, _("Auto Fit Icons"), &(cfdata->autofit)); e_widget_list_object_append(o, ob, 1, 1, 0.5); + + ob = e_widget_check_add(evas, _("Allow Overlap"), &(cfdata->allow_overlap)); + e_widget_list_object_append(o, ob, 1, 1, 0.5); return o; } @@ -111,7 +116,12 @@ { ib->conf->follower = 0; } - + + if (cfdata->allow_overlap && !ib->conf->allow_overlap) + ib->conf->allow_overlap = 1; + else if (!cfdata->allow_overlap && ib->conf->allow_overlap) + ib->conf->allow_overlap = 0; + if ((cfdata->autofit) && (ib->conf->width == IBAR_WIDTH_FIXED)) { ib->conf->width = IBAR_WIDTH_AUTO; @@ -160,6 +170,12 @@ ob = e_widget_slider_add(evas, 1, 0, _("%1.2f px/s"), 0.0, 1.0, 0.01, 0, &(cfdata->autoscroll_speed), NULL,200); e_widget_framelist_object_append(of, ob); e_widget_list_object_append(o, of, 1, 1, 0.5); + + /* allow overlap checkbox */ + of = e_widget_framelist_add(evas, _("Extras"), 0); + ob = e_widget_check_add(evas, _("Allow Overlap"), &(cfdata->allow_overlap)); + e_widget_framelist_object_append(of, ob); + e_widget_list_object_append(o, of, 1, 1, 0.5); return o; } @@ -178,6 +194,12 @@ { ib->conf->follower = 0; } + + /* allow overlap check box */ + if (cfdata->allow_overlap && !ib->conf->allow_overlap) + ib->conf->allow_overlap = 1; + else if (!cfdata->allow_overlap && ib->conf->allow_overlap) + ib->conf->allow_overlap = 0; if ((cfdata->autofit) && (ib->conf->width == IBAR_WIDTH_FIXED)) { =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/ibar/e_mod_main.c,v retrieving revision 1.106 retrieving revision 1.107 diff -u -3 -r1.106 -r1.107 --- e_mod_main.c 7 Jan 2006 14:21:25 -0000 1.106 +++ e_mod_main.c 20 Jan 2006 04:04:13 -0000 1.107 @@ -222,6 +222,7 @@ E_CONFIG_VAL(D, T, autoscroll_speed, DOUBLE); E_CONFIG_VAL(D, T, iconsize, INT); E_CONFIG_VAL(D, T, width, INT); + E_CONFIG_VAL(D, T, allow_overlap, INT); E_CONFIG_LIST(D, T, bars, conf_bar_edd); ib->conf = e_config_domain_load("module.ibar", conf_edd); @@ -233,12 +234,14 @@ ib->conf->follow_speed = 0.9; ib->conf->autoscroll_speed = 0.95; ib->conf->iconsize = 24; + ib->conf->allow_overlap = 0; ib->conf->width = IBAR_WIDTH_AUTO; } E_CONFIG_LIMIT(ib->conf->follow_speed, 0.01, 1.0); E_CONFIG_LIMIT(ib->conf->autoscroll_speed, 0.01, 1.0); E_CONFIG_LIMIT(ib->conf->iconsize, 2, 400); E_CONFIG_LIMIT(ib->conf->width, -2, -1); + E_CONFIG_LIMIT(ib->conf->allow_overlap, 0, 1); _ibar_config_menu_new(ib); @@ -582,6 +585,12 @@ policy = E_GADMAN_POLICY_EDGES | E_GADMAN_POLICY_HMOVE | E_GADMAN_POLICY_VMOVE; if (ibb->ibar->conf->width == IBAR_WIDTH_FIXED) policy |= E_GADMAN_POLICY_HSIZE; + + if (ibb->ibar->conf->allow_overlap == 0) + policy &= ~E_GADMAN_POLICY_ALLOW_OVERLAP; + else + policy |= E_GADMAN_POLICY_ALLOW_OVERLAP; + e_gadman_client_policy_set(ibb->gmc, policy); e_gadman_client_min_size_set(ibb->gmc, 8, 8); e_gadman_client_max_size_set(ibb->gmc, 3200, 3200); @@ -1007,6 +1016,11 @@ e_box_align_set(ibb->box_object, 0.5, 0.5); policy = E_GADMAN_POLICY_EDGES | E_GADMAN_POLICY_HMOVE | E_GADMAN_POLICY_VMOVE; + if (ibb->ibar->conf->allow_overlap == 0) + policy &= ~E_GADMAN_POLICY_ALLOW_OVERLAP; + else + policy |= E_GADMAN_POLICY_ALLOW_OVERLAP; + if ((edge == E_GADMAN_EDGE_BOTTOM) || (edge == E_GADMAN_EDGE_TOP)) { @@ -1050,6 +1064,12 @@ E_Gadman_Policy policy; policy = E_GADMAN_POLICY_EDGES | E_GADMAN_POLICY_HMOVE | E_GADMAN_POLICY_VMOVE; + + if (ibb->ibar->conf->allow_overlap == 0) + policy &= ~E_GADMAN_POLICY_ALLOW_OVERLAP; + else + policy |= E_GADMAN_POLICY_ALLOW_OVERLAP; + if ((e_gadman_client_edge_get(ibb->gmc) == E_GADMAN_EDGE_BOTTOM) || (e_gadman_client_edge_get(ibb->gmc) == E_GADMAN_EDGE_TOP)) { =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/ibar/e_mod_main.h,v retrieving revision 1.28 retrieving revision 1.29 diff -u -3 -r1.28 -r1.29 --- e_mod_main.h 6 Jan 2006 21:30:53 -0000 1.28 +++ e_mod_main.h 20 Jan 2006 04:04:13 -0000 1.29 @@ -21,6 +21,7 @@ double autoscroll_speed; int iconsize; int width; + int allow_overlap; Evas_List *bars; }; ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs