comparison wm.h @ 18:1efa34c6e1b6

added mouse-based resizals
author Anselm R. Garbe <garbeam@wmii.de>
date Tue, 11 Jul 2006 21:24:10 +0200
parents 359b6e563b95
children b5510d0c6d43
comparison
equal deleted inserted replaced
17:aaf520f53110 18:1efa34c6e1b6
9 9
10 #include <X11/Xutil.h> 10 #include <X11/Xutil.h>
11 11
12 #define WM_PROTOCOL_DELWIN 1 12 #define WM_PROTOCOL_DELWIN 1
13 13
14 typedef struct Client Client;
15 typedef struct Key Key;
16 typedef enum Align Align;
17
18 enum Align {
19 NORTH = 0x01,
20 EAST = 0x02,
21 SOUTH = 0x04,
22 WEST = 0x08,
23 NEAST = NORTH | EAST,
24 NWEST = NORTH | WEST,
25 SEAST = SOUTH | EAST,
26 SWEST = SOUTH | WEST,
27 CENTER = NEAST | SWEST
28 };
29
14 /* atoms */ 30 /* atoms */
15 enum { WMProtocols, WMDelete, WMLast }; 31 enum { WMProtocols, WMDelete, WMLast };
16 enum { NetSupported, NetWMName, NetLast }; 32 enum { NetSupported, NetWMName, NetLast };
17 33
18 /* cursor */ 34 /* cursor */
19 enum { CurNormal, CurResize, CurMove, CurInput, CurLast }; 35 enum { CurNormal, CurResize, CurMove, CurInput, CurLast };
20 36
21 /* rects */ 37 /* rects */
22 enum { RFloat, RGrid, RLast }; 38 enum { RFloat, RGrid, RLast };
23
24 typedef struct Client Client;
25 typedef struct Key Key;
26 39
27 struct Client { 40 struct Client {
28 char name[256]; 41 char name[256];
29 char tag[256]; 42 char tag[256];
30 unsigned int border; 43 unsigned int border;
73 extern void unmanage(Client *c); 86 extern void unmanage(Client *c);
74 extern Client *getclient(Window w); 87 extern Client *getclient(Window w);
75 extern void focus(Client *c); 88 extern void focus(Client *c);
76 extern void update_name(Client *c); 89 extern void update_name(Client *c);
77 extern void draw_client(Client *c); 90 extern void draw_client(Client *c);
91 extern void resize(Client *c);
78 92
79 /* event.c */ 93 /* event.c */
80 extern unsigned int flush_events(long even_mask); 94 extern unsigned int discard_events(long even_mask);
81 95
82 /* key.c */ 96 /* key.c */
83 extern void update_keys(); 97 extern void update_keys();
84 extern void keypress(XEvent *e); 98 extern void keypress(XEvent *e);
85 99
100 /* mouse.c */
101 extern void mresize(Client *c);
102 extern void mmove(Client *c);
103
86 /* wm.c */ 104 /* wm.c */
87 extern int error_handler(Display *dpy, XErrorEvent *error); 105 extern int error_handler(Display *dpy, XErrorEvent *error);
88 extern void send_message(Window w, Atom a, long value); 106 extern void send_message(Window w, Atom a, long value);
89 extern int win_proto(Window w); 107 extern int win_proto(Window w);