Re: [dwm] a bottomstack and togglebar

From: Andy Nagels <thereisanewway_AT_gmail.com>
Date: Thu, 15 May 2008 18:17:31 +0200

A bstack plugin would totally make my day ^^

The togglebar functionality can also be accomplished with DEFGEOM:

DEFGEOM(nobar, -bw, 0, sw, 0, 0, sw, sh, wx, wy, 0.55*sw, wh, mx+mw,
wy, ww-mw, wh, wx, wy, ww, wh)

Greetings
Rockwolf

On Tue, 13 May 2008, Szabolcs Nagy wrote:

> a possible bottomstack or togglebar for current tip with a modified updategeom()
>
> showbar: bar is visible (or invisible)
> topbar: bar position is at top (or bottom)
> verticalsplit: master/stack split is vertical (or horizontal)
> topleftmaster: master is on top/left (or bottom/right)
>
> these can be macros in config.h so compiler can optimize away the ugly
> conditions or can be ints so eg togglebar() can be implemented as
> int showbar = 1;
> void up(void) {updategeom(); updatebar(); arrange();}
> void togglebar(const char *arg) {showbar = !showbar; up();}
>
>
> void
> updategeom(void) {
> /* bar geometry */
> bx = 0;
> by = showbar ? (topbar ? 0 : sh - bh) : -bh;
> bw = sw;
>
> /* window area geometry */
> wx = sx;
> wy = showbar && topbar ? sy + bh : sy;
> ww = sw;
> wh = showbar ? sh - bh : sh;
>
> /* master area geometry */
> mw = verticalsplit ? mfact * ww : ww;
> mh = verticalsplit ? wh : mfact * wh;
> mx = verticalsplit && !topleftmaster ? wx + ww - mw : wx;
> my = !verticalsplit && !topleftmaster ? wy + wh - mh : wy;
>
> /* tile area geometry */
> tx = verticalsplit && topleftmaster ? wx + mw : wx;
> ty = !verticalsplit && topleftmaster ? wy + mh : wy;
> tw = verticalsplit ? ww - mw : ww;
> th = verticalsplit ? wh : wh - mh;
> }
>

---
-- 
 Andy Nagels                         
                                     
 Astridlaan 29                       
                                     
 2580 Putte                          
                                     
 tel.: 015/756822                    
 mobile: 0474/827578
                                     
 e-mail (privat):                    
 thereisanewway_AT_gmail.com            
                                     
+++++++++++++++++++++++++++++++++++++
This mail was signed using GnuPG... 
                                     
 You can get my public key like this 
 with gpg:                           
                                     
 gpg --recv-keys 0x5475F368          
 if you use one of the following     
 keyservers in your gpg.conf:        
                                     
 hkp://keyserver.veridis.com:11371/  
 hkp://subkeys.pgp.net/              
                                     
 or you can search for my name or    
 e-mail address on                   
                                     
 http://keyserver.veridis.com:11371/ 
 http://subkeys.pgp.net/             

Received on Thu May 15 2008 - 17:48:17 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 15:39:39 UTC