cleanup
This commit is contained in:
parent
26236a4900
commit
d066975e78
3 changed files with 10 additions and 30 deletions
7
dmenu.c
7
dmenu.c
|
@ -66,7 +66,6 @@ main(int argc, char *argv[]) {
|
||||||
Bool fast = False;
|
Bool fast = False;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
progname = "dmenu";
|
|
||||||
for(i = 1; i < argc; i++)
|
for(i = 1; i < argc; i++)
|
||||||
/* single flags */
|
/* single flags */
|
||||||
if(!strcmp(argv[i], "-v")) {
|
if(!strcmp(argv[i], "-v")) {
|
||||||
|
@ -383,10 +382,9 @@ keypress(XKeyEvent *ev) {
|
||||||
|
|
||||||
void
|
void
|
||||||
match(void) {
|
match(void) {
|
||||||
size_t len;
|
size_t len = strlen(text);
|
||||||
Item *item, *lexact, *lprefix, *lsubstr, *exactend, *prefixend, *substrend;
|
Item *item, *lexact, *lprefix, *lsubstr, *exactend, *prefixend, *substrend;
|
||||||
|
|
||||||
len = strlen(text);
|
|
||||||
matches = lexact = lprefix = lsubstr = matchend = exactend = prefixend = substrend = NULL;
|
matches = lexact = lprefix = lsubstr = matchend = exactend = prefixend = substrend = NULL;
|
||||||
for(item = items; item && item->text; item++)
|
for(item = items; item && item->text; item++)
|
||||||
if(!fstrncmp(text, item->text, len + 1))
|
if(!fstrncmp(text, item->text, len + 1))
|
||||||
|
@ -424,9 +422,8 @@ match(void) {
|
||||||
|
|
||||||
size_t
|
size_t
|
||||||
nextrune(int incr) {
|
nextrune(int incr) {
|
||||||
size_t n, len;
|
size_t n, len = strlen(text);
|
||||||
|
|
||||||
len = strlen(text);
|
|
||||||
for(n = cursor + incr; n >= 0 && n < len && (text[n] & 0xc0) == 0x80; n += incr);
|
for(n = cursor + incr; n >= 0 && n < len && (text[n] & 0xc0) == 0x80; n += incr);
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
24
draw.c
24
draw.c
|
@ -29,10 +29,9 @@ drawrect(DC *dc, int x, int y, unsigned int w, unsigned int h, Bool fill, unsign
|
||||||
void
|
void
|
||||||
drawtext(DC *dc, const char *text, unsigned long col[ColLast]) {
|
drawtext(DC *dc, const char *text, unsigned long col[ColLast]) {
|
||||||
char buf[256];
|
char buf[256];
|
||||||
size_t n, mn;
|
size_t mn, n = strlen(text);
|
||||||
|
|
||||||
/* shorten text if necessary */
|
/* shorten text if necessary */
|
||||||
n = strlen(text);
|
|
||||||
for(mn = MIN(n, sizeof buf); textnw(dc, text, mn) > dc->w - dc->font.height/2; mn--)
|
for(mn = MIN(n, sizeof buf); textnw(dc, text, mn) > dc->w - dc->font.height/2; mn--)
|
||||||
if(mn == 0)
|
if(mn == 0)
|
||||||
return;
|
return;
|
||||||
|
@ -46,10 +45,8 @@ drawtext(DC *dc, const char *text, unsigned long col[ColLast]) {
|
||||||
|
|
||||||
void
|
void
|
||||||
drawtextn(DC *dc, const char *text, size_t n, unsigned long col[ColLast]) {
|
drawtextn(DC *dc, const char *text, size_t n, unsigned long col[ColLast]) {
|
||||||
int x, y;
|
int x = dc->x + dc->font.height/2;
|
||||||
|
int y = dc->y + dc->font.ascent+1;
|
||||||
x = dc->x + dc->font.height/2;
|
|
||||||
y = dc->y + dc->font.ascent+1;
|
|
||||||
|
|
||||||
XSetForeground(dc->dpy, dc->gc, FG(dc, col));
|
XSetForeground(dc->dpy, dc->gc, FG(dc, col));
|
||||||
if(dc->font.set)
|
if(dc->font.set)
|
||||||
|
@ -64,7 +61,6 @@ void
|
||||||
eprintf(const char *fmt, ...) {
|
eprintf(const char *fmt, ...) {
|
||||||
va_list ap;
|
va_list ap;
|
||||||
|
|
||||||
fprintf(stderr, "%s: ", progname);
|
|
||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
vfprintf(stderr, fmt, ap);
|
vfprintf(stderr, fmt, ap);
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
@ -104,7 +100,7 @@ initdc(void) {
|
||||||
DC *dc;
|
DC *dc;
|
||||||
|
|
||||||
if(!setlocale(LC_CTYPE, "") || !XSupportsLocale())
|
if(!setlocale(LC_CTYPE, "") || !XSupportsLocale())
|
||||||
weprintf("no locale support\n");
|
fprintf(stderr, "no locale support\n");
|
||||||
if(!(dc = calloc(1, sizeof *dc)))
|
if(!(dc = calloc(1, sizeof *dc)))
|
||||||
eprintf("cannot malloc %u bytes:", sizeof *dc);
|
eprintf("cannot malloc %u bytes:", sizeof *dc);
|
||||||
if(!(dc->dpy = XOpenDisplay(NULL)))
|
if(!(dc->dpy = XOpenDisplay(NULL)))
|
||||||
|
@ -119,7 +115,7 @@ void
|
||||||
initfont(DC *dc, const char *fontstr) {
|
initfont(DC *dc, const char *fontstr) {
|
||||||
if(!loadfont(dc, fontstr ? fontstr : DEFFONT)) {
|
if(!loadfont(dc, fontstr ? fontstr : DEFFONT)) {
|
||||||
if(fontstr != NULL)
|
if(fontstr != NULL)
|
||||||
weprintf("cannot load font '%s'\n", fontstr);
|
fprintf(stderr, "cannot load font '%s'\n", fontstr);
|
||||||
if(fontstr == NULL || !loadfont(dc, DEFFONT))
|
if(fontstr == NULL || !loadfont(dc, DEFFONT))
|
||||||
eprintf("cannot load font '%s'\n", DEFFONT);
|
eprintf("cannot load font '%s'\n", DEFFONT);
|
||||||
}
|
}
|
||||||
|
@ -184,13 +180,3 @@ int
|
||||||
textw(DC *dc, const char *text) {
|
textw(DC *dc, const char *text) {
|
||||||
return textnw(dc, text, strlen(text)) + dc->font.height;
|
return textnw(dc, text, strlen(text)) + dc->font.height;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
weprintf(const char *fmt, ...) {
|
|
||||||
va_list ap;
|
|
||||||
|
|
||||||
fprintf(stderr, "%s: ", progname);
|
|
||||||
va_start(ap, fmt);
|
|
||||||
vfprintf(stderr, fmt, ap);
|
|
||||||
va_end(ap);
|
|
||||||
}
|
|
||||||
|
|
9
draw.h
9
draw.h
|
@ -20,18 +20,15 @@ typedef struct {
|
||||||
} font;
|
} font;
|
||||||
} DC; /* draw context */
|
} DC; /* draw context */
|
||||||
|
|
||||||
unsigned long getcolor(DC *dc, const char *colstr);
|
|
||||||
void drawrect(DC *dc, int x, int y, unsigned int w, unsigned int h, Bool fill, unsigned long color);
|
void drawrect(DC *dc, int x, int y, unsigned int w, unsigned int h, Bool fill, unsigned long color);
|
||||||
void drawtext(DC *dc, const char *text, unsigned long col[ColLast]);
|
void drawtext(DC *dc, const char *text, unsigned long col[ColLast]);
|
||||||
void drawtextn(DC *dc, const char *text, size_t n, unsigned long col[ColLast]);
|
void drawtextn(DC *dc, const char *text, size_t n, unsigned long col[ColLast]);
|
||||||
void initfont(DC *dc, const char *fontstr);
|
void eprintf(const char *fmt, ...);
|
||||||
void freedc(DC *dc);
|
void freedc(DC *dc);
|
||||||
|
unsigned long getcolor(DC *dc, const char *colstr);
|
||||||
DC *initdc(void);
|
DC *initdc(void);
|
||||||
|
void initfont(DC *dc, const char *fontstr);
|
||||||
void mapdc(DC *dc, Window win, unsigned int w, unsigned int h);
|
void mapdc(DC *dc, Window win, unsigned int w, unsigned int h);
|
||||||
void resizedc(DC *dc, unsigned int w, unsigned int h);
|
void resizedc(DC *dc, unsigned int w, unsigned int h);
|
||||||
int textnw(DC *dc, const char *text, size_t len);
|
int textnw(DC *dc, const char *text, size_t len);
|
||||||
int textw(DC *dc, const char *text);
|
int textw(DC *dc, const char *text);
|
||||||
void eprintf(const char *fmt, ...);
|
|
||||||
void weprintf(const char *fmt, ...);
|
|
||||||
|
|
||||||
const char *progname;
|
|
||||||
|
|
Loading…
Reference in a new issue