close_delete_destroy upgrade
[fvwm.git] / fvwm / gnome.h
blob7e8195c18bfab2d1bd1fb02ba03fc8d83715e93a
1 /*********************************************************/
2 /* GNOME WM Compliance adapted for FVWM */
3 /* Properties set on the root window (or desktop window) */
4 /* */
5 /* Even though the rest of fvwm is GPL consider this file*/
6 /* Public Domain - use it however you see fit to make */
7 /* your WM GNOME compiant */
8 /* */
9 /* written by Raster */
10 /* adapted for FVWM by Jay Painter <jpaint@gnu.org> */
11 /*********************************************************/
13 #ifndef GNOME_H
14 #define GNOME_H
16 #ifdef GNOME
17 /* GNOME window manager hints support */
19 /* initalization */
20 void GNOME_Init(void);
22 /* client messages; setting hints on a window comes through this mechanism */
23 int GNOME_ProcessClientMessage(FvwmWindow *fwin, XEvent *ev);
25 /* hook into .fvwm2rc functions */
26 void GNOME_ButtonFunc(
27 XEvent *eventp,
28 Window w,
29 FvwmWindow *fwin,
30 unsigned long context,
31 char *action,
32 int *Module);
34 void GNOME_ProxyButtonEvent(XEvent *ev);
36 void GNOME_ShowDesks(
37 XEvent *eventp,
38 Window w,
39 FvwmWindow *fwin,
40 unsigned long context,
41 char *action,
42 int *Module);
44 /* get hints on a window; sets parameters in a FvwmWindow */
45 void GNOME_GetHints(FvwmWindow *fwin);
46 /* get hints on a window, set parameters in style */
47 void GNOME_GetStyle(FvwmWindow *fwin, window_style *style);
49 /* set hints on a window from parameters in FvwmWindow */
50 void GNOME_SetHints(FvwmWindow *fwin);
52 void GNOME_SetLayer(FvwmWindow *fwin);
53 void GNOME_SetDesk(FvwmWindow *fwin);
54 void GNOME_SetWinArea(FvwmWindow *w);
55 void GNOME_HandlePropRequest(unsigned int propm,
56 unsigned int prop,
57 Window win,
58 XEvent *ev);
60 /* update public window manager information */
61 void GNOME_SetAreaCount(void);
62 void GNOME_SetDeskCount(void);
63 void GNOME_SetCurrentArea(void);
64 void GNOME_SetCurrentDesk(void);
65 void GNOME_SetClientList(void);
67 #else
69 #define GNOME_Init()
70 #define GNOME_ProcessClientMessage(fwin, ev) 0
71 #define GNOME_ButtonFunc(eventp, w, fwin, context, action, Module)
72 #define GNOME_ProxyButtonEvent(ev)
73 #define GNOME_ShowDesks(eventp, w, fwin, context, action, Module)
74 #define GNOME_GetHints(fwin)
75 #define GNOME_GetStyle(fwin, style)
76 #define GNOME_SetHints(fwin)
77 #define GNOME_SetLayer(fwin)
78 #define GNOME_SetDesk(fwin)
79 #define GNOME_SetWinArea(w)
80 #define GNOME_HandlePropRequest(propm, prop, win, ev)
81 #define GNOME_SetAreaCount()
82 #define GNOME_SetDeskCount()
83 #define GNOME_SetCurrentArea()
84 #define GNOME_SetCurrentDesk()
85 #define GNOME_SetClientList()
87 #endif /* GNOME */
89 #endif /* GNOME_H */