Enlightenment CVS committal

Author  : raster
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_init.c 


Log Message:


1. e17's init icons get put into an e_box for arrangement nad the init splash
determines the location...

2. .002 snap

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_init.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- e_init.c    13 Feb 2005 11:56:46 -0000      1.7
+++ e_init.c    28 Feb 2005 05:34:58 -0000      1.8
@@ -10,10 +10,10 @@
 static Ecore_Evas     *_e_init_ecore_evas = NULL;
 static Evas           *_e_init_evas = NULL;
 static Evas_Object    *_e_init_object = NULL;
+static Evas_Object    *_e_init_icon_box = NULL;
 
 /* startup icons */
-static Evas_Coord _e_init_icon_x, _e_init_icon_y;
-static int        _e_init_icon_size, _e_init_icon_wrap;
+static Evas_Coord _e_init_icon_size;
 static Evas_List *_e_init_icon_list;
 
 /* externally accessible functions */
@@ -50,11 +50,6 @@
    ecore_evas_raise(_e_init_ecore_evas);
    ecore_evas_show(_e_init_ecore_evas);
    
-   _e_init_icon_size = 64;
-   _e_init_icon_wrap = w;
-   _e_init_icon_x = 0;
-   _e_init_icon_y = h - _e_init_icon_size;
-   
    n = ecore_x_xinerama_screen_count_get();
    if (n == 0)
      {
@@ -186,20 +181,44 @@
 
    E_OBJECT_CHECK(app);
    E_OBJECT_TYPE_CHECK(app, E_APP_TYPE);
-        
+
+   if (!_e_init_evas) return;
+   
+   if (!_e_init_icon_box)
+     {
+       Evas_Coord w, h;
+       
+       o = e_box_add(_e_init_evas);
+       _e_init_icon_box = o;
+       e_box_homogenous_set(o, 1);
+       e_box_align_set(o, 0.5, 0.5);
+       edje_object_part_swallow(_e_init_object, "icons", o);
+       evas_object_geometry_get(o, NULL, NULL, &w, &h);
+       if (w > h)
+         {
+            _e_init_icon_size = h;
+            e_box_orientation_set(o, 1);
+         }
+       else
+         {
+            _e_init_icon_size = w;
+            e_box_orientation_set(o, 0);
+         }
+       evas_object_show(o);
+     }
+   
    o = edje_object_add(_e_init_evas);
    edje_object_file_set(o,app->path, "icon");
    evas_object_resize(o, _e_init_icon_size, _e_init_icon_size);
-   evas_object_move(o, _e_init_icon_x, _e_init_icon_y);
+   e_box_pack_end(_e_init_icon_box, o);
+   e_box_pack_options_set(o, 
+                         0, 0, 
+                         0, 0, 
+                         0.5, 0.5,
+                         _e_init_icon_size, _e_init_icon_size,
+                         _e_init_icon_size, _e_init_icon_size);
    evas_object_show(o);
    _e_init_icon_list = evas_list_append(_e_init_icon_list, o);
-
-   _e_init_icon_x += _e_init_icon_size;
-   if (_e_init_icon_x + _e_init_icon_size > _e_init_icon_wrap)
-     {
-       _e_init_icon_x = 0;
-       _e_init_icon_y -= _e_init_icon_size;
-     }
 }
 
 void
@@ -207,11 +226,13 @@
 {
    Evas_Object *next;
 
-   while(_e_init_icon_list)
+   while (_e_init_icon_list)
      {
        next = _e_init_icon_list->data;
        evas_object_del(next);
        _e_init_icon_list = evas_list_remove(_e_init_icon_list, next);
      }
-
+   if (_e_init_icon_box)
+     evas_object_del(_e_init_icon_box);
+   _e_init_icon_box = NULL;
 }




-------------------------------------------------------
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