X-Git-Url: https://jasonwoof.com/gitweb/?p=dwm.git;a=blobdiff_plain;f=dwm.h;h=8c9a141869c52a99296c8bce4c01f8c9ebff8644;hp=9dd764f1f632f0b8eb64af5fa19decc039a12b21;hb=2091200c957783deed032380d56c4199a23c6b81;hpb=0c6062041035105c6266f6bedb286c1990516fa7 diff --git a/dwm.h b/dwm.h index 9dd764f..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,7 +80,7 @@ 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 dwmprops, wmatom[WMLast], netatom[NetLast]; +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]; @@ -89,6 +88,14 @@ 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 */ @@ -96,51 +103,40 @@ void configure(Client *c); /* send synthetic configure event */ void detach(Client *c); /* detaches c from global client list */ void focus(Client *c); /* focus c if visible && !NULL, or focus top visible */ void killclient(const char *arg); /* kill sel nicely */ -Bool loadprops(Client *c); /* loads client properties */ 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 saveprops(Client *c); /* saves client properties */ 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 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 */ -void loaddwmprops(void); /* loads dwm properties */ +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 savedwmprops(void); /* saves dwm properties */ 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 applyrules(Client *c); /* applies rules to c */ -void compileregs(void); /* initialize regexps of rules defined in config.h */ -Bool isvisible(Client *c); /* returns True if client is visible */ 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 */