about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAnselm R. Garbe <garbeam@wmii.de>2006-07-13 11:43:05 +0200
committerAnselm R. Garbe <garbeam@wmii.de>2006-07-13 11:43:05 +0200
commit9e8b3258a06de01c53e60243ffe3419b47d016dd (patch)
treea39ebed6cc97e75dc71f7ffb54ebb66342fef48d
parent44f2e8b952264311887c3b51dc6a987af226062a (diff)
downloaddwm-9e8b3258a06de01c53e60243ffe3419b47d016dd.tar.gz
changed default colors
-rw-r--r--Makefile4
-rw-r--r--client.c15
-rw-r--r--dev.c2
-rw-r--r--draw.c89
-rw-r--r--dwm.h (renamed from wm.h)29
-rw-r--r--event.c2
-rw-r--r--main.c (renamed from wm.c)10
-rw-r--r--util.c2
8 files changed, 71 insertions, 82 deletions
diff --git a/Makefile b/Makefile
index 41bc879..d8f9ddc 100644
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,7 @@
 
 include config.mk
 
-SRC = client.c dev.c draw.c event.c util.c wm.c
+SRC = client.c dev.c draw.c event.c main.c util.c
 OBJ = ${SRC:.c=.o}
 MAN1 = dwm.1 
 BIN = dwm
@@ -22,7 +22,7 @@ config:
 	@echo CC $<
 	@${CC} -c ${CFLAGS} $<
 
-${OBJ}: wm.h
+${OBJ}: dwm.h
 
 dwm: ${OBJ}
 	@echo LD $@
diff --git a/client.c b/client.c
index 679e2be..932b23e 100644
--- a/client.c
+++ b/client.c
@@ -9,7 +9,7 @@
 #include <X11/Xatom.h>
 #include <X11/Xutil.h>
 
-#include "wm.h"
+#include "dwm.h"
 
 static void floating(void);
 static void tiling(void);
@@ -125,8 +125,8 @@ resize_title(Client *c)
 	c->tw = 0;
 	for(i = 0; i < TLast; i++)
 		if(c->tags[i])
-			c->tw += textw(&dc.font, c->tags[i]) + dc.font.height;
-	c->tw += textw(&dc.font, c->name) + dc.font.height;
+			c->tw += textw(c->tags[i]) + dc.font.height;
+	c->tw += textw(c->name) + dc.font.height;
 	if(c->tw > c->w)
 		c->tw = c->w + 2;
 	c->tx = c->x + c->w - c->tw + 2;
@@ -226,10 +226,12 @@ focus(Client *c)
 	c->snext = stack;
 	stack = c;
 	if(old && old != c) {
+		XSetWindowBorder(dpy, old->win, dc.bg);
 		XMapWindow(dpy, old->title);
 		draw_client(old);
 	}
 	XUnmapWindow(dpy, c->title);
+	XSetWindowBorder(dpy, c->win, dc.fg);
 	draw_client(c);
 	XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
 	XFlush(dpy);
@@ -250,8 +252,6 @@ manage(Window w, XWindowAttributes *wa)
 	c->th = th;
 	c->border = 1;
 	update_size(c);
-	XSetWindowBorderWidth(dpy, c->win, 1);
-	XSetWindowBorder(dpy, c->win, dc.border);
 	XSelectInput(dpy, c->win,
 			StructureNotifyMask | PropertyChangeMask | EnterWindowMask);
 	XGetTransientForHint(dpy, c->win, &c->trans);
@@ -269,6 +269,7 @@ manage(Window w, XWindowAttributes *wa)
 	for(l=&clients; *l; l=&(*l)->next);
 	c->next = *l; /* *l == nil */
 	*l = c;
+	XSetWindowBorderWidth(dpy, c->win, 1);
 	XMapRaised(dpy, c->win);
 	XMapRaised(dpy, c->title);
 	XGrabButton(dpy, Button1, Mod1Mask, c->win, False, ButtonPressMask,
@@ -435,12 +436,12 @@ draw_client(Client *c)
 	for(i = 0; i < TLast; i++) {
 		if(c->tags[i]) {
 			dc.x += dc.w;
-			dc.w = textw(&dc.font, c->tags[i]) + dc.font.height;
+			dc.w = textw(c->tags[i]) + dc.font.height;
 			draw(True, c->tags[i]);
 		}
 	}
 	dc.x += dc.w;
-	dc.w = textw(&dc.font, c->name) + dc.font.height;
+	dc.w = textw(c->name) + dc.font.height;
 	draw(True, c->name);
 	XCopyArea(dpy, dc.drawable, c->title, dc.gc,
 			0, 0, c->tw, c->th, 0, 0);
diff --git a/dev.c b/dev.c
index 7e815ec..d5726db 100644
--- a/dev.c
+++ b/dev.c
@@ -3,7 +3,7 @@
  * See LICENSE file for license details.
  */
 
-#include "wm.h"
+#include "dwm.h"
 
 #include <stdlib.h>
 #include <string.h>
diff --git a/draw.c b/draw.c
index 455c137..fc269a2 100644
--- a/draw.c
+++ b/draw.c
@@ -8,7 +8,7 @@
 
 #include <X11/Xlocale.h>
 
-#include "wm.h"
+#include "dwm.h"
 
 static void
 drawborder(void)
@@ -59,7 +59,7 @@ draw(Bool border, const char *text)
 	x = dc.x + (h / 2);
 
 	/* shorten text if necessary */
-	while(len && (w = textnw(&dc.font, buf, len)) > dc.w - h)
+	while(len && (w = textnw(buf, len)) > dc.w - h)
 		buf[--len] = 0;
 
 	if(w > dc.w)
@@ -79,93 +79,80 @@ draw(Bool border, const char *text)
 	}
 }
 
-static unsigned long
-xinitcolors(Colormap cmap, const char *colstr)
+unsigned long
+initcolor(const char *colstr)
 {
 	XColor color;
+	Colormap cmap = DefaultColormap(dpy, screen);
+
 	XAllocNamedColor(dpy, cmap, colstr, &color, &color);
 	return color.pixel;
 }
 
-void
-initcolors(const char *bg, const char *fg, const char *border)
-{
-	Colormap cmap = DefaultColormap(dpy, screen);
-	dc.bg = xinitcolors(cmap, bg);
-	dc.fg = xinitcolors(cmap, fg);
-	dc.border = xinitcolors(cmap, border);
-}
-
 unsigned int
-textnw(Fnt *font, char *text, unsigned int len)
+textnw(char *text, unsigned int len)
 {
 	XRectangle r;
-	if(font->set) {
-		XmbTextExtents(font->set, text, len, NULL, &r);
+	if(dc.font.set) {
+		XmbTextExtents(dc.font.set, text, len, NULL, &r);
 		return r.width;
 	}
-	return XTextWidth(font->xfont, text, len);
-}
-
-unsigned int
-textw(Fnt *font, char *text)
-{
-	return textnw(font, text, strlen(text));
+	return XTextWidth(dc.font.xfont, text, len);
 }
 
 unsigned int
-texth(Fnt *font)
+textw(char *text)
 {
-	return font->height + 4;
+	return textnw(text, strlen(text));
 }
 
 void
-initfont(Fnt *font, const char *fontstr)
+initfont(const char *fontstr)
 {
 	char **missing, *def;
 	int i, n;
 
 	missing = NULL;
 	setlocale(LC_ALL, "");
-	if(font->set)
-		XFreeFontSet(dpy, font->set);
-	font->set = XCreateFontSet(dpy, fontstr, &missing, &n, &def);
+	if(dc.font.set)
+		XFreeFontSet(dpy, dc.font.set);
+	dc.font.set = XCreateFontSet(dpy, fontstr, &missing, &n, &def);
 	if(missing) {
 		while(n--)
 			fprintf(stderr, "missing fontset: %s\n", missing[n]);
 		XFreeStringList(missing);
-		if(font->set) {
-			XFreeFontSet(dpy, font->set);
-			font->set = NULL;
+		if(dc.font.set) {
+			XFreeFontSet(dpy, dc.font.set);
+			dc.font.set = NULL;
 		}
 	}
-	if(font->set) {
+	if(dc.font.set) {
 		XFontSetExtents *font_extents;
 		XFontStruct **xfonts;
 		char **font_names;
 
-		font->ascent = font->descent = 0;
-		font_extents = XExtentsOfFontSet(font->set);
-		n = XFontsOfFontSet(font->set, &xfonts, &font_names);
-		for(i = 0, font->ascent = 0, font->descent = 0; i < n; i++) {
-			if(font->ascent < (*xfonts)->ascent)
-				font->ascent = (*xfonts)->ascent;
-			if(font->descent < (*xfonts)->descent)
-				font->descent = (*xfonts)->descent;
+		dc.font.ascent = dc.font.descent = 0;
+		font_extents = XExtentsOfFontSet(dc.font.set);
+		n = XFontsOfFontSet(dc.font.set, &xfonts, &font_names);
+		for(i = 0, dc.font.ascent = 0, dc.font.descent = 0; i < n; i++) {
+			if(dc.font.ascent < (*xfonts)->ascent)
+				dc.font.ascent = (*xfonts)->ascent;
+			if(dc.font.descent < (*xfonts)->descent)
+				dc.font.descent = (*xfonts)->descent;
 			xfonts++;
 		}
 	}
 	else {
-		if(font->xfont)
-			XFreeFont(dpy, font->xfont);
-		font->xfont = NULL;
-		font->xfont = XLoadQueryFont(dpy, fontstr);
-		if (!font->xfont)
-			font->xfont = XLoadQueryFont(dpy, "fixed");
-		if (!font->xfont)
+		if(dc.font.xfont)
+			XFreeFont(dpy, dc.font.xfont);
+		dc.font.xfont = NULL;
+		dc.font.xfont = XLoadQueryFont(dpy, fontstr);
+		if (!dc.font.xfont)
+			dc.font.xfont = XLoadQueryFont(dpy, "fixed");
+		if (!dc.font.xfont)
 			error("error, cannot init 'fixed' font\n");
-		font->ascent = font->xfont->ascent;
-		font->descent = font->xfont->descent;
+		dc.font.ascent = dc.font.xfont->ascent;
+		dc.font.descent = dc.font.xfont->descent;
 	}
-	font->height = font->ascent + font->descent;
+	dc.font.height = dc.font.ascent + dc.font.descent;
 }
diff --git a/wm.h b/dwm.h
index 7e48434..acfdcbb 100644
--- a/wm.h
+++ b/dwm.h
@@ -8,10 +8,9 @@
 /********** CUSTOMIZE **********/
 
 #define FONT		"-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*"
-#define BGCOLOR		"#666699"
-#define FGCOLOR		"#ffffff"
-#define BORDERCOLOR	"#9999CC"
-#define STATUSDELAY	10 /* seconds */
+#define BGCOLOR		"DarkSlateGrey"
+#define FGCOLOR		"LightSteelBlue"
+#define BORDERCOLOR	"SlateGray"
 #define WM_PROTOCOL_DELWIN 1
 
 /* tags */
@@ -106,11 +105,11 @@ extern void gravitate(Client *c, Bool invert);
 
 /* draw.c */
 extern void draw(Bool border, const char *text);
-extern void initcolors(const char *bg, const char *fg, const char *bo);
-extern void initfont(Fnt *font, const char *fontstr);
-extern unsigned int textnw(Fnt *font, char *text, unsigned int len);
-extern unsigned int textw(Fnt *font, char *text);
-extern unsigned int texth(Fnt *font);
+extern unsigned long initcolor(const char *colstr);
+extern void initfont(const char *fontstr);
+extern unsigned int textnw(char *text, unsigned int len);
+extern unsigned int textw(char *text);
+extern unsigned int texth(void);
 
 /* event.c */
 extern void discard_events(long even_mask);
@@ -121,6 +120,12 @@ extern void keypress(XEvent *e);
 extern void mresize(Client *c);
 extern void mmove(Client *c);
 
+/* main.c */
+extern int error_handler(Display *dsply, XErrorEvent *e);
+extern void send_message(Window w, Atom a, long value);
+extern int win_proto(Window w);
+extern void quit(void *aux);
+
 /* util.c */
 extern void error(const char *errstr, ...);
 extern void *emallocz(unsigned int size);
@@ -129,9 +134,3 @@ extern void *erealloc(void *ptr, unsigned int size);
 extern char *estrdup(const char *str);
 extern void spawn(char *argv[]);
 extern void swap(void **p1, void **p2);
-
-/* wm.c */
-extern int error_handler(Display *dsply, XErrorEvent *e);
-extern void send_message(Window w, Atom a, long value);
-extern int win_proto(Window w);
-extern void quit(void *aux);
diff --git a/event.c b/event.c
index 5ff6b91..937bee2 100644
--- a/event.c
+++ b/event.c
@@ -9,7 +9,7 @@
 #include <X11/keysym.h>
 #include <X11/Xatom.h>
 
-#include "wm.h"
+#include "dwm.h"
 
 /* local functions */
 static void buttonpress(XEvent *e);
diff --git a/wm.c b/main.c
index ed002f7..b63d07e 100644
--- a/wm.c
+++ b/main.c
@@ -11,7 +11,7 @@
 #include <X11/Xatom.h>
 #include <X11/Xproto.h>
 
-#include "wm.h"
+#include "dwm.h"
 
 /********** CUSTOMIZE **********/
 
@@ -244,10 +244,12 @@ main(int argc, char *argv[])
 	update_keys();
 
 	/* style */
-	initcolors(BGCOLOR, FGCOLOR, BORDERCOLOR);
-	initfont(&dc.font, FONT);
+	dc.bg = initcolor(BGCOLOR);
+	dc.fg = initcolor(FGCOLOR);
+	dc.border = initcolor(BORDERCOLOR);
+	initfont(FONT);
 
-	th = texth(&dc.font);
+	th = dc.font.height + 4;
 
 	dc.drawable = XCreatePixmap(dpy, root, sw, th, DefaultDepth(dpy, screen));
 	dc.gc = XCreateGC(dpy, root, 0, 0);
diff --git a/util.c b/util.c
index 0a5bd96..14a4511 100644
--- a/util.c
+++ b/util.c
@@ -11,7 +11,7 @@
 #include <sys/wait.h>
 #include <unistd.h>
 
-#include "wm.h"
+#include "dwm.h"
 
 void
 error(const char *errstr, ...) {
; 2015-04-14 19:06:57 -0700 committer Kartik K. Agaram <vc@akkartik.com> 2015-04-14 19:08:38 -0700 1063 - variable names for surrounding spaces now work' href='/akkartik/mu/commit/cpp/036closure_name?h=main&id=82ac0b7ecbc145ed8c8ecd8309166f654af1ee75'>82ac0b7e ^
ac0e9db5 ^
82ac0b7e ^









ac0e9db5 ^

82ac0b7e ^

ac0e9db5 ^
0487a30e ^
82ac0b7e ^


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133