]> git.decadent.org.uk Git - ion3.git/blob - ioncore/mwmhints.h
Merge commit '20070203' into HEAD
[ion3.git] / ioncore / mwmhints.h
1 /*
2  * ion/ioncore/mwmhints.h
3  *
4  * Copyright (c) Tuomo Valkonen 1999-2007. 
5  *
6  * Ion is free software; you can redistribute it and/or modify it under
7  * the terms of the GNU Lesser General Public License as published by
8  * the Free Software Foundation; either version 2.1 of the License, or
9  * (at your option) any later version.
10  */
11
12 #ifndef ION_IONCORE_MWMHINTS_H
13 #define ION_IONCORE_MWMHINTS_H
14
15 #include <X11/Xmd.h>
16
17 #include "common.h"
18
19
20 #define MWM_HINTS_FUNCTIONS     0x0001
21 #define MWM_HINTS_DECORATIONS   0x0002
22 #define MWM_HINTS_IONCORE_INPUTMODE_MODE    0x0004
23 #define MWM_HINTS_IONCORE_INPUTMODE_STATUS  0x0008
24
25 #define MWM_FUNC_ALL            0x0001
26 #define MWM_FUNC_RESIZE         0x0002
27 #define MWM_FUNC_MOVE           0x0004
28 #define MWM_FUNC_ICONIFY        0x0008
29 #define MWM_FUNC_MAXIMIZE       0x0010
30 #define MWM_FUNC_CLOSE          0x0020
31
32 #define MWM_DECOR_ALL           0x0001
33 #define MWM_DECOR_BORDER        0x0002
34 #define MWM_DECOR_HANDLE        0x0004
35 #define MWM_DECOR_TITLE         0x0008
36 #define MWM_DECOR_MENU          0x0010
37 #define MWM_DECOR_ICONIFY       0x0020
38 #define MWM_DECOR_MAXIMIZE      0x0040
39
40 #define MWM_IONCORE_INPUTMODE_MODELESS 0
41 #define MWM_IONCORE_INPUTMODE_PRIMARY_APPLICATION_MODAL 1
42 #define MWM_IONCORE_INPUTMODE_SYSTEM_MODAL 2
43 #define MWM_IONCORE_INPUTMODE_FULL_APPLICATION_MODAL 3
44
45 INTRSTRUCT(WMwmHints);
46     
47 DECLSTRUCT(WMwmHints){
48     CARD32 flags;
49     CARD32 functions;
50     CARD32 decorations;
51     INT32 inputmode;
52     CARD32 status;
53 };
54
55 #define MWM_DECOR_NDX 3
56 #define MWM_N_HINTS 5
57
58
59 extern WMwmHints *xwindow_get_mwmhints(Window win);
60 extern void xwindow_check_mwmhints_nodecor(Window win, bool *nodecor);
61
62
63 #endif /* ION_IONCORE_MWMHINTS_H */