]> Dogcows Code - chaz/openbox/blob - openbox/mwm.h
add a mwm.h for the mwm hint structure and flags.
[chaz/openbox] / openbox / mwm.h
1 #ifndef __ob__mwm_h
2 #define __ob__mwm_h
3
4 #include <glib.h>
5
6 typedef struct _ObMwmHints ObMwmHints;
7
8 /*! The MWM Hints as retrieved from the window property
9 This structure only contains 3 elements, even though the Motif 2.0
10 structure contains 5. We only use the first 3, so that is all gets
11 defined.
12 */
13 struct _ObMwmHints
14 {
15 /*! A bitmask of ObMwmFlags values */
16 guint flags;
17 /*! A bitmask of ObMwmFunctions values */
18 guint functions;
19 /*! A bitmask of ObMwmDecorations values */
20 guint decorations;
21 };
22
23 /*! The number of elements in the ObMwmHints struct */
24 #define OB_MWM_ELEMENTS 3
25
26 /*! Possible flags for MWM Hints (defined by Motif 2.0) */
27 typedef enum
28 {
29 OB_MWM_FLAG_FUNCTIONS = 1 << 0, /*!< The MMW Hints define funcs */
30 OB_MWM_FLAG_DECORATIONS = 1 << 1 /*!< The MWM Hints define decor */
31 } ObMwmFlags;
32
33 /*! Possible functions for MWM Hints (defined by Motif 2.0) */
34 typedef enum
35 {
36 OB_MWM_FUNC_ALL = 1 << 0, /*!< All functions */
37 OB_MWM_FUNC_RESIZE = 1 << 1, /*!< Allow resizing */
38 OB_MWM_FUNC_MOVE = 1 << 2, /*!< Allow moving */
39 OB_MWM_FUNC_ICONIFY = 1 << 3, /*!< Allow to be iconfied */
40 OB_MWM_FUNC_MAXIMIZE = 1 << 4 /*!< Allow to be maximized */
41 #if 0
42 OM_MWM_FUNC_CLOSE = 1 << 5 /*!< Allow to be closed */
43 #endif
44 } ObMwmFunctions;
45
46 /*! Possible decorations for MWM Hints (defined by Motif 2.0) */
47 typedef enum
48 {
49 OB_MWM_DECOR_ALL = 1 << 0, /*!< All decorations */
50 OB_MWM_DECOR_BORDER = 1 << 1, /*!< Show a border */
51 OB_MWM_DECOR_HANDLE = 1 << 2, /*!< Show a handle (bottom) */
52 OB_MWM_DECOR_TITLE = 1 << 3, /*!< Show a titlebar */
53 #if 0
54 OB_MWM_DECOR_MENU = 1 << 4, /*!< Show a menu */
55 #endif
56 OB_MWM_DECOR_ICONIFY = 1 << 5, /*!< Show an iconify button */
57 OB_MWM_DECOR_MAXIMIZE = 1 << 6 /*!< Show a maximize button */
58 } ObMwmDecorations;
59
60 #endif
This page took 0.037944 seconds and 5 git commands to generate.