Enlightenment CVS committal

Author  : tsauerbeck
Project : misc
Module  : eplayer

Dir     : misc/eplayer/src


Modified Files:
        callbacks.c callbacks.h interface.c 


Log Message:
Added resize handlers and stuff. The ePlayer window can be raised now by clicking the 
titlebar.
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/callbacks.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -3 -r1.18 -r1.19
--- callbacks.c 25 Nov 2003 17:50:57 -0000      1.18
+++ callbacks.c 30 Nov 2003 14:44:20 -0000      1.19
@@ -223,6 +223,13 @@
        ecore_main_loop_quit();
 }
 
+void cb_eplayer_raise(void *udata, Evas_Object *obj,
+                      const char *emission, const char *src) {
+       ePlayer *player = udata;
+
+       ecore_evas_raise(player->gui.ee);
+}
+
 void cb_switch_group(void *udata, Evas_Object *obj,
                      const char *emission, const char *src) {
        ePlayer *player = udata;
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/callbacks.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- callbacks.h 25 Nov 2003 17:50:57 -0000      1.8
+++ callbacks.h 30 Nov 2003 14:44:20 -0000      1.9
@@ -41,6 +41,8 @@
 
 void cb_eplayer_quit(void *udata, Evas_Object *obj,
                      const char *emission, const char *src);
+void cb_eplayer_raise(void *udata, Evas_Object *obj,
+                      const char *emission, const char *src);
 
 void cb_switch_group(void *udata, Evas_Object *obj,
                      const char *emission, const char *src);
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/interface.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -3 -r1.19 -r1.20
--- interface.c 26 Nov 2003 21:36:51 -0000      1.19
+++ interface.c 30 Nov 2003 14:44:20 -0000      1.20
@@ -24,6 +24,20 @@
        edje_freeze();
 }
 
+/**
+ * Resizes the Edje to the size of our Ecore Evas
+ *
+ * @param ee
+ */
+static void cb_ee_resize(Ecore_Evas *ee) {
+       Evas *evas = ecore_evas_get(ee);
+       Evas_Object *edje = evas_object_name_find(evas, "main_edje");
+       int w = 0, h = 0;
+
+       ecore_evas_geometry_get(ee, NULL, NULL, &w, &h);
+       evas_object_resize(edje, (Evas_Coord) w, (Evas_Coord) h);
+}
+
 int setup_gui(ePlayer *player) {
        debug(DEBUG_LEVEL_INFO, "Starting setup\n");
 
@@ -39,7 +53,6 @@
                player->gui.ee = ecore_evas_software_x11_new(NULL, 0,  0, 0,
                                                             500, 500);
 
-
        if (!player->gui.ee) {
                debug(DEBUG_LEVEL_CRITICAL,
                      "Cannot create Ecore Evas (using %s engine)\n",
@@ -58,6 +71,7 @@
                                           cb_ee_pre_render);
        ecore_evas_callback_post_render_set(player->gui.ee,
                                            cb_ee_post_render);
+       ecore_evas_callback_resize_set(player->gui.ee, cb_ee_resize);
 
        ecore_evas_show(player->gui.ee);
 
@@ -79,6 +93,7 @@
        debug(DEBUG_LEVEL_INFO, "EDJE: Defining Edje \n");
 
        player->gui.edje = edje_object_add(player->gui.evas);
+       evas_object_name_set(player->gui.edje, "main_edje");
        
        snprintf(eet, sizeof(eet), DATA_DIR "/themes/%s.eet",
                 player->cfg.theme);
@@ -90,16 +105,26 @@
        }
        
        evas_object_move(player->gui.edje, 0, 0);
-       edje_object_size_min_get(player->gui.edje, &edje_w, &edje_h);
-       evas_object_resize(player->gui.edje, edje_w, edje_h);
        evas_object_show(player->gui.edje);
 
-       ecore_evas_resize(player->gui.ee, (int) edje_w, (int) edje_h);
+       /* set max size */
+       edje_object_size_max_get(player->gui.edje, &edje_w, &edje_h);
+       ecore_evas_size_max_set(player->gui.ee, edje_w, edje_h);
 
+       /* set min size */
+       edje_object_size_min_get(player->gui.edje, &edje_w, &edje_h);
+       ecore_evas_size_min_set(player->gui.ee, edje_w, edje_h);
+       
+       /* resize to the min size */
+       ecore_evas_resize(player->gui.ee, (int) edje_w, (int) edje_h);
+       
        /*** Edje Callbacks ***************************/
        edje_object_signal_callback_add(player->gui.edje,
                                        "QUIT", "quit",
                                        cb_eplayer_quit, player);
+       edje_object_signal_callback_add(player->gui.edje,
+                                       "RAISE", "*",
+                                       cb_eplayer_raise, player);
        
        edje_object_signal_callback_add(player->gui.edje,
                                        "PLAY_PREVIOUS", "previous_button",




-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to