X-Git-Url: https://jasonwoof.com/gitweb/?p=dwm.git;a=blobdiff_plain;f=dwm.h;h=8c9a141869c52a99296c8bce4c01f8c9ebff8644;hp=8f5ffdb22a4517971dd52cdbd5058bde6f07856b;hb=2091200c957783deed032380d56c4199a23c6b81;hpb=77044e876511f51c34bde379d89e2de754707ee6 diff --git a/dwm.h b/dwm.h index 8f5ffdb..8c9a141 100644 --- a/dwm.h +++ b/dwm.h @@ -39,7 +39,7 @@ enum { BarTop, BarBot, BarOff }; /* bar position */ enum { CurNormal, CurResize, CurMove, CurLast }; /* cursor */ enum { ColBorder, ColFG, ColBG, ColLast }; /* color */ enum { NetSupported, NetWMName, NetLast }; /* EWMH atoms */ -enum { WMProtocols, WMDelete, WMState, WMLast }; /* default atoms */ +enum { WMProtocols, WMDelete, WMName, WMState, WMLast };/* default atoms */ typedef struct Client Client; struct Client { @@ -48,7 +48,6 @@ struct Client { int rx, ry, rw, rh; /* revert geometry */ int basew, baseh, incw, inch, maxw, maxh, minw, minh; int minax, maxax, minay, maxay; - int unmapped; long flags; unsigned int border, oldborder; Bool isbanned, isfixed, ismax, isfloating; @@ -82,13 +81,21 @@ extern unsigned int bh, blw, bpos; /* bar height, bar layout label width, bar p extern unsigned int ntags, numlockmask; /* number of tags, numlock mask */ extern void (*handler[LASTEvent])(XEvent *); /* event handler */ extern Atom wmatom[WMLast], netatom[NetLast]; -extern Bool selscreen, *seltag; /* seltag is array of Bool */ +extern Bool selscreen, *seltags; /* seltags is array of Bool */ extern Client *clients, *sel, *stack; /* global client list and stack */ extern Cursor cursor[CurLast]; extern DC dc; /* global draw context */ extern Display *dpy; extern Window root, barwin; +/* bar.c */ +void drawbar(void); /* draw the bar */ +void initbar(void); /* initializes the bar */ +void initstyle(void); /* initializes colors and font */ +unsigned int textw(const char *text); /* return the width of text in px*/ +void togglebar(const char *arg); /* shows/hides the bar */ +void updatebarpos(void); /* updates the bar position */ + /* client.c */ void attach(Client *c); /* attaches c to global client list */ void ban(Client *c); /* bans c */ @@ -99,43 +106,37 @@ void killclient(const char *arg); /* kill sel nicely */ void manage(Window w, XWindowAttributes *wa); /* manage new client */ void resize(Client *c, int x, int y, int w, int h, Bool sizehints); /* resize with given coordinates c*/ -void togglefloating(const char *arg); /* toggles sel between floating/tiled state */ void unban(Client *c); /* unbans c */ -void unmanage(Client *c); /* destroy c */ +void unmanage(Client *c); /* unmanage c */ void updatesizehints(Client *c); /* update the size hint variables of c */ void updatetitle(Client *c); /* update the name of c */ -/* draw.c */ -void drawstatus(void); /* draw the bar */ -void drawtext(const char *text, unsigned long col[ColLast]); /* draw text */ -unsigned int textw(const char *text); /* return the width of text in px*/ - /* event.c */ void grabkeys(void); /* grab all keys defined in config.h */ -/* layout.c */ -void arrange(void); /* arranges all windows depending on the layout in use */ -void focusclient(const char *arg); /* focuses next(1)/previous(-1) visible client */ -const char *getsymbol(void); /* returns True symbol of enabled layout */ -Bool isfloating(void); /* returns True if floating layout is enabled */ -Bool isarrange(void (*func)()); /* returns True if func is the layout function in use */ -void initlayouts(void); /* initialize layout array */ -Client *nexttiled(Client *c); /* returns tiled successor of c */ -void restack(void); /* restores z layers of all clients */ -void setlayout(const char *arg); /* sets layout, NULL means next layout */ -void togglebar(const char *arg); /* shows/hides the bar */ -void togglemax(const char *arg); /* toggles maximization of floating client */ - /* main.c */ -void updatebarpos(void); /* updates the bar position */ -void quit(const char *arg); /* quit dwm nicely */ +Bool gettextprop(Window w, Atom atom, + char *text, unsigned int size); /* return text property, UTF-8 compliant */ +void quit(const char *arg); /* quit dwm nicely */ int xerror(Display *dsply, XErrorEvent *ee); /* dwm's X error handler */ -/* tag.c */ +/* screen.c */ +void applyrules(Client *c); /* applies rules to c */ +void arrange(void); /* arranges all windows depending on the layout in use */ void compileregs(void); /* initialize regexps of rules defined in config.h */ +void focusnext(const char *arg); /* focuses next visible client */ +void focusprev(const char *arg); /* focuses prev visible client */ +const char *getsymbol(void); /* returns symbol of enabled layout */ +void initlayouts(void); /* initialize layout array */ +Bool isarrange(void (*func)()); /* returns True if func is the layout function in use */ +Bool isfloating(void); /* returns True if floating layout is enabled */ Bool isvisible(Client *c); /* returns True if client is visible */ -void settags(Client *c, Client *trans); /* sets tags of c */ +Client *nexttiled(Client *c); /* returns tiled successor of c */ +void restack(void); /* restores z layers of all clients */ +void setlayout(const char *arg); /* sets layout, NULL means next layout */ void tag(const char *arg); /* tags sel with arg's index */ +void togglefloating(const char *arg); /* toggles sel between floating/tiled state */ +void togglemax(const char *arg); /* toggles maximization of floating client */ void toggletag(const char *arg); /* toggles sel tags with arg's index */ void toggleview(const char *arg); /* toggles the tag with arg's index (in)visible */ void view(const char *arg); /* views the tag with arg's index */