Enlightenment CVS committal
Author : raster
Project : e17
Module : libs/ecore
Dir : e17/libs/ecore/src/bin
Modified Files:
Tag: SPLIT
ecore_test.c
Log Message:
more work on ecore_x and ecore_evas... coming along nicely. handles override
mode (switching to and form) managed) and full screen mode happily.
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/bin/Attic/ecore_test.c,v
retrieving revision 1.1.2.16
retrieving revision 1.1.2.17
diff -u -3 -r1.1.2.16 -r1.1.2.17
--- ecore_test.c 8 Feb 2003 02:15:21 -0000 1.1.2.16
+++ ecore_test.c 8 Feb 2003 05:05:03 -0000 1.1.2.17
@@ -253,6 +253,7 @@
/**** ECORE_EVAS TEST CODE */
+Ecore_Timer *anim_timer = NULL;
Ecore_Evas *ee = NULL;
Evas *evas = NULL;
Evas_Object *objects[64];
@@ -284,6 +285,45 @@
}
void
+del_req(Ecore_Evas *ee)
+{
+ int i;
+
+ printf("request to go away... nice exit\n");
+ for (i = 0; i < (sizeof(objects) / sizeof(Evas_Object *)); i++)
+ objects[i] = NULL;
+ ecore_timer_del(anim_timer);
+ anim_timer = NULL;
+ ecore_evas_free(ee);
+ ecore_main_loop_quit();
+}
+
+static void
+cb_key_down(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
+ Evas_Event_Key_Down *ev;
+
+ ev = event_info;
+ if (!strcmp(ev->keyname, "Escape")) ecore_main_loop_quit();
+ if (!strcmp(ev->keyname, "q")) ecore_main_loop_quit();
+ if (!strcmp(ev->keyname, "Q")) ecore_main_loop_quit();
+ if (!strcmp(ev->keyname, "f"))
+ {
+ if (!ecore_evas_fullscreen_get(ee))
+ ecore_evas_fullscreen_set(ee, 1);
+ else
+ ecore_evas_fullscreen_set(ee, 0);
+ }
+ if (!strcmp(ev->keyname, "o"))
+ {
+ if (!ecore_evas_override_get(ee))
+ ecore_evas_override_set(ee, 1);
+ else
+ ecore_evas_override_set(ee, 0);
+ }
+}
+
+void
setup_ecore_evas_test(void)
{
Evas_Object *o;
@@ -293,6 +333,8 @@
ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 240, 320);
ecore_evas_title_set(ee, "Ecore Evas Test");
ecore_evas_name_class_set(ee, "ecore_test", "test_evas");
+ /* callback if clsoe button is pressed and win is asked to be deleted */
+ ecore_evas_callback_delete_request_set(ee, del_req);
/* get the actual evas ecore created for us */
evas = ecore_evas_get(ee);
@@ -309,6 +351,8 @@
evas_object_move(o, 0, 0);
evas_object_resize(o, 100000, 100000);
evas_object_layer_set(o, -1000000);
+ evas_object_event_callback_add(o, EVAS_CALLBACK_KEY_DOWN, cb_key_down, ee);
+ evas_object_focus_set(o, 1);
evas_object_show(o);
/* make a bunch of rectangles */
@@ -327,8 +371,8 @@
objects[i] = o;
}
/* add a timer to animate them */
- ecore_timer_add(0.01, obj_timer, NULL);
-
+ anim_timer = ecore_timer_add(0.01, obj_timer, NULL);
+
ecore_evas_show(ee);
}
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs