Enlightenment CVS committal

Author  : xcomputerman
Project : e17
Module  : libs/ecore

Dir     : e17/libs/ecore/src/lib/ecore_x


Modified Files:
        .cvsignore Ecore_X.h Makefile.am ecore_x.c ecore_x_events.c 
        ecore_x_private.h ecore_x_selection.c ecore_x_window_prop.c 
Added Files:
        ecore_x_dnd.c 


Log Message:
Teh xdnd cometh! 
No, it doesn't even remotely do anything useful yet.

===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/.cvsignore,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- .cvsignore  16 Jan 2004 16:59:07 -0000      1.2
+++ .cvsignore  5 Feb 2004 07:14:55 -0000       1.3
@@ -3,6 +3,7 @@
 Makefile
 Makefile.in
 ecore_x.lo
+ecore_x_dnd.lo
 ecore_x_error.lo
 ecore_x_events.lo
 ecore_x_gc.lo
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Ecore_X.h,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -3 -r1.29 -r1.30
--- Ecore_X.h   28 Jan 2004 21:48:27 -0000      1.29
+++ Ecore_X.h   5 Feb 2004 07:14:55 -0000       1.30
@@ -28,6 +28,16 @@
 #define ECORE_X_SELECTION_TARGET_UTF8_STRING "UTF8_STRING"
 #define ECORE_X_SELECTION_TARGET_FILENAME "FILENAME"
 
+#define ECORE_X_DND_VERSION 5
+
+typedef enum _Ecore_X_DND_Action {
+   ECORE_X_DND_ACTION_COPY,
+   ECORE_X_DND_ACTION_MOVE,
+   ECORE_X_DND_ACTION_LINK,
+   ECORE_X_DND_ACTION_ASK,
+   ECORE_X_DND_ACTION_PRIVATE
+} Ecore_X_DND_Action;
+
 typedef enum _Ecore_X_Selection {
    ECORE_X_SELECTION_PRIMARY,
    ECORE_X_SELECTION_SECONDARY,
@@ -108,6 +118,12 @@
 typedef struct _Ecore_X_Event_Selection_Clear          Ecore_X_Event_Selection_Clear;
 typedef struct _Ecore_X_Event_Selection_Request        
Ecore_X_Event_Selection_Request;
 typedef struct _Ecore_X_Event_Selection_Notify         Ecore_X_Event_Selection_Notify;
+typedef struct _Ecore_X_Event_Xdnd_Enter               Ecore_X_Event_Xdnd_Enter;
+typedef struct _Ecore_X_Event_Xdnd_Position            Ecore_X_Event_Xdnd_Position;
+typedef struct _Ecore_X_Event_Xdnd_Status              Ecore_X_Event_Xdnd_Status;
+typedef struct _Ecore_X_Event_Xdnd_Leave               Ecore_X_Event_Xdnd_Leave;
+typedef struct _Ecore_X_Event_Xdnd_Drop                Ecore_X_Event_Xdnd_Stop;
+typedef struct _Ecore_X_Event_Xdnd_Finished            Ecore_X_Event_Xdnd_Finished;
 typedef struct _Ecore_X_Event_Client_Message           Ecore_X_Event_Client_Message;
 typedef struct _Ecore_X_Event_Window_Shape             Ecore_X_Event_Window_Shape;
 
@@ -378,6 +394,51 @@
    char                       *target;
 };
 
+struct _Ecore_X_Event_Xdnd_Enter
+{
+   Ecore_X_Window       win, source;
+   Ecore_X_Time         time;
+};
+
+struct _Ecore_X_Event_Xdnd_Position
+{
+   Ecore_X_Window       win, source;
+   struct {
+      int x, y;
+   } position;
+   Ecore_X_Time         time;
+   Ecore_X_DND_Action   action;
+};
+
+struct _Ecore_X_Event_Xdnd_Status
+{
+   Ecore_X_Window       win, target;
+   int                  drop_accept;
+   Ecore_X_DND_Action   action;
+};
+
+struct _Ecore_X_Event_Xdnd_Leave
+{
+   Ecore_X_Window       win, source;
+};
+
+struct _Ecore_X_Event_Xdnd_Drop
+{
+   Ecore_X_Window       win, source;
+   Ecore_X_Time         time;
+   Ecore_X_DND_Action   action;
+   struct {
+      int x, y;
+   } position;
+};
+
+struct _Ecore_X_Event_Xdnd_Finished
+{
+   Ecore_X_Window       win, target;
+   int                  completed;
+   Ecore_X_DND_Action   action;
+};
+
 struct _Ecore_X_Event_Client_Message
 {
    Ecore_X_Window  win;
@@ -606,11 +667,11 @@
 
 void             ecore_x_event_mask_set(Ecore_X_Window w, long mask);
 
-int              ecore_x_selection_primary_set(Ecore_X_Window w, char *data, int 
size);
+int              ecore_x_selection_primary_set(Ecore_X_Window w, unsigned char *data, 
int size);
 int              ecore_x_selection_primary_clear(void);
-int              ecore_x_selection_secondary_set(Ecore_X_Window w, char *data, int 
size);
+int              ecore_x_selection_secondary_set(Ecore_X_Window w, unsigned char 
*data, int size);
 int              ecore_x_selection_secondary_clear(void);
-int              ecore_x_selection_clipboard_set(Ecore_X_Window w, char *data, int 
size);
+int              ecore_x_selection_clipboard_set(Ecore_X_Window w, unsigned char 
*data, int size);
 int              ecore_x_selection_clipboard_clear(void);
 void             ecore_x_selection_primary_request(Ecore_X_Window w, char *target);
 void             ecore_x_selection_secondary_request(Ecore_X_Window w, char *target);
@@ -644,6 +705,7 @@
    
 void             ecore_x_window_prop_property_set(Ecore_X_Window win, Ecore_X_Atom 
type, Ecore_X_Atom format, int size, void *data, int number);
 int              ecore_x_window_prop_property_get(Ecore_X_Window win, Ecore_X_Atom 
property, Ecore_X_Atom type, int size, unsigned char **data, int *num);
+void             ecore_x_window_prop_property_del(Ecore_X_Window win, Ecore_X_Atom 
property);
 void             ecore_x_window_prop_property_notify(Ecore_X_Window win, const char 
*type, long *data);
 void             ecore_x_window_prop_string_set(Ecore_X_Window win, Ecore_X_Atom 
type, char *str);
 char            *ecore_x_window_prop_string_get(Ecore_X_Window win, Ecore_X_Atom 
type);
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Makefile.am,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- Makefile.am 22 Jan 2004 23:13:53 -0000      1.7
+++ Makefile.am 5 Feb 2004 07:14:55 -0000       1.8
@@ -20,6 +20,7 @@
 
 libecore_x_la_SOURCES = \
 ecore_x.c \
+ecore_x_dnd.c \
 ecore_x_error.c \
 ecore_x_events.c \
 ecore_x_selection.c \
@@ -48,6 +49,7 @@
 Ecore_X.h \
 Ecore_X_Cusor.h \
 ecore_x.c \
+ecore_x_dnd.c \
 ecore_x_error.c \
 ecore_x_events.c \
 ecore_x_selection.c \
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -3 -r1.26 -r1.27
--- ecore_x.c   4 Feb 2004 17:43:41 -0000       1.26
+++ ecore_x.c   5 Feb 2004 07:14:55 -0000       1.27
@@ -37,6 +37,7 @@
 Atom     _ecore_x_atom_wm_client_machine = 0;
 Atom     _ecore_x_atom_motif_wm_hints = 0;
 Atom     _ecore_x_atom_win_layer = 0;
+
 Atom     _ecore_x_atom_selection_primary = 0;
 Atom     _ecore_x_atom_selection_secondary = 0;
 Atom     _ecore_x_atom_selection_clipboard = 0;
@@ -44,6 +45,21 @@
 Atom     _ecore_x_atom_selection_prop_secondary = 0;
 Atom     _ecore_x_atom_selection_prop_clipboard = 0;
 
+Atom     _ecore_x_atom_selection_xdnd = 0;
+Atom     _ecore_x_atom_xdnd_aware = 0;
+Atom     _ecore_x_atom_xdnd_enter = 0;
+Atom     _ecore_x_atom_xdnd_type_list = 0;
+Atom     _ecore_x_atom_xdnd_position = 0;
+Atom     _ecore_x_atom_xdnd_action_copy = 0;
+Atom     _ecore_x_atom_xdnd_action_private = 0;
+Atom     _ecore_x_atom_xdnd_action_ask = 0;
+Atom     _ecore_x_atom_xdnd_action_list = 0;
+Atom     _ecore_x_atom_xdnd_action_description = 0;
+Atom     _ecore_x_atom_xdnd_status = 0;
+Atom     _ecore_x_atom_xdnd_drop = 0;
+Atom     _ecore_x_atom_xdnd_finished = 0;
+Atom     _ecore_x_atom_xdnd_leave = 0;
+
 /*
  * Root window NetWM hints.
  */
@@ -330,7 +346,21 @@
    _ecore_x_atom_selection_prop_primary   = XInternAtom(_ecore_x_disp, 
"_ECORE_SELECTION_PRIMARY", False);
    _ecore_x_atom_selection_prop_secondary = XInternAtom(_ecore_x_disp, 
"_ECORE_SELECTION_SECONDARY", False);
    _ecore_x_atom_selection_prop_clipboard = XInternAtom(_ecore_x_disp, 
"_ECORE_SELECTION_CLIPBOARD", False);
-
+   _ecore_x_atom_selection_xdnd           = XInternAtom(_ecore_x_disp, 
"XdndSelection", False);
+   _ecore_x_atom_xdnd_aware               = XInternAtom(_ecore_x_disp, "XdndAware", 
False);
+   _ecore_x_atom_xdnd_type_list           = XInternAtom(_ecore_x_disp, 
"XdndTypeList", False);
+   _ecore_x_atom_xdnd_enter               = XInternAtom(_ecore_x_disp, "XdndEnter", 
False);
+   _ecore_x_atom_xdnd_position            = XInternAtom(_ecore_x_disp, 
"XdndPosition", False);
+   _ecore_x_atom_xdnd_action_copy         = XInternAtom(_ecore_x_disp, 
"XdndActionCopy", False);
+   _ecore_x_atom_xdnd_action_private      = XInternAtom(_ecore_x_disp, 
"XdndActionPrivate", False);
+   _ecore_x_atom_xdnd_action_ask          = XInternAtom(_ecore_x_disp, 
"XdndActionAsk", False);
+   _ecore_x_atom_xdnd_action_list         = XInternAtom(_ecore_x_disp, 
"XdndActionList", False);
+   _ecore_x_atom_xdnd_action_description  = XInternAtom(_ecore_x_disp, 
"XdndActionDescription", False);
+   _ecore_x_atom_xdnd_status              = XInternAtom(_ecore_x_disp, "XdndStatus", 
False);
+   _ecore_x_atom_xdnd_leave               = XInternAtom(_ecore_x_disp, "XdndLeave", 
False);
+   _ecore_x_atom_xdnd_drop                = XInternAtom(_ecore_x_disp, "XdndDrop", 
False);
+   _ecore_x_atom_xdnd_finished            = XInternAtom(_ecore_x_disp, 
"XdndFinished", False);
+   
    _ecore_x_atom_net_supported            = XInternAtom(_ecore_x_disp, 
"_NET_SUPPORTED", False);
    _ecore_x_atom_net_supporting_wm_check  = XInternAtom(_ecore_x_disp, 
"_NET_SUPPORTING_WM_CHECK", False);
 
@@ -395,7 +425,8 @@
    _ecore_x_atoms_wm_protocols[ECORE_X_WM_PROTOCOL_DELETE_REQUEST] = 
_ecore_x_atom_wm_delete_window;
    _ecore_x_atoms_wm_protocols[ECORE_X_WM_PROTOCOL_TAKE_FOCUS] = 
_ecore_x_atom_wm_take_focus;
 
-   _ecore_x_selection_data_initialize();
+   _ecore_x_selection_data_init();
+   _ecore_x_dnd_init();
    
    _ecore_x_init_count++;
    return _ecore_x_init_count;
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_events.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -3 -r1.20 -r1.21
--- ecore_x_events.c    22 Jan 2004 05:23:33 -0000      1.20
+++ ecore_x_events.c    5 Feb 2004 07:14:56 -0000       1.21
@@ -1028,19 +1028,53 @@
    if ((xevent->xclient.message_type == _ecore_x_atom_wm_protocols) &&
        (xevent->xclient.format == 32) &&
        (xevent->xclient.data.l[0] == (long)_ecore_x_atom_wm_delete_window))
-     {
-       Ecore_X_Event_Window_Delete_Request *e;
+   {
+          Ecore_X_Event_Window_Delete_Request *e;
        
-       e = calloc(1, sizeof(Ecore_X_Event_Window_Delete_Request));
-       if (!e) return;
-       e->win = xevent->xclient.window;
-       e->time = _ecore_x_event_last_time;
-       ecore_event_add(ECORE_X_EVENT_WINDOW_DELETE_REQUEST, e, 
_ecore_x_event_free_generic, NULL);
-     }
+       e = calloc(1, sizeof(Ecore_X_Event_Window_Delete_Request));
+          if (!e) return;
+       e->win = xevent->xclient.window;
+          e->time = _ecore_x_event_last_time;
+       ecore_event_add(ECORE_X_EVENT_WINDOW_DELETE_REQUEST, e, 
_ecore_x_event_free_generic, NULL);
+   }
+   /* Xdnd Client Message Handling */
+   else if (xevent->xclient.message_type == _ecore_x_atom_xdnd_enter)
+   {
+      Ecore_X_Event_Xdnd_Enter *e;
+      Ecore_X_DND_Protocol *_xdnd;
+      short *ldata;
+      
+      _xdnd = _ecore_x_dnd_protocol_get();
+      _xdnd->source = xevent->xclient.data.l[0];
+      _xdnd->dest = xevent->xclient.window;
+      /* gcc won't let us do this */
+      /* _xdnd->version = (int) (xevent->xclient.data.l >> 24); */
+      ldata = (short *) &(xevent->xclient.data.l);
+      _xdnd->version = (int) ldata[0];
+      if (_xdnd->version > ECORE_X_DND_VERSION)
+         return 0;
+      
+      if (xevent->xclient.data.l[1] & 0x0001)
+      {
+         /* source supports more than 3 types, fetch property */
+      }
+      else
+      {
+         _xdnd->types[0] = xevent->xclient.data.l[2];
+         _xdnd->types[1] = xevent->xclient.data.l[3];
+         _xdnd->types[2] = xevent->xclient.data.l[4];
+      }
+
+      e = calloc(1, sizeof(Ecore_X_Event_Xdnd_Enter));
+      if (!e) return;
+      e->win = _xdnd->dest;
+      e->source = _xdnd->source;
+      e->time = CurrentTime;
+   }
    else
-     {
+   {
        /* FIXME: handle this event type */
-     }
+   }
 }
 
 void
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_private.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -3 -r1.19 -r1.20
--- ecore_x_private.h   4 Feb 2004 17:43:41 -0000       1.19
+++ ecore_x_private.h   5 Feb 2004 07:14:56 -0000       1.20
@@ -40,7 +40,7 @@
 {
    Window            win;
    Atom              selection;
-   char              *data;
+   unsigned char     *data;
    int               length;
    Time              time;
 };
@@ -55,6 +55,31 @@
    struct _Ecore_X_Selection_Converter *next;
 };
 
+typedef struct _Ecore_X_DND_Protocol 
+{
+   int version;
+   Window source, dest;
+   
+   enum {
+      ECORE_X_DND_OUT,
+      ECORE_X_DND_IN,
+      ECORE_X_DND_FINISHED
+   } state;
+
+   struct {
+      int x, y, w, h;
+   } status_rect;
+
+   Atom types[256];
+   
+   struct {
+      Ecore_Event_Handler *mouse_move;
+      Ecore_Event_Handler *mouse_up;
+      Ecore_Event_Handler *mouse_in;
+      Ecore_Event_Handler *mouse_out;
+   } handlers;
+} Ecore_X_DND_Protocol;
+
 typedef enum _Ecore_X_WM_Protocol {
        /**
         * If enabled the window manager will be asked to send a
@@ -147,6 +172,22 @@
 extern Atom     _ecore_x_atom_selection_prop_secondary;
 extern Atom     _ecore_x_atom_selection_prop_clipboard;
 
+extern Atom     _ecore_x_atom_selection_xdnd;
+extern Atom     _ecore_x_atom_xdnd_aware;
+extern Atom     _ecore_x_atom_xdnd_enter;
+extern Atom     _ecore_x_atom_xdnd_type_list;
+extern Atom     _ecore_x_atom_xdnd_position;
+extern Atom     _ecore_x_atom_xdnd_action_copy;
+extern Atom     _ecore_x_atom_xdnd_action_private;
+extern Atom     _ecore_x_atom_xdnd_action_ask;
+extern Atom     _ecore_x_atom_xdnd_action_list;
+extern Atom     _ecore_x_atom_xdnd_action_description;
+extern Atom     _ecore_x_atom_xdnd_status;
+extern Atom     _ecore_x_atom_xdnd_drop;
+extern Atom     _ecore_x_atom_xdnd_finished;
+
+extern Ecore_X_DND_Protocol *_xdnd;
+
 void _ecore_x_error_handler_init(void);
 void _ecore_x_event_handle_key_press(XEvent *xevent);
 void _ecore_x_event_handle_key_release(XEvent *xevent);
@@ -182,13 +223,15 @@
 void _ecore_x_event_handle_mapping_notify(XEvent *xevent);
 void _ecore_x_event_handle_shape_change(XEvent *xevent);
 
-void _ecore_x_selection_data_initialize(void);
+void _ecore_x_selection_data_init(void);
 void _ecore_x_selection_shutdown(void);
 Atom _ecore_x_selection_target_atom_get(char *target);
 char * _ecore_x_selection_target_get(Atom target);
 void _ecore_x_selection_request_data_set(Ecore_X_Selection_Data data);
 Ecore_X_Selection_Data * _ecore_x_selection_get(Atom selection);
-int  _ecore_x_selection_set(Window w, char *data, int len, Atom selection);
+int  _ecore_x_selection_set(Window w, unsigned char *data, int len, Atom selection);
 int  _ecore_x_selection_convert(Atom selection, Atom target, void **data_ret);
 
+void _ecore_x_dnd_init(void);
+Ecore_X_DND_Protocol * _ecore_x_dnd_protocol_get(void);
 #endif
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_selection.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- ecore_x_selection.c 4 Feb 2004 17:43:41 -0000       1.10
+++ ecore_x_selection.c 5 Feb 2004 07:14:56 -0000       1.11
@@ -10,7 +10,7 @@
 static int _ecore_x_selection_converter_text(char *target, void *data, int size, void 
**data_ret, int *size_ret);
 
 void
-_ecore_x_selection_data_initialize(void)
+_ecore_x_selection_data_init(void)
 {
    /* Initialize converters */
    ecore_x_selection_converter_atom_add(_ecore_x_atom_text, 
@@ -145,10 +145,10 @@
 }
 
 int 
-_ecore_x_selection_set(Window w, char *data, int size, Atom selection)
+_ecore_x_selection_set(Window w, unsigned char *data, int size, Atom selection)
 {
    int in;
-   char *buf = NULL;
+   unsigned char *buf = NULL;
    
    XSetSelectionOwner(_ecore_x_disp, selection, w, _ecore_x_event_last_time);
    if (XGetSelectionOwner(_ecore_x_disp, selection) != w)
@@ -197,7 +197,7 @@
  * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
  */
 int 
-ecore_x_selection_primary_set(Ecore_X_Window w, char *data, int size)
+ecore_x_selection_primary_set(Ecore_X_Window w, unsigned char *data, int size)
 {
    return _ecore_x_selection_set(w, data, size, _ecore_x_atom_selection_primary);
 }
@@ -228,7 +228,7 @@
  * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
  */
 int 
-ecore_x_selection_secondary_set(Ecore_X_Window w, char *data, int size)
+ecore_x_selection_secondary_set(Ecore_X_Window w, unsigned char *data, int size)
 {
    return _ecore_x_selection_set(w, data, size, _ecore_x_atom_selection_secondary);
 }
@@ -259,7 +259,7 @@
  * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
  */
 int 
-ecore_x_selection_clipboard_set(Ecore_X_Window w, char *data, int size)
+ecore_x_selection_clipboard_set(Ecore_X_Window w, unsigned char *data, int size)
 {
    return _ecore_x_selection_set(w, data, size, _ecore_x_atom_selection_clipboard);
 }
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_window_prop.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -3 -r1.25 -r1.26
--- ecore_x_window_prop.c       28 Jan 2004 21:48:27 -0000      1.25
+++ ecore_x_window_prop.c       5 Feb 2004 07:14:56 -0000       1.26
@@ -89,6 +89,12 @@
    return 1;
 }
 
+void
+ecore_x_window_prop_property_del(Ecore_X_Window win, Ecore_X_Atom property)
+{
+   XDeleteProperty(_ecore_x_disp, win, property);
+}
+
 /**
  * Send a property notify to a window.
  * @param win The window
@@ -1071,65 +1077,6 @@
    free(newset);
 }
 
-/**
- * Set a window as a desktop type.
- * @param win The Window
- *
- * Set a window as a desktop type.
- * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
- */
-void
-ecore_x_window_prop_window_type_desktop_set(Ecore_X_Window win)
-{
-   ecore_x_window_prop_window_type_set(win, _ecore_x_atom_net_wm_window_type_desktop);
-}
-
-/**
- * Set a window as a desktop type.
- * @param win The Window
- *
- * Set a window as a desktop type.
- * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
- */
-void
-ecore_x_window_prop_window_type_dock_set(Ecore_X_Window win)
-{
-   ecore_x_window_prop_window_type_set(win, _ecore_x_atom_net_wm_window_type_dock);
-}
-
-/**
- * Set a window as a toolbar type.
- * @param win The Window
- *
- * Set a window as a toolbar type.
- * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
- */
-void
-ecore_x_window_prop_window_type_toolbar_set(Ecore_X_Window win)
-{
-   ecore_x_window_prop_window_type_set(win, _ecore_x_atom_net_wm_window_type_toolbar);
-}
-
-/**
- * Set a window as a menu type.
- * @param win The Window
- *
- * Set a window as a menu type.
- * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
- */
-void
-ecore_x_window_prop_window_type_menu_set(Ecore_X_Window win)
-{
-   ecore_x_window_prop_window_type_set(win, _ecore_x_atom_net_wm_window_type_menu);
-}
-
-/**
- * Set a window as a utility type.
- * @param win The Window
- *
- * Set a window as a utility type.
- * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
- */
 void
 ecore_x_window_prop_window_type_utility_set(Ecore_X_Window win)
 {




-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to