Mercurial > dwm-meillo
comparison dwm.h @ 43:989178822938
changed default colors
author | Anselm R. Garbe <garbeam@wmii.de> |
---|---|
date | Thu, 13 Jul 2006 11:43:05 +0200 |
parents | wm.h@040a7074d23c |
children | 58307ad56ec1 |
comparison
equal
deleted
inserted
replaced
42:040a7074d23c | 43:989178822938 |
---|---|
1 /* | |
2 * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com> | |
3 * See LICENSE file for license details. | |
4 */ | |
5 | |
6 #include <X11/Xlib.h> | |
7 | |
8 /********** CUSTOMIZE **********/ | |
9 | |
10 #define FONT "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*" | |
11 #define BGCOLOR "DarkSlateGrey" | |
12 #define FGCOLOR "LightSteelBlue" | |
13 #define BORDERCOLOR "SlateGray" | |
14 #define WM_PROTOCOL_DELWIN 1 | |
15 | |
16 /* tags */ | |
17 enum { Tscratch, Tdev, Tirc, Twww, Twork, TLast }; | |
18 | |
19 /********** CUSTOMIZE **********/ | |
20 | |
21 typedef struct DC DC; | |
22 typedef struct Client Client; | |
23 typedef struct Fnt Fnt; | |
24 typedef struct Key Key; | |
25 | |
26 /* atoms */ | |
27 enum { WMProtocols, WMDelete, WMLast }; | |
28 enum { NetSupported, NetWMName, NetLast }; | |
29 | |
30 /* cursor */ | |
31 enum { CurNormal, CurResize, CurMove, CurInput, CurLast }; | |
32 | |
33 struct Fnt { | |
34 XFontStruct *xfont; | |
35 XFontSet set; | |
36 int ascent; | |
37 int descent; | |
38 int height; | |
39 }; | |
40 | |
41 struct DC { /* draw context */ | |
42 GC gc; | |
43 Drawable drawable; | |
44 int x, y, w, h; | |
45 Fnt font; | |
46 unsigned long bg; | |
47 unsigned long fg; | |
48 unsigned long border; | |
49 }; | |
50 | |
51 struct Client { | |
52 char name[256]; | |
53 char *tags[TLast]; | |
54 int proto; | |
55 int x, y, w, h; | |
56 int tx, ty, tw, th; | |
57 int basew, baseh, incw, inch, maxw, maxh, minw, minh; | |
58 int grav; | |
59 unsigned int border; | |
60 long flags; | |
61 Window win; | |
62 Window trans; | |
63 Window title; | |
64 Client *next; | |
65 Client *snext; | |
66 }; | |
67 | |
68 struct Key { | |
69 unsigned long mod; | |
70 KeySym keysym; | |
71 void (*func)(void *aux); | |
72 void *aux; | |
73 }; | |
74 | |
75 extern Display *dpy; | |
76 extern Window root; | |
77 extern Atom wm_atom[WMLast], net_atom[NetLast]; | |
78 extern Cursor cursor[CurLast]; | |
79 extern Bool running, issel; | |
80 extern void (*handler[LASTEvent]) (XEvent *); | |
81 | |
82 extern int tsel, screen, sx, sy, sw, sh, th; | |
83 extern char stext[1024], *tags[TLast]; | |
84 | |
85 extern DC dc; | |
86 extern Client *clients, *stack; | |
87 | |
88 /* client.c */ | |
89 extern void manage(Window w, XWindowAttributes *wa); | |
90 extern void unmanage(Client *c); | |
91 extern Client *getclient(Window w); | |
92 extern void focus(Client *c); | |
93 extern void update_name(Client *c); | |
94 extern void draw_client(Client *c); | |
95 extern void resize(Client *c); | |
96 extern void update_size(Client *c); | |
97 extern Client *gettitle(Window w); | |
98 extern void craise(Client *c); | |
99 extern void lower(Client *c); | |
100 extern void ckill(void *aux); | |
101 extern void sel(void *aux); | |
102 extern void max(void *aux); | |
103 extern void toggle(void *aux); | |
104 extern void gravitate(Client *c, Bool invert); | |
105 | |
106 /* draw.c */ | |
107 extern void draw(Bool border, const char *text); | |
108 extern unsigned long initcolor(const char *colstr); | |
109 extern void initfont(const char *fontstr); | |
110 extern unsigned int textnw(char *text, unsigned int len); | |
111 extern unsigned int textw(char *text); | |
112 extern unsigned int texth(void); | |
113 | |
114 /* event.c */ | |
115 extern void discard_events(long even_mask); | |
116 | |
117 /* dev.c */ | |
118 extern void update_keys(void); | |
119 extern void keypress(XEvent *e); | |
120 extern void mresize(Client *c); | |
121 extern void mmove(Client *c); | |
122 | |
123 /* main.c */ | |
124 extern int error_handler(Display *dsply, XErrorEvent *e); | |
125 extern void send_message(Window w, Atom a, long value); | |
126 extern int win_proto(Window w); | |
127 extern void quit(void *aux); | |
128 | |
129 /* util.c */ | |
130 extern void error(const char *errstr, ...); | |
131 extern void *emallocz(unsigned int size); | |
132 extern void *emalloc(unsigned int size); | |
133 extern void *erealloc(void *ptr, unsigned int size); | |
134 extern char *estrdup(const char *str); | |
135 extern void spawn(char *argv[]); | |
136 extern void swap(void **p1, void **p2); |