Enlightenment CVS committal

Author  : pfritz
Project : e17
Module  : apps/elitaire

Dir     : e17/apps/elitaire/src


Modified Files:
        edje_frontend_gui.cpp 


Log Message:
scrolling in the menubars works now

===================================================================
RCS file: /cvs/e/e17/apps/elitaire/src/edje_frontend_gui.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- edje_frontend_gui.cpp       9 Jun 2007 23:20:09 -0000       1.2
+++ edje_frontend_gui.cpp       10 Jun 2007 10:06:53 -0000      1.3
@@ -34,10 +34,14 @@
                           const char * emission, const char * source);
 static void _elitaire_scroll_right_start_cb(void * data, Evas_Object * o,
                           const char * emission, const char * source);
+static void _elitaire_scroll_left_cb(void * data, Evas_Object * o,
+                          const char * emission, const char * source);
+static void _elitaire_scroll_right_cb(void * data, Evas_Object * o,
+                          const char * emission, const char * source);
 static void _key_down_cb(void * data, Evas * e, Evas_Object * obj,
                           void * event_info);
 static void _key_up_cb(void * data, Evas * e, Evas_Object * obj,
-                         void * event_info);
+                          void * event_info);
 
 /*
  * frontend initialation
@@ -135,10 +139,10 @@
 {
     if (ee) {
         Eli_App * eap;
-       Eli_Edje_Frontend * eef;
+        Eli_Edje_Frontend * eef;
 
         eap = (Eli_App *) ecore_evas_data_get(ee, "eap");
-       eef = eli_app_edje_frontend_get(eap);
+        eef = eli_app_edje_frontend_get(eap);
        
         if (eef->elitaire) {
             eap->next.game = strdup("exit");
@@ -238,6 +242,7 @@
         _eli_app_gui_swallow(eef->gui, "elitaire_cards_box", container);
         _eli_edje_frontend_cards_container_fill(eap, container);
 
+        /* for timer based scrolling, i.e. pressed button scrolling */
         edje_object_signal_callback_add(eef->gui, "scroll,stop",
                                         "elitaire_cards_box",
                                         _elitaire_scroll_stop_cb, container);
@@ -249,6 +254,16 @@
                                         "elitaire_cards_box",
                                         _elitaire_scroll_right_start_cb,
                                         container);
+
+        /* for interval scrolling, i.e. mouse wheel */
+        edje_object_signal_callback_add(eef->gui, "scroll,left",
+                                        "elitaire_cards_box",
+                                        _elitaire_scroll_left_cb,
+                                        container);
+        edje_object_signal_callback_add(eef->gui, "scroll,right",
+                                        "elitaire_cards_box",
+                                        _elitaire_scroll_right_cb,
+                                        container);
     }
 
     /* the theme bar */
@@ -264,6 +279,7 @@
         _eli_app_gui_swallow(eef->gui, "elitaire_theme_box", container);
         _eli_edje_frontend_theme_container_fill(eap, container);
 
+        /* for timer based scrolling, i.e. pressed button scrolling */
         edje_object_signal_callback_add(eef->gui, "scroll,stop",
                                         "elitaire_theme_box",
                                         _elitaire_scroll_stop_cb, container);
@@ -275,6 +291,16 @@
                                         "elitaire_theme_box",
                                         _elitaire_scroll_right_start_cb,
                                         container);
+
+        /* for interval scrolling, i.e. mouse wheel */
+        edje_object_signal_callback_add(eef->gui, "scroll,left",
+                                        "elitaire_theme_box",
+                                        _elitaire_scroll_left_cb,
+                                        container);
+        edje_object_signal_callback_add(eef->gui, "scroll,right",
+                                        "elitaire_theme_box",
+                                        _elitaire_scroll_right_cb,
+                                        container);
     }
 
     /*the menu bar */
@@ -301,6 +327,16 @@
                                         "elitaire_new_box",
                                         _elitaire_scroll_right_start_cb,
                                         container);
+        
+        /* for interval scrolling, i.e. mouse wheel */
+        edje_object_signal_callback_add(eef->gui, "scroll,left",
+                                        "elitaire_new_box",
+                                        _elitaire_scroll_left_cb,
+                                        container);
+        edje_object_signal_callback_add(eef->gui, "scroll,right",
+                                        "elitaire_new_box",
+                                        _elitaire_scroll_right_cb,
+                                        container);
 
     }
     /* theme parts for moving the window */
@@ -499,6 +535,26 @@
 
     container = (Evas_Object *) data;
     esmart_container_scroll_start(container, 2.0);
+}
+
+static void _elitaire_scroll_left_cb(void * data, Evas_Object * o,
+                                     const char * emission, const char * 
source)
+{
+    Evas_Object * container;
+
+    container = (Evas_Object *) data;
+    /* XXX this value shouldn't be hardcoded */
+    esmart_container_scroll(container, -10);
+}
+
+static void _elitaire_scroll_right_cb(void * data, Evas_Object * o,
+                                     const char * emission, const char * 
source)
+{
+    Evas_Object * container;
+
+    container = (Evas_Object *) data;
+    /* XXX this value shouldn't be hardcoded */
+    esmart_container_scroll(container, 10);
 }
 
 static void _key_down_cb(void * data, Evas * e, Evas_Object * obj, void * 
event_info)



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to