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);
}
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs