comparison wm.h @ 5:e5018cae273f

added several other stuff
author Anselm R. Garbe <garbeam@wmii.de>
date Mon, 10 Jul 2006 22:16:48 +0200
parents e969f3575b7a
children e0cefb3981c8
comparison
equal deleted inserted replaced
4:991bd8b0771e 5:e5018cae273f
7 #include "draw.h" 7 #include "draw.h"
8 #include "util.h" 8 #include "util.h"
9 9
10 #include <X11/Xutil.h> 10 #include <X11/Xutil.h>
11 11
12 /* WM atoms */ 12 /* atoms */
13 enum { WMState, WMProtocols, WMDelete, WMLast }; 13 enum { WMState, WMProtocols, WMDelete, WMLast };
14
15 /* NET atoms */
16 enum { NetSupported, NetWMName, NetLast }; 14 enum { NetSupported, NetWMName, NetLast };
17 15
18 /* Cursor */ 16 /* cursor */
19 enum { CurNormal, CurResize, CurMove, CurInput, CurLast }; 17 enum { CurNormal, CurResize, CurMove, CurInput, CurLast };
20 18
21 /* Rects */ 19 /* rects */
22 enum { RFloat, RGrid, RLast }; 20 enum { RFloat, RGrid, RLast };
23 21
24 typedef struct Client Client; 22 typedef struct Client Client;
25 typedef struct Tag Tag; 23 typedef struct Tag Tag;
26 24
27 struct Client { 25 struct Client {
28 Tag *tag; 26 Tag *tag;
29 char name[256]; 27 char name[256];
30 int proto; 28 int proto;
29 unsigned int border;
30 Bool fixedsize;
31 Window win; 31 Window win;
32 Window trans; 32 Window trans;
33 Window title; 33 Window title;
34 GC gc;
35 XSizeHints size; 34 XSizeHints size;
36 XRectangle r[RLast]; 35 XRectangle r[RLast];
37 Client *next; 36 Client *next;
38 Client *tnext; 37 Client *snext;
39 Client *tprev;
40 }; 38 };
41 39
42 struct Tag { 40 struct Tag {
43 char name[256]; 41 char name[256];
44 Client *clients; 42 Client *stack;
45 Client *sel;
46 XRectangle r; 43 XRectangle r;
44 Tag *next;
45 Tag *cnext;
47 }; 46 };
48 47
49 extern Display *dpy; 48 extern Display *dpy;
50 extern Window root; 49 extern Window root, barwin;
51 extern XRectangle rect; 50 extern Atom wm_atom[WMLast], net_atom[NetLast];
52 extern Atom wm_atom[WMLast];
53 extern Atom net_atom[NetLast];
54 extern Cursor cursor[CurLast]; 51 extern Cursor cursor[CurLast];
55 extern Pixmap pmap; 52 extern XRectangle rect, barrect;
53 extern Bool running;
54 extern void (*handler[LASTEvent]) (XEvent *);
56 55
57 extern int screen, sel_screen; 56 extern int screen, sel_screen;
58 extern unsigned int kmask, numlock_mask; 57 extern unsigned int lock_mask, numlock_mask;
58 extern char *bartext, *shell;
59 59
60 extern Brush brush; 60 extern Brush brush;
61 61
62 /* bar.c */
63 extern void draw_bar();
64
65 /* client.c */
66 extern Client *create_client(Window w, XWindowAttributes *wa);
67 extern void manage(Client *c);
68
62 /* wm.c */ 69 /* wm.c */
70 extern int win_proto(Window w);