X-Git-Url: https://jasonwoof.com/gitweb/?p=dwm.git;a=blobdiff_plain;f=dwm.h;h=8c9a141869c52a99296c8bce4c01f8c9ebff8644;hp=509b845a5794323d3e7d257c56ce86b46eaee2c6;hb=2091200c957783deed032380d56c4199a23c6b81;hpb=10d13f01ff764ba0e875adf5d2b83c49aa08d148 diff --git a/dwm.h b/dwm.h index 509b845..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; @@ -81,14 +80,22 @@ extern int wax, way, wah, waw; /* windowarea geometry */ extern unsigned int bh, blw, bpos; /* bar height, bar layout label width, bar position */ extern unsigned int ntags, numlockmask; /* number of tags, numlock mask */ extern void (*handler[LASTEvent])(XEvent *); /* event handler */ -extern Atom dwmconfig, wmatom[WMLast], netatom[NetLast]; -extern Bool selscreen, *seltag; /* seltag is array of Bool */ +extern Atom wmatom[WMLast], netatom[NetLast]; +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 */ @@ -100,42 +107,36 @@ 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 unban(Client *c); /* unbans c */ -void unmanage(Client *c, long state); /* unmanage 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 */ +/* main.c */ +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 */ + +/* screen.c */ +void applyrules(Client *c); /* applies rules to 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 */ +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 */ -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 */ +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 */ 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 */ -int xerror(Display *dsply, XErrorEvent *ee); /* dwm's X error handler */ - -/* tag.c */ -void compileregs(void); /* initialize regexps of rules defined in config.h */ -Bool isvisible(Client *c); /* returns True if client is visible */ -void settags(Client *c, Client *trans); /* sets tags of c */ 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 */