X-Git-Url: https://git.xinqibao.xyz/dmenu.git/blobdiff_plain/e980c7ff1814b533f674eec535af6c5658b1bc62..9911455f5b7787c999a570faf33cf6ad0bec056c:/dmenu.h

diff --git a/dmenu.h b/dmenu.h
index a739fa5..84e19e6 100644
--- a/dmenu.h
+++ b/dmenu.h
@@ -1,45 +1,44 @@
-/*
- * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
+/* (C)opyright MMVI-MMVII Anselm R. Garbe <garbeam at gmail dot com>
  * See LICENSE file for license details.
  */
 
-#include "config.h"
 #include <X11/Xlib.h>
-#include <X11/Xlocale.h>
 
-#define SPACE		30 /* px */
+#define FONT			"-*-fixed-medium-r-normal-*-13-*-*-*-*-*-*-*"
+#define NORMBGCOLOR		"#eeeeee"
+#define NORMFGCOLOR		"#222222"
+#define SELBGCOLOR		"#006699"
+#define SELFGCOLOR		"#ffffff"
+#define SPACE			30 /* px */
 
-typedef struct DC DC;
-typedef struct Fnt Fnt;
+/* color */
+enum { ColFG, ColBG, ColLast };
 
-struct Fnt {
-	XFontStruct *xfont;
-	XFontSet set;
-	int ascent;
-	int descent;
-	int height;
-};
-
-struct DC { /* draw context */
+typedef struct {
 	int x, y, w, h;
-	unsigned long bg[2];
-	unsigned long fg[2];
+	unsigned long norm[ColLast];
+	unsigned long sel[ColLast];
 	Drawable drawable;
-	Fnt font;
 	GC gc;
-};
-
-extern int screen;
-extern Display *dpy;
-extern DC dc;
+	struct {
+		XFontStruct *xfont;
+		XFontSet set;
+		int ascent;
+		int descent;
+		int height;
+	} font;
+} DC; /* draw context */
+
+int screen;
+Display *dpy;
+DC dc;			/* global drawing context */
 
 /* draw.c */
-extern void drawtext(const char *text, unsigned int colidx, Bool border);
-extern unsigned long getcolor(const char *colstr);
-extern void setfont(const char *fontstr);
-extern unsigned int textw(const char *text);
+void drawtext(const char *text, unsigned long col[ColLast]);
+unsigned int textw(const char *text);
+unsigned int textnw(const char *text, unsigned int len);
 
 /* util.c */
-extern void *emalloc(unsigned int size);
-extern void eprint(const char *errstr, ...);
-extern char *estrdup(const char *str);
+void *emalloc(unsigned int size);		/* allocates memory, exits on error */
+void eprint(const char *errstr, ...);		/* prints errstr and exits with 1 */
+char *estrdup(const char *str);			/* duplicates str, exits on allocation error */