Suggesting a minor change to ecore_x_window_prop_window_type_set().

SVN revision: 8707
This commit is contained in:
Kim Woelders 2004-01-28 21:48:27 +00:00
parent 9cd45b3d1a
commit 4fac2bf8d1
2 changed files with 71 additions and 0 deletions

View File

@ -577,6 +577,18 @@ typedef enum _Ecore_X_Window_State {
} 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);

View File

@ -836,6 +836,65 @@ ecore_x_window_prop_desktop_get(Ecore_X_Window win)
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