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

Reply via email to