Enlightenment CVS committal

Author  : iamsthitha
Project : e_modules
Module  : mpdule

Dir     : e_modules/mpdule


Modified Files:
        e_mod_main.c mpdule.edc 
Added Files:
        next.png pause.png play.png prev.png stop.png 


Log Message:
Control MPD via the module. Theme needs help!

===================================================================
RCS file: /cvs/e/e_modules/mpdule/e_mod_main.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- e_mod_main.c        12 Dec 2007 03:14:10 -0000      1.3
+++ e_mod_main.c        24 Dec 2007 21:40:33 -0000      1.4
@@ -32,6 +32,11 @@
                                       E_Menu_Item * mi);
 static void _mpdule_menu_cb_post (void *data, E_Menu * m);
 static int _mpdule_cb_check (void *data);
+static void _mpdule_cb_play(void *data, Evas_Object *obj, const char 
*emission, const char *source);
+static void _mpdule_cb_stop(void *data, Evas_Object *obj, const char 
*emission, const char *source);
+static void _mpdule_cb_pause(void *data, Evas_Object *obj, const char 
*emission, const char *source);
+static void _mpdule_cb_next(void *data, Evas_Object *obj, const char 
*emission, const char *source);
+static void _mpdule_cb_previous(void *data, Evas_Object *obj, const char 
*emission, const char *source);
 static Config_Item *_mpdule_config_item_get (const char *id);
 
 static E_Config_DD *conf_edd = NULL;
@@ -113,6 +118,16 @@
                                   _mpdule_cb_mouse_in, inst);
   evas_object_event_callback_add(inst->mpdule, EVAS_CALLBACK_MOUSE_OUT,
                                   _mpdule_cb_mouse_out, inst);
+  edje_object_signal_callback_add(o, "mpdule,play", "", _mpdule_cb_play, inst);
+  edje_object_signal_callback_add(o, "mpdule,stop", "", _mpdule_cb_stop, inst);
+  edje_object_signal_callback_add(o, "mpdule,pause", "", _mpdule_cb_pause, 
inst);
+  edje_object_signal_callback_add(o, "mpdule,next", "", _mpdule_cb_next, inst);
+  edje_object_signal_callback_add(o, "mpdule,previous", "", 
_mpdule_cb_previous, inst);
+  edje_object_signal_callback_add(o_popup, "mpdule,play", "", _mpdule_cb_play, 
inst);
+  edje_object_signal_callback_add(o_popup, "mpdule,stop", "", _mpdule_cb_stop, 
inst);
+  edje_object_signal_callback_add(o_popup, "mpdule,pause", "", 
_mpdule_cb_pause, inst);
+  edje_object_signal_callback_add(o_popup, "mpdule,next", "", _mpdule_cb_next, 
inst);
+  edje_object_signal_callback_add(o_popup, "mpdule,previous", "", 
_mpdule_cb_previous, inst);
   _mpdule_connect(inst);
   _mpdule_update_song(inst);
   inst->update_timer = ecore_timer_add((double)inst->ci->poll_time,
@@ -223,7 +238,6 @@
       evas_event_feed_mouse_up (inst->gcc->gadcon->evas, ev->button,
                                EVAS_BUTTON_NONE, ev->timestamp, NULL);
     } else if (ev->button == 1) {
-          printf("POPUP3");
        e_gadcon_popup_toggle_pinned(inst->popup);
     }
 }
@@ -235,7 +249,6 @@
    Instance *inst;
    E_Gadcon_Popup *popup;
  
-   printf("POPUP1");
    if (!(inst = data)) return;
    popup = inst->popup;
    e_gadcon_popup_show(inst->popup);
@@ -247,7 +260,6 @@
    Instance *inst;
    E_Gadcon_Popup *popup;
 
-   printf("POPUP2");
    if (!(inst = data)) return;
    popup = inst->popup;
    e_gadcon_popup_hide(inst->popup);
@@ -266,7 +278,7 @@
 _mpdule_menu_cb_configure (void *data, E_Menu * m, E_Menu_Item * mi)
 {
   Instance *inst;
-       
+
   inst = data;
   _config_mpdule_module (inst->ci);
 }
@@ -299,6 +311,60 @@
     }
 }
 
+static void 
+_mpdule_cb_play(void *data, Evas_Object *obj, const char *emission, const char 
*source)
+{
+  Instance *inst;
+  mpd_Connection *mpd;
+
+  inst = data;
+  mpd = inst->mpd;
+  mpd_sendPlayCommand(mpd, -1);
+}
+
+static void 
+_mpdule_cb_previous(void *data, Evas_Object *obj, const char *emission, const 
char *source)
+{
+  Instance *inst;
+  mpd_Connection *mpd;
+
+  inst = data;
+  mpd = inst->mpd;
+  mpd_sendPrevCommand(mpd);
+}
+
+static void 
+_mpdule_cb_next(void *data, Evas_Object *obj, const char *emission, const char 
*source)
+{
+  Instance *inst;
+  mpd_Connection *mpd;
+
+  inst = data;
+  mpd = inst->mpd;
+  mpd_sendNextCommand(mpd);
+}
+
+static void 
+_mpdule_cb_stop(void *data, Evas_Object *obj, const char *emission, const char 
*source)
+{
+  Instance *inst;
+  mpd_Connection *mpd;
+
+  inst = data;
+  mpd = inst->mpd;
+  mpd_sendStopCommand(mpd);
+}
+
+static void 
+_mpdule_cb_pause(void *data, Evas_Object *obj, const char *emission, const 
char *source)
+{
+  Instance *inst;
+  mpd_Connection *mpd;
+
+  inst = data;
+  mpd = inst->mpd;
+  mpd_sendPauseCommand(mpd, 1);
+}
 
 static Config_Item *
 _mpdule_config_item_get (const char *id)
@@ -645,9 +711,7 @@
    int x, y;
    if (!(*w)) *w = 0;
    if (!(*h)) *h = 0;
-   printf("SIZES: %dx%d", w, h);
    edje_object_size_min_calc (obj, &x, &y);
-   printf("SIZES2: %dx%d", x, y);
    *w = x;
    *h = y;
 }
===================================================================
RCS file: /cvs/e/e_modules/mpdule/mpdule.edc,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- mpdule.edc  12 Dec 2007 03:14:10 -0000      1.2
+++ mpdule.edc  24 Dec 2007 21:40:33 -0000      1.3
@@ -7,6 +7,11 @@
 color_classes {
 }
 images {
+       image: "next.png" COMP;
+       image: "pause.png" COMP;
+       image: "play.png" COMP;
+       image: "prev.png" COMP;
+       image: "stop.png" COMP;
 }
 data {
 }
@@ -209,6 +214,12 @@
                        }
                }
                programs {
+                       program {
+                               name: "show";
+                               signal: "show";
+                               source: "";
+                               action: SIGNAL_EMIT "mpdule,play" "";
+                       }
                }
        }
        group {
@@ -221,7 +232,7 @@
                                description {
                                        state: "default" 0.00;
                                        visible: 1;
-                                       min: 200 65;
+                                       min: 200 105;
                                        rel1 {
                                                relative: 0.00 0.00;
                                                offset: 5 5;
@@ -547,8 +558,153 @@
                                        }
                                }
                        }
+                       part {
+                               name: "mpdule.previous";
+                               type: IMAGE;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 1;
+                                       rel1 {
+                                               relative: 0.0 1.0;
+                                               offset: 0 0;
+                                               to_x: "base";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       rel2 {
+                                               relative: 0.0 1.0;
+                                               offset: 32 32;
+                                               to_x: "base";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       image {
+                                               normal: "prev.png";
+                                       }
+                               }
+                       }
+                       part {
+                               name: "mpdule.play";
+                               type: IMAGE;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 1;
+                                       rel1 {
+                                               relative: 1.0 1.0;
+                                               offset: 0 0;
+                                               to_x: "mpdule.previous";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               offset: 32 32;
+                                               to_x: "mpdule.previous";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       image {
+                                               normal: "play.png";
+                                       }
+                               }
+                       }
+                       part {
+                               name: "mpdule.pause";
+                               type: IMAGE;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 1;
+                                       rel1 {
+                                               relative: 1.0 1.0;
+                                               offset: 0 0;
+                                               to_x: "mpdule.play";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               offset: 32 32;
+                                               to_x: "mpdule.play";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       image {
+                                               normal: "pause.png";
+                                       }
+                               }
+                       }
+                       part {
+                               name: "mpdule.stop";
+                               type: IMAGE;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 1;
+                                       rel1 {
+                                               relative: 1.0 1.0;
+                                               offset: 0 0;
+                                               to_x: "mpdule.pause";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               offset: 32 32;
+                                               to_x: "mpdule.pause";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       image {
+                                               normal: "stop.png";
+                                       }
+                               }
+                       }
+                       part {
+                               name: "mpdule.next";
+                               type: IMAGE;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 1;
+                                       rel1 {
+                                               relative: 1.0 1.0;
+                                               offset: 0 0;
+                                               to_x: "mpdule.stop";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               offset: 32 32;
+                                               to_x: "mpdule.stop";
+                                               to_y: "mpdule.genre_label";
+                                       }
+                                       image {
+                                               normal: "next.png";
+                                       }
+                               }
+                       }
                }
                programs {
+                       program {
+                               name: "mouse_play";
+                               signal: "mouse,clicked,1";
+                               source: "mpdule.play";
+                               action: SIGNAL_EMIT "mpdule,play" "";
+                       }
+                       program {
+                               name: "mouse_pause";
+                               signal: "mouse,clicked,1";
+                               source: "mpdule.pause";
+                               action: SIGNAL_EMIT "mpdule,pause" "";
+                       }
+                       program {
+                               name: "mouse_stop";
+                               signal: "mouse,clicked,1";
+                               source: "mpdule.stop";
+                               action: SIGNAL_EMIT "mpdule,stop" "";
+                       }
+                       program {
+                               name: "mouse_previous";
+                               signal: "mouse,clicked,1";
+                               source: "mpdule.previous";
+                               action: SIGNAL_EMIT "mpdule,previous" "";
+                       }
+                       program {
+                               name: "mouse_next";
+                               signal: "mouse,clicked,1";
+                               source: "mpdule.next";
+                               action: SIGNAL_EMIT "mpdule,next" "";
+                       }
                }
        }
 }



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to