Enlightenment CVS committal

Author  : raster
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/modules/pager


Modified Files:
        e_mod_main.c e_mod_main.h 


Log Message:


SOME of the pager is fixed. not all. it may leak and more - i'm in the middle
of fixing it up and so on. bear with me on this. it's less offensive now
though :)

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/pager/e_mod_main.c,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -3 -r1.58 -r1.59
--- e_mod_main.c        15 Mar 2005 10:22:23 -0000      1.58
+++ e_mod_main.c        18 Mar 2005 06:39:20 -0000      1.59
@@ -20,7 +20,7 @@
 static void        _pager_face_enable(Pager_Face *face);
 static void        _pager_face_disable(Pager_Face *face);
 static void        _pager_face_zone_set(Pager_Face *face, E_Zone *zone);
-static void        _pager_face_zone_leave(Pager_Face *face);
+static void        _pager_face_zone_unset(Pager_Face *face);
 
 static Pager_Desk *_pager_desk_new(Pager_Face *face, E_Desk *desk, int x, int 
y);
 static void        _pager_desk_free(Pager_Desk *desk);
@@ -57,6 +57,15 @@
 static void        _pager_face_cb_menu_size_large(void *data, E_Menu *m, 
E_Menu_Item *mi);
 static void        _pager_face_cb_menu_edit(void *data, E_Menu *m, E_Menu_Item 
*mi);
 
+static void        _pager_desk_cb_mouse_in(void *data, Evas *e, Evas_Object 
*obj, void *event_info);
+static void        _pager_desk_cb_mouse_out(void *data, Evas *e, Evas_Object 
*obj, void *event_info);
+static void        _pager_desk_cb_mouse_down(void *data, Evas *e, Evas_Object 
*obj, void *event_info);
+static void        _pager_desk_cb_mouse_up(void *data, Evas *e, Evas_Object 
*obj, void *event_info);
+static void        _pager_desk_cb_mouse_move(void *data, Evas *e, Evas_Object 
*obj, void *event_info);
+
+static void        _pager_desk_cb_intercept_move(void *data, Evas_Object *o, 
Evas_Coord x, Evas_Coord y);
+static void        _pager_desk_cb_intercept_resize(void *data, Evas_Object *o, 
Evas_Coord w, Evas_Coord h);
+
 static int         _pager_count;
 
 static E_Config_DD *_conf_edd;
@@ -271,24 +280,10 @@
    face = E_NEW(Pager_Face, 1);
    if (!face) return NULL;
 
+   /* store what evas we live in */
    face->evas = zone->container->bg_evas;
-
-   o = evas_object_rectangle_add(face->evas);
-   face->base = o;
-   evas_object_color_set(o, 128, 128, 128, 0);
-   evas_object_pass_events_set(o, 0);
-   evas_object_repeat_events_set(o, 0);
-   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, 
_pager_face_cb_mouse_down, face);
-   evas_object_show(o);
-
-   o = edje_object_add(face->evas);
-   face->screen = o;
-   edje_object_file_set(o,
-                       /* FIXME: "default.eet" needs to come from conf */
-                        e_path_find(path_themes, "default.eet"),
-                        "modules/pager/screen");
-   evas_object_show(o);
-
+   
+   /* set up event handles for when windows change and desktops */
    face->ev_handler_border_resize =
       ecore_event_handler_add(E_EVENT_BORDER_RESIZE,
                              _pager_face_cb_event_border_resize, face);
@@ -323,8 +318,41 @@
       ecore_event_handler_add(E_EVENT_DESK_SHOW,
                              _pager_face_cb_event_desk_show, face);
 
+   /* the bg */
+   o = edje_object_add(face->evas);
+   face->pager_object = o;
+   edje_object_file_set(o,
+                       /* FIXME: "default.eet" needs to come from conf */
+                        e_path_find(path_themes, "default.eet"),
+                        "modules/pager/main");
+   evas_object_show(o);
+   
+   o = e_table_add(face->evas);
+   face->table_object = o;
+   e_table_homogenous_set(o, 1);   
+   edje_object_part_swallow(face->pager_object, "items", face->table_object);
+   evas_object_show(o);
+   
    _pager_face_zone_set(face, zone);
+   
+#if 0   
+   o = evas_object_rectangle_add(face->evas);
+   face->base = o;
+   evas_object_color_set(o, 128, 128, 128, 0);
+   evas_object_pass_events_set(o, 0);
+   evas_object_repeat_events_set(o, 0);
+   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, 
_pager_face_cb_mouse_down, face);
+   evas_object_show(o);
 
+   o = edje_object_add(face->evas);
+   face->screen = o;
+   edje_object_file_set(o,
+                       /* FIXME: "default.eet" needs to come from conf */
+                        e_path_find(path_themes, "default.eet"),
+                        "modules/pager/main");
+   evas_object_show(o);
+#endif
+   
    face->gmc = e_gadman_client_new(face->zone->container->gadman);
    e_gadman_client_domain_set(face->gmc, "module.pager", _pager_count++);
    e_gadman_client_zone_set(face->gmc, face->zone);
@@ -333,9 +361,10 @@
                              E_GADMAN_POLICY_HMOVE |
                              E_GADMAN_POLICY_VMOVE |
                              E_GADMAN_POLICY_HSIZE |
-                             E_GADMAN_POLICY_VSIZE);
+                             E_GADMAN_POLICY_VSIZE |
+                             E_GADMAN_POLICY_FIXED_ZONE);
    e_gadman_client_min_size_set(face->gmc, 8, 8);
-   e_gadman_client_max_size_set(face->gmc, 256, 256);
+   e_gadman_client_max_size_set(face->gmc, 400, 400);
    e_gadman_client_auto_size_set(face->gmc, 64, 64);
    e_gadman_client_align_set(face->gmc, 0.0, 1.0);
    e_gadman_client_resize(face->gmc, 80, 60);
@@ -348,12 +377,12 @@
 void
 _pager_face_free(Pager_Face *face)
 {
-   if (face->base) evas_object_del(face->base);
-   if (face->screen) evas_object_del(face->screen);
+   if (face->pager_object) evas_object_del(face->pager_object);
+   if (face->table_object) evas_object_del(face->table_object);
    e_gadman_client_save(face->gmc);
    e_object_del(E_OBJECT(face->gmc));
 
-   _pager_face_zone_leave(face);
+   _pager_face_zone_unset(face);
    ecore_event_handler_del(face->ev_handler_border_resize);
    ecore_event_handler_del(face->ev_handler_border_move);
    ecore_event_handler_del(face->ev_handler_border_add);
@@ -462,25 +491,7 @@
    Pager_Win  *win;
 
    face->conf->enabled = 1;
-
-   evas_object_show(face->base);
-   evas_object_show(face->screen);
-   for (desks = face->desks; desks; desks = desks->next)
-     {
-       desk = desks->data;
-       evas_object_show(desk->obj);
-
-       for (wins = desk->wins; wins; wins = wins->next)
-         {
-            win = wins->data;
-            if (!win->border->iconic)
-              {
-                 evas_object_show(win->obj);
-                 if (win->icon)
-                   evas_object_show(win->icon);
-              }
-         }
-     }
+   evas_object_show(face->pager_object);
    e_config_save_queue();
 }
 
@@ -492,25 +503,7 @@
    Pager_Win  *win;
 
    face->conf->enabled = 0;
-
-   evas_object_hide(face->base);
-   evas_object_hide(face->screen);
-   for (desks = face->desks; desks; desks = desks->next)
-     {
-       desk = desks->data;
-       evas_object_hide(desk->obj);
-
-       for (wins = desk->wins; wins; wins = wins->next)
-         {
-            win = wins->data;
-            if (!win->border->iconic)
-              {
-                 evas_object_hide(win->obj);
-                 if (win->icon)
-                   evas_object_hide(win->icon);
-              }
-         }
-     }
+   evas_object_hide(face->pager_object);
    e_config_save_queue();
 }
 
@@ -528,21 +521,21 @@
    face->ynum = desks_y;
 
    for (x = 0; x < desks_x; x++)
-     for (y = 0; y < desks_y; y++)
-       {
-         Pager_Desk *pd;
-         E_Desk     *desk;
-
-         desk = e_desk_at_xy_get(zone, x, y);
-         pd = _pager_desk_new(face, desk, x, y);
-         if (pd)
-           face->desks = evas_list_append(face->desks, pd);
-       }
-   evas_object_resize(face->base, face->fw * face->xnum, face->fh * 
face->ynum);
+     {
+       for (y = 0; y < desks_y; y++)
+         {
+            Pager_Desk *pd;
+            E_Desk     *desk;
+            
+            desk = e_desk_at_xy_get(zone, x, y);
+            pd = _pager_desk_new(face, desk, x, y);
+            if (pd) face->desks = evas_list_append(face->desks, pd);
+         }
+     }
 }
 
 static void
-_pager_face_zone_leave(Pager_Face *face)
+_pager_face_zone_unset(Pager_Face *face)
 {
    Evas_List *list;
    e_object_unref(E_OBJECT(face->zone));
@@ -570,32 +563,50 @@
    pd->xpos = xpos;
    pd->ypos = ypos;
 
-   if (desk == e_desk_current_get(desk->zone))
-     {
-       pd->current = 1;
-       evas_object_move(face->screen,
-                        face->fx + (face->fw * pd->xpos),
-                        face->fy + (face->fh * pd->ypos));
-     }
-
    pd->desk = desk;
    e_object_ref(E_OBJECT(desk));
    pd->face = face;
 
    o = edje_object_add(face->evas);
-   pd->obj = o;
+   pd->desk_object = o;
    edje_object_file_set(o,
                        /* FIXME: "default.eet" needs to come from conf */
                        e_path_find(path_themes, "default.eet"),
                        "modules/pager/desk");
-   evas_object_pass_events_set(o, 1);
-
-   evas_object_resize(o, face->fw, face->fh);
-   evas_object_move(o, face->fx + (pd->xpos * face->fw), face->fy + (pd->ypos 
* face->fh));
+   e_table_pack(face->table_object, o, xpos, ypos, 1, 1);
+   e_table_pack_options_set(o, 1, 1, 1, 1, 0.5, 0.5, 0, 0, -1, -1);   
+   evas_object_show(o);
+   
+   o = evas_object_rectangle_add(face->evas);
+   pd->event_object = o;
+   evas_object_layer_set(o, 2);
+   evas_object_repeat_events_set(o, 1);
+   evas_object_color_set(o, 0, 0, 0, 0);
+   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_IN,  
_pager_desk_cb_mouse_in,  pd);
+   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_OUT, 
_pager_desk_cb_mouse_out, pd);
+   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, 
_pager_desk_cb_mouse_down, pd);
+   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_UP, 
_pager_desk_cb_mouse_up, pd);
+   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_MOVE, 
_pager_desk_cb_mouse_move, pd);
    evas_object_show(o);
-   evas_object_raise(face->screen);
+   
+   o = e_layout_add(face->evas);
+   pd->layout_object = o;
+   evas_object_intercept_move_callback_add(o, _pager_desk_cb_intercept_move, 
pd);
+   evas_object_intercept_resize_callback_add(o, 
_pager_desk_cb_intercept_resize, pd);
+   
+   e_layout_virtual_size_set(o, desk->zone->w, desk->zone->h);
+   edje_object_part_swallow(pd->desk_object, "items", pd->layout_object);
+   evas_object_show(o);
+   
+   if (desk == e_desk_current_get(desk->zone))
+     {
+       if (!pd->current)
+         {
+            pd->current = 1;
+            edje_object_signal_emit(pd->desk_object, "active", "");
+         }
+     }
 
-   /* Add windows to the desk */
    for (wins = desk->zone->container->clients; wins; wins = wins->next)
      {
        win = wins->data;
@@ -616,7 +627,9 @@
 {
    Evas_List *list;
 
-   if (desk->obj) evas_object_del(desk->obj);
+   if (desk->desk_object) evas_object_del(desk->desk_object);
+   if (desk->layout_object) evas_object_del(desk->layout_object);
+   if (desk->event_object) evas_object_del(desk->event_object);
    e_object_unref(E_OBJECT(desk->desk));
 
    for (list = desk->wins; list; list = list->next)
@@ -651,10 +664,9 @@
                        /* FIXME: "default.eet" needs to come from conf */
                        e_path_find(path_themes, "default.eet"),
                        "modules/pager/window");
-   evas_object_pass_events_set(o, 1);
    if (visible)
      evas_object_show(o);
-   evas_object_raise(desk->face->screen);
+   e_layout_pack(desk->layout_object, win->obj);
    app = e_app_window_name_class_find(border->client.icccm.name,
                                      border->client.icccm.class);
    if (app)
@@ -684,49 +696,19 @@
 static void
 _pager_face_draw(Pager_Face *face)
 {
-   Evas_List  *desks, *wins;
-   Pager_Desk *desk;
-   Pager_Win  *win;
-
-   evas_object_move(face->base, face->fx, face->fy);
-   evas_object_resize(face->base, face->fw * face->xnum, face->fh * 
face->ynum);
-   evas_object_resize(face->screen, face->fw, face->fh);
-
-   desks = face->desks;
-   while (desks)
-     {
-       desk = desks->data;
-       evas_object_resize(desk->obj, face->fw, face->fh);
-       evas_object_move(desk->obj, face->fx + (face->fw * desk->xpos),
-                        face->fy + (face->fh * desk->ypos));
-       if (desk->current)
-         evas_object_move(face->screen, face->fx + (face->fw * desk->xpos),
-                          face->fy + (face->fh * desk->ypos));
-
-       wins = desk->wins;
-       while (wins)
-         {
-            win = wins->data;
-            _pager_window_move(face, win);
-
-            wins = wins->next;
-         }
-       desks = desks->next;
-     }
+   evas_object_move(face->pager_object, face->fx, face->fy);
+   evas_object_resize(face->pager_object, face->fw, face->fh);
 }
 
 static void
 _pager_window_move(Pager_Face *face, Pager_Win *win)
 {
-   double       scalex, scaley;
-
-   scalex = (double)face->fw / (double)face->zone->w;
-   scaley = (double)face->fh / (double)face->zone->h;
-
-   evas_object_resize(win->obj, win->border->w * scalex, win->border->h * 
scaley);
-   evas_object_move(win->obj,
-                   face->fx + (win->desk->xpos * face->fw) + ((win->border->x 
- face->zone->x) * scalex),
-                   face->fy + (win->desk->ypos * face->fh) + ((win->border->y 
- face->zone->y) * scaley));
+   e_layout_child_move(win->obj,
+                      win->border->x - win->desk->desk->zone->x,
+                      win->border->y - win->desk->desk->zone->y);
+   e_layout_child_resize(win->obj,
+                        win->border->w,
+                        win->border->h);
 }
 
 static void
@@ -737,40 +719,6 @@
 
    face = data;
    ev = event_info;
-   if (ev->button == 3)
-     {
-       e_menu_activate_mouse(face->menu, face->zone,
-                             ev->output.x, ev->output.y, 1, 1,
-                             E_MENU_POP_DIRECTION_DOWN);
-       e_util_container_fake_mouse_up_all_later(face->zone->container);
-     }
-   else if (ev->button == 1)
-     {
-       Evas_Coord  x, y;
-       int         xpos, ypos;
-       Evas_List  *list;
-       Pager_Desk *desk;
-
-       evas_pointer_canvas_xy_get(face->evas, &x, &y);
-
-       xpos = (x - face->fx) / face->fw;
-       ypos = (y - face->fy) / face->fh;
-
-       for (list = face->desks; list; list = list->next)
-         {
-            desk = list->data;
-
-            if ((desk->xpos == xpos) && (desk->ypos == ypos))
-              {
-                 desk->current = 1;
-                 e_desk_show(desk->desk);
-              }
-            else
-              {
-                 desk->current = 0;
-              }
-         }
-     }
 }
 
 static Pager_Desk *
@@ -824,7 +772,6 @@
    Pager_Win  *win;
    Pager_Desk *desk;
    Evas_Coord  x, y, w, h;
-   Evas_Coord  deskw, deskh;
    int         xcount, ycount;
    Evas_List  *desks, *wins;
 
@@ -832,45 +779,21 @@
    e_zone_desk_count_get(face->zone, &xcount, &ycount);
 
    e_gadman_client_geometry_get(face->gmc, &x, &y, &w, &h);
-   deskw = w / xcount;
-   deskh = h / ycount;
-
    face->fx = x;
    face->fy = y;
-   face->fw = deskw;
-   face->fh = deskh;
+   face->fw = w;
+   face->fh = h;
    switch (change)
      {
       case E_GADMAN_CHANGE_MOVE_RESIZE:
         _pager_face_draw(face);
         break;
       case E_GADMAN_CHANGE_RAISE:
-        evas_object_raise(face->base);
-
-        desks = face->desks;
-        while (desks)
-          {
-             desk = desks->data;
-             evas_object_raise(desk->obj);
-
-             wins = desk->wins;
-             while (wins)
-               {
-                  win = wins->data;
-                  evas_object_raise(win->obj);
-
-                  wins = wins->next;
-               }
-             desks = desks->next;
-          }
-
-        evas_object_raise(face->screen);
+        evas_object_raise(face->pager_object);
         break;
       case E_GADMAN_CHANGE_EDGE:
+        break;
       case E_GADMAN_CHANGE_ZONE:
-        /* FIXME
-         * Must we do something here?
-         */
         break;
      }
 }
@@ -899,7 +822,6 @@
             if (win->border == ev->border)
               {
                  _pager_window_move(face, win);
-                 break;
               }
          }
      }
@@ -930,7 +852,6 @@
             if (win->border == ev->border)
               {
                  _pager_window_move(face, win);
-                 break;
               }
          }
      }
@@ -1066,7 +987,6 @@
               }
          }
      }
-   evas_object_raise(face->screen);
    return 1;
 }
 
@@ -1195,8 +1115,8 @@
    max_x = MAX(face->xnum, desks_x);
    max_y = MAX(face->ynum, desks_y);
 
-   w = face->fw * face->xnum;
-   h = face->fh * face->ynum;
+   w = face->fw;
+   h = face->fh;
 
    if ((face->conf->resize == PAGER_RESIZE_HORZ)
        && (face->ynum != desks_y))
@@ -1204,7 +1124,7 @@
        /* fw is kept, so the pager face width will change
         * if xnum changes */
        scale = (double)face->fw / (double)face->fh;
-       face->fh = (face->fh * face->ynum) / desks_y;
+//     face->fh = (face->fh * face->ynum) / desks_y;
        if (face->conf->scale)
          face->fw = face->fh * scale;
      }
@@ -1214,14 +1134,14 @@
        /* fh is kept, so the pager face height will change 
         * if ynum changes */
        scale = (double)face->fh / (double)face->fw;
-       face->fw = (face->fw * face->xnum) / desks_x;
+//     face->fw = (face->fw * face->xnum) / desks_x;
        if (face->conf->scale)
          face->fh = face->fw * scale;
      }
    else if (face->conf->resize == PAGER_RESIZE_NONE)
      {
-       face->fw = (face->fw * face->xnum) / desks_x;
-       face->fh = (face->fh * face->ynum) / desks_y;
+//     face->fw = (face->fw * face->xnum) / desks_x;
+//     face->fh = (face->fh * face->ynum) / desks_y;
      }
 
    for (x = 0; x < max_x; x++)
@@ -1258,13 +1178,9 @@
      }
    face->xnum = desks_x;
    face->ynum = desks_y;
-   nw = face->fw * face->xnum;
-   nh = face->fh * face->ynum;
 
-   if ((nw != w) || (nh != h))
-     {
-       e_gadman_client_resize(face->gmc, face->fw * face->xnum, face->fh * 
face->ynum);
-     }
+   if ((face->fw != w) || (face->fh != h))
+     e_gadman_client_resize(face->gmc, face->fw, face->fh);
    else
      _pager_face_draw(face);
    return 1;
@@ -1289,13 +1205,20 @@
        desk = desks->data;
        if (desk->desk == ev->desk)
          {
-            desk->current = 1;
-            evas_object_move(face->screen,
-                             face->fx + (face->fw * desk->xpos),
-                             face->fy + (face->fh * desk->ypos));
+            if (!desk->current)
+              {
+                 desk->current = 1;
+                 edje_object_signal_emit(desk->desk_object, "active", "");
+              }
          }
        else
-         desk->current = 0;
+         {
+            if (desk->current)
+              {
+                 desk->current = 0;
+                 edje_object_signal_emit(desk->desk_object, "passive", "");
+              }
+         }
      }
    return 1;
 }
@@ -1375,9 +1298,7 @@
    Pager_Face *face;
 
    face = data;
-   face->fw = 40;
-   face->fh = 30;
-   e_gadman_client_resize(face->gmc, face->fw * face->xnum, face->fh * 
face->ynum);
+   e_gadman_client_resize(face->gmc, face->fw, face->fh);
 }
 
 static void
@@ -1386,9 +1307,7 @@
    Pager_Face *face;
 
    face = data;
-   face->fw = 80;
-   face->fh = 60;
-   e_gadman_client_resize(face->gmc, face->fw * face->xnum, face->fh * 
face->ynum);
+   e_gadman_client_resize(face->gmc, 80, 60);
 }
 
 static void
@@ -1397,9 +1316,7 @@
    Pager_Face *face;
 
    face = data;
-   face->fw = 120;
-   face->fh = 90;
-   e_gadman_client_resize(face->gmc, face->fw * face->xnum, face->fh * 
face->ynum);
+   e_gadman_client_resize(face->gmc, 128, 96);
 }
 
 static void
@@ -1410,3 +1327,107 @@
    face = data;
    e_gadman_mode_set(face->gmc->gadman, E_GADMAN_MODE_EDIT);
 }
+
+static void
+_pager_desk_cb_mouse_in(void *data, Evas *e, Evas_Object *obj, void 
*event_info)
+{
+   Evas_Event_Mouse_In *ev;
+   Pager_Desk *desk;
+   
+   ev = event_info;
+   desk = data;
+}
+
+static void
+_pager_desk_cb_mouse_out(void *data, Evas *e, Evas_Object *obj, void 
*event_info)
+{
+   Evas_Event_Mouse_Out *ev;
+   Pager_Desk *desk;
+   
+   ev = event_info;
+   desk = data;
+}
+
+static void
+_pager_desk_cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void 
*event_info)
+{
+   Evas_Event_Mouse_Down *ev;
+   Pager_Desk *desk;
+   
+   ev = event_info;
+   desk = data;
+   if (ev->button == 3)
+     {
+       e_menu_activate_mouse(desk->face->menu, desk->face->zone,
+                             ev->output.x, ev->output.y, 1, 1,
+                             E_MENU_POP_DIRECTION_DOWN);
+       e_util_container_fake_mouse_up_all_later(desk->face->zone->container);
+     }
+   else if (ev->button == 1)
+     {
+       Evas_List  *l;
+       Pager_Desk *desk2;
+
+       for (l = desk->face->desks; l; l = l->next)
+         {
+            desk2 = l->data;
+            if (desk2 == desk)
+              {
+                 e_desk_show(desk2->desk);
+                 if (!desk->current)
+                   {
+                      desk->current = 1;
+                      edje_object_signal_emit(desk2->desk_object, "active", 
"");
+                   }
+              }
+            else
+              {
+                 if (desk->current)
+                   {
+                      desk2->current = 0;
+                      edje_object_signal_emit(desk2->desk_object, "passive", 
"");
+                   }
+              }
+         }
+     }
+}
+
+static void
+_pager_desk_cb_mouse_up(void *data, Evas *e, Evas_Object *obj, void 
*event_info)
+{
+   Evas_Event_Mouse_Up *ev;
+   Pager_Desk *desk;
+   
+   ev = event_info;
+   desk = data;
+}
+
+static void
+_pager_desk_cb_mouse_move(void *data, Evas *e, Evas_Object *obj, void 
*event_info)
+{
+   Evas_Event_Mouse_Move *ev;
+   Pager_Desk *desk;
+   
+   ev = event_info;
+   desk = data;
+}
+
+static void
+_pager_desk_cb_intercept_move(void *data, Evas_Object *o, Evas_Coord x, 
Evas_Coord y)
+{
+   Pager_Desk *desk;
+   
+   desk = data;
+   evas_object_move(o, x, y);
+   evas_object_move(desk->event_object, x, y);
+}
+
+static void
+_pager_desk_cb_intercept_resize(void *data, Evas_Object *o, Evas_Coord w, 
Evas_Coord h)
+{
+   Pager_Desk *desk;
+   
+   desk = data;
+   evas_object_resize(o, w, h);
+   evas_object_resize(desk->event_object, w, h);
+}
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/pager/e_mod_main.h,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -3 -r1.15 -r1.16
--- e_mod_main.h        15 Feb 2005 12:15:22 -0000      1.15
+++ e_mod_main.h        18 Mar 2005 06:39:21 -0000      1.16
@@ -42,15 +42,17 @@
 
 struct _Pager_Face
 {
-   E_Zone       *zone;
-   Evas_List    *desks;
+   E_Gadman_Client *gmc;
+   E_Menu          *menu;
+   Evas            *evas;
+   
+   E_Zone          *zone;
+   Evas_List       *desks;
+   
+   Evas_Object  *pager_object;
+   Evas_Object  *table_object;
    
-   E_Menu       *menu;
-   Evas         *evas;
-   Evas_Object  *base, *screen;
-
    Evas_Coord    fx, fy, fw, fh;
-   E_Gadman_Client *gmc;
 
    /* Current nr. of desktops */
    int           xnum, ynum;
@@ -76,7 +78,9 @@
    Pager_Face  *face;
    Evas_List   *wins;
 
-   Evas_Object *obj;
+   Evas_Object *desk_object;
+   Evas_Object *layout_object;
+   Evas_Object *event_object;
    int          xpos, ypos;
 
    int          current : 1;




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to