Enlightenment CVS committal
Author : kwo
Project : e17
Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore_x
Modified Files:
Ecore_X.h ecore_x_window_prop.c
Log Message:
Suggesting a minor change to ecore_x_window_prop_window_type_set().
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Ecore_X.h,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -3 -r1.28 -r1.29
--- Ecore_X.h 22 Jan 2004 23:13:43 -0000 1.28
+++ Ecore_X.h 28 Jan 2004 21:48:27 -0000 1.29
@@ -577,6 +577,18 @@
} Ecore_X_Window_State;
+typedef enum _Ecore_X_Window_Type {
+ ECORE_X_WINDOW_TYPE_DESKTOP,
+ ECORE_X_WINDOW_TYPE_DOCK,
+ ECORE_X_WINDOW_TYPE_TOOLBAR,
+ ECORE_X_WINDOW_TYPE_MENU,
+ ECORE_X_WINDOW_TYPE_UTILITY,
+ ECORE_X_WINDOW_TYPE_SPLASH,
+ ECORE_X_WINDOW_TYPE_DIALOG,
+ ECORE_X_WINDOW_TYPE_NORMAL
+} Ecore_X_Window_Type;
+
+
int ecore_x_init(const char *name);
int ecore_x_shutdown(void);
Ecore_X_Display *ecore_x_display_get(void);
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_window_prop.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -3 -r1.24 -r1.25
--- ecore_x_window_prop.c 20 Jan 2004 01:03:15 -0000 1.24
+++ ecore_x_window_prop.c 28 Jan 2004 21:48:27 -0000 1.25
@@ -836,6 +836,65 @@
return desktop;
}
+
+#if 0
+/*
+ * Suggesting a slight change of API.
+ * The ECORE_X_WINDOW_TYPE_...'s I think we want in Ecore_X.h anyway.
+ * It makes things more similar to ecore_x_window_prop_state_set().
+ * It also avoids having to define all the different
+ * ecore_x_window_prop_window_type_..._set()'s.
+ * Setting a window to type desktop would then become
+ * ecore_x_window_prop_window_type_set(win, ECORE_X_WINDOW_TYPE_DESKTOP);
+ * /Kim
+ */
+
+static Ecore_X_Atom
+_ecore_x_window_prop_type_atom_get(Ecore_X_Window_Type type)
+{
+ switch (type)
+ {
+ case ECORE_X_WINDOW_TYPE_DESKTOP:
+ return _ecore_x_atom_net_wm_window_type_desktop;
+ case ECORE_X_WINDOW_TYPE_DOCK:
+ return _ecore_x_atom_net_wm_window_type_dock;
+ case ECORE_X_WINDOW_TYPE_TOOLBAR:
+ return _ecore_x_atom_net_wm_window_type_toolbar;
+ case ECORE_X_WINDOW_TYPE_MENU:
+ return _ecore_x_atom_net_wm_window_type_menu;
+ case ECORE_X_WINDOW_TYPE_UTILITY:
+ return _ecore_x_atom_net_wm_window_type_utility;
+ case ECORE_X_WINDOW_TYPE_SPLASH:
+ return _ecore_x_atom_net_wm_window_type_splash;
+ case ECORE_X_WINDOW_TYPE_DIALOG:
+ return _ecore_x_atom_net_wm_window_type_dialog;
+ case ECORE_X_WINDOW_TYPE_NORMAL:
+ return _ecore_x_atom_net_wm_window_type_normal;
+ default:
+ return 0;
+ }
+}
+
+/**
+ * Set a window's type.
+ * @param win The Window
+ * @param type The Type
+ *
+ * Set a windows 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_set(Ecore_X_Window win, Ecore_X_Window_Type type)
+{
+ Atom a;
+
+ a = _ecore_x_window_prop_type_atom_get(type);
+ if (a)
+ ecore_x_window_prop_property_set(win, _ecore_x_atom_net_wm_window_type,
+ XA_ATOM, 32, (unsigned char*)&a, 1);
+}
+#endif
+
/**
* Change a window's type.
* @param win The Window
-------------------------------------------------------
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