dmenu for lunch applications in dwm
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.2 KiB

18 years ago
18 years ago
18 years ago
18 years ago
18 years ago
18 years ago
18 years ago
  1. /* © 2006-2007 Anselm R. Garbe <garbeam at gmail dot com>
  2. * © 2006-2007 Sander van Dijk <a dot h dot vandijk at gmail dot com>
  3. * See LICENSE file for license details. */
  4. #include <X11/Xlib.h>
  5. #define FONT "-*-fixed-medium-r-normal-*-13-*-*-*-*-*-*-*"
  6. #define NORMBGCOLOR "#eeeeee"
  7. #define NORMFGCOLOR "#222222"
  8. #define SELBGCOLOR "#006699"
  9. #define SELFGCOLOR "#ffffff"
  10. #define SPACE 30 /* px */
  11. /* color */
  12. enum { ColFG, ColBG, ColLast };
  13. typedef struct {
  14. int x, y, w, h;
  15. unsigned long norm[ColLast];
  16. unsigned long sel[ColLast];
  17. Drawable drawable;
  18. GC gc;
  19. struct {
  20. XFontStruct *xfont;
  21. XFontSet set;
  22. int ascent;
  23. int descent;
  24. int height;
  25. } font;
  26. } DC; /* draw context */
  27. int screen;
  28. Display *dpy;
  29. DC dc; /* global drawing context */
  30. /* draw.c */
  31. void drawtext(const char *text, unsigned long col[ColLast]);
  32. unsigned int textw(const char *text);
  33. unsigned int textnw(const char *text, unsigned int len);
  34. /* util.c */
  35. void *emalloc(unsigned int size); /* allocates memory, exits on error */
  36. void eprint(const char *errstr, ...); /* prints errstr and exits with 1 */
  37. char *estrdup(const char *str); /* duplicates str, exits on allocation error */