Enlightenment CVS committal

Author  : raster
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        Makefile.am e_border.c e_border.h e_includes.h e_main.c 
        e_popup.c e_test.c e_winlist.c 
Added Files:
        e_win.c e_win.h 


Log Message:


e_win is a quick api wrapper for makign internal windows that the wm creates
then manages as if they were normal client windows. should work just fine and
is something to build better dialogs on top of

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/Makefile.am,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -3 -r1.39 -r1.40
--- Makefile.am 5 Jul 2005 12:57:48 -0000       1.39
+++ Makefile.am 11 Jul 2005 09:19:16 -0000      1.40
@@ -65,7 +65,8 @@
 e_maximize.h \
 e_grabinput.h \
 e_bg.h \
-e_remember.h
+e_remember.h \
+e_win.h
 
 enlightenment_SOURCES = \
 e_main.c \
@@ -120,6 +121,7 @@
 e_grabinput.c \
 e_bg.c \
 e_remember.c \
+e_win.c \
 $(ENLIGHTENMENTHEADERS)
 
 enlightenment_LDFLAGS = -export-dynamic @e_libs@ @x_libs@ @dlopen_libs@
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v
retrieving revision 1.325
retrieving revision 1.326
diff -u -3 -r1.325 -r1.326
--- e_border.c  10 Jul 2005 17:12:01 -0000      1.325
+++ e_border.c  11 Jul 2005 09:19:16 -0000      1.326
@@ -1702,6 +1702,7 @@
 void
 e_border_act_kill_begin(E_Border *bd)
 {
+   if (bd->internal) return;
    if (bd->lock_close) return;
    if ((bd->client.netwm.pid > 1) && (e_config->kill_process))
      {
@@ -5664,7 +5665,7 @@
    mi = e_menu_item_new(m);
    e_menu_item_separator_set(mi, 1);
 
-   if (!bd->lock_close)
+   if ((!bd->lock_close) && (!bd->internal))
      {
        mi = e_menu_item_new(m);
        e_menu_item_label_set(mi, _("Kill"));
@@ -5880,7 +5881,7 @@
    E_Border *bd;
 
    bd = data;
-   if (!bd->lock_close)
+   if ((!bd->lock_close) && (!bd->internal))
      e_border_act_kill_begin(bd);
 }
 
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.h,v
retrieving revision 1.92
retrieving revision 1.93
diff -u -3 -r1.92 -r1.93
--- e_border.h  9 Jul 2005 14:55:40 -0000       1.92
+++ e_border.h  11 Jul 2005 09:19:17 -0000      1.93
@@ -310,7 +310,8 @@
    unsigned int    lock_close : 1; /*DONE*/
    unsigned int    lock_focus_in : 1; /*DONE*/
    unsigned int    lock_focus_out : 1; /*DONE*/
-   unsigned int    lock_life : 1;
+   unsigned int    lock_life : 1; /*DONE*/
+   unsigned int    internal : 1;
    
    double          ping;
  
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_includes.h,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -3 -r1.28 -r1.29
--- e_includes.h        5 Jul 2005 12:57:48 -0000       1.28
+++ e_includes.h        11 Jul 2005 09:19:17 -0000      1.29
@@ -53,3 +53,4 @@
 #include "e_grabinput.h"
 #include "e_bg.h"
 #include "e_remember.h"
+#include "e_win.h"
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_main.c,v
retrieving revision 1.110
retrieving revision 1.111
diff -u -3 -r1.110 -r1.111
--- e_main.c    8 Jul 2005 08:43:26 -0000       1.110
+++ e_main.c    11 Jul 2005 09:19:17 -0000      1.111
@@ -698,6 +698,7 @@
      }
    if (!e_focus_init()) return 0;
    if (!e_border_init()) return 0;
+   if (!e_win_init()) return 0;
    for (i = 0; i < num; i++)
      {
        E_Manager *man;
@@ -741,6 +742,7 @@
 static int
 _e_main_screens_shutdown(void)
 {
+   e_win_shutdown();
    e_border_shutdown();
    e_focus_shutdown();
    e_menu_shutdown();
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_popup.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- e_popup.c   27 Jun 2005 10:08:53 -0000      1.4
+++ e_popup.c   11 Jul 2005 09:19:17 -0000      1.5
@@ -80,6 +80,8 @@
 void
 e_popup_show(E_Popup *pop)
 {
+   E_OBJECT_CHECK(pop);
+   E_OBJECT_TYPE_CHECK(pop, E_POPUP_TYPE);
    if (pop->visible) return;
    pop->visible = 1;
    ecore_evas_show(pop->ecore_evas);
@@ -89,6 +91,8 @@
 void
 e_popup_hide(E_Popup *pop)
 {
+   E_OBJECT_CHECK(pop);
+   E_OBJECT_TYPE_CHECK(pop, E_POPUP_TYPE);
    if (!pop->visible) return;
    pop->visible = 0;
    ecore_evas_hide(pop->ecore_evas);
@@ -98,6 +102,8 @@
 void
 e_popup_move(E_Popup *pop, int x, int y)
 {
+   E_OBJECT_CHECK(pop);
+   E_OBJECT_TYPE_CHECK(pop, E_POPUP_TYPE);
    if ((pop->x == x) && (pop->y == y)) return;
    pop->x = x;
    pop->y = y;
@@ -112,6 +118,8 @@
 void
 e_popup_resize(E_Popup *pop, int w, int h)
 {
+   E_OBJECT_CHECK(pop);
+   E_OBJECT_TYPE_CHECK(pop, E_POPUP_TYPE);
    if ((pop->w == w) && (pop->h == h)) return;
    pop->w = w;
    pop->h = h;
@@ -122,6 +130,8 @@
 void
 e_popup_move_resize(E_Popup *pop, int x, int y, int w, int h)
 {
+   E_OBJECT_CHECK(pop);
+   E_OBJECT_TYPE_CHECK(pop, E_POPUP_TYPE);
    if ((pop->x == x) && (pop->y == y) &&
        (pop->w == w) && (pop->h == h)) return;
    pop->x = x;
@@ -143,6 +153,8 @@
 {
    const char *shape_option;
    
+   E_OBJECT_CHECK(pop);
+   E_OBJECT_TYPE_CHECK(pop, E_POPUP_TYPE);
    shape_option = edje_object_data_get(o, "shaped");
    if (shape_option)
      {
@@ -157,6 +169,8 @@
 void
 e_popup_layer_set(E_Popup *pop, int layer)
 {
+   E_OBJECT_CHECK(pop);
+   E_OBJECT_TYPE_CHECK(pop, E_POPUP_TYPE);
    pop->layer = layer;
    e_container_window_raise(pop->zone->container, pop->evas_win, pop->layer);
 }
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_test.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- e_test.c    26 May 2005 15:34:12 -0000      1.6
+++ e_test.c    11 Jul 2005 09:19:17 -0000      1.7
@@ -206,6 +206,48 @@
 {
    _e_test_timer(NULL);
 }
+#elif 0
+static void
+_e_test_resize(E_Win *win)
+{
+   Evas_Object *o;
+   
+   o = win->data;
+   printf("RESIZE %i %i\n", win->w, win->h);
+   evas_object_resize(o, win->w, win->h);
+   evas_object_color_set(o, rand() & 0xff, rand() & 0xff, rand() & 0xff, 255);
+}
+
+static void
+_e_test_delete(E_Win *win)
+{
+   printf("DEL!\n");
+   e_object_del(E_OBJECT(win));
+}
+
+static void
+_e_test_internal(E_Container *con)
+{
+   E_Win *win;
+   Evas_Object *o;
+   
+   win = e_win_new(con);
+   e_win_resize_callback_set(win, _e_test_resize);
+   e_win_delete_callback_set(win, _e_test_delete);
+   e_win_placed_set(win, 0);
+   e_win_move_resize(win, 10, 80, 400, 200);
+   e_win_name_class_set(win, "E", "_test_window");
+   e_win_title_set(win, "A test window");
+   e_win_raise(win);
+   e_win_show(win);
+   
+   o = evas_object_rectangle_add(e_win_evas_get(win));
+   evas_object_color_set(o, 255, 200, 100, 255);
+   evas_object_resize(o, 400, 200);
+   evas_object_show(o);
+   
+   win->data = o;
+}
 #else
 static void
 _e_test_internal(E_Container *con)
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_winlist.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -3 -r1.26 -r1.27
--- e_winlist.c 9 Jul 2005 14:55:40 -0000       1.26
+++ e_winlist.c 11 Jul 2005 09:19:17 -0000      1.27
@@ -368,8 +368,10 @@
          {
             if (bd->desk != desk)
               {
-                 if ((bd->zone) && (bd->zone != zone) &&
-                     (!e_config->winlist_list_show_other_screen_windows)) ok = 
0;
+                 if ((bd->zone) && (bd->zone != zone))
+                   {
+                      if (!e_config->winlist_list_show_other_screen_windows) 
ok = 0;
+                   }
                  else if (!e_config->winlist_list_show_other_desk_windows) ok 
= 0;
               }
          }




-------------------------------------------------------
This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening
July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual
core and dual graphics technology at this free one hour event hosted by HP,
AMD, and NVIDIA.  To register visit http://www.hp.com/go/dualwebinar
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to