Re: [dwm] Update: bottomstack patch for latest 4.4 tip

2007-08-12 Thread Anselm R. Garbe
On Sat, Aug 11, 2007 at 08:09:54PM -0400, James Turner wrote:
 Well the zoom function seems to work, but increasing the master area  
 does not.  I changed part of the incmaster function within tile.c to  
 if(lt-arrange == floating) return; but I still can't increase the  
 master in the bottom stack layout mode.  Any ideas?

The problem here is, that master is declared static in tile.o, so
whenever you call incmaster it is only used in tile(). In
bstack() you use the locally declared master in bstack.c instead
,)

This all is due the fact that bstack is more a patch to tile
than a separate layout. One solution  I see would be to declare
master globally in tile.h, - but this would make your patch
dependend from tile... hmm. Let me think about this issue
somewhat more.

Regards,
-- 
 Anselm R. Garbe  http://www.suckless.org/  GPG key: 0D73F361



Re: [dwm] Update: bottomstack patch for latest 4.4 tip

2007-08-12 Thread Anselm R. Garbe
On Sat, Aug 11, 2007 at 08:09:54PM -0400, James Turner wrote:
 Well the zoom function seems to work, but increasing the master area  
 does not.  I changed part of the incmaster function within tile.c to  
 if(lt-arrange == floating) return; but I still can't increase the  
 master in the bottom stack layout mode.  Any ideas?


Well I decided against making master global. I pushed a
changeset recently with following decisions:

MASTER is renamed to MWFACT (master width factor) - which is
more precise.

master in tile.c is renamed to mwfact, incmaster is renamed to
addtomwfact - which is also more precise.

So this change also points out, that your bstack patch should
contain something like MHFACT (master height factor) as counter
part. Except of zoom(), which you can re-use from tile, I
propose you clone the addtomwfact() behavior as follows for
bstack:


/* static */

static double mhfact = MHFACT;

/* extern */

void
addtomhfact(const char *arg) {
double delta;

if(lt-arrange != bstack)
return;

/* arg handling, manipulate mhfact */
if(arg  (1 == sscanf(arg, %lf, delta))) {
if(delta + mhfact  0.1  delta + mhfact  0.9)
mhfact += delta;
}
lt-arrange();
}


And in config.h you add something like this (besides cloning
MHFACT similiar to MWFACT):


{ MODKEY,   XK_h, addtomwfact,-0.05 }, \
{ MODKEY,   XK_l, addtomhfact,0.05 } , \
{ MODKEY,   XK_h, addtomwfact,-0.05 }, \
{ MODKEY,   XK_l, addtomhfact,0.05 } , \


This is somewhat cumbersome for bstack, but the only other
option would be to design bstack as patch to tile.c.

Regards,
-- 
 Anselm R. Garbe  http://www.suckless.org/  GPG key: 0D73F361



Re: [dwm] Update: bottomstack patch for latest 4.4 tip

2007-08-12 Thread James Turner
On Sun, Aug 12, 2007 at 12:53:46PM +0200, Anselm R. Garbe wrote:
 On Sat, Aug 11, 2007 at 08:09:54PM -0400, James Turner wrote:
  Well the zoom function seems to work, but increasing the master area  
  does not.  I changed part of the incmaster function within tile.c to  
  if(lt-arrange == floating) return; but I still can't increase the  
  master in the bottom stack layout mode.  Any ideas?
 
 
 Well I decided against making master global. I pushed a
 changeset recently with following decisions:
 
 MASTER is renamed to MWFACT (master width factor) - which is
 more precise.
 
 master in tile.c is renamed to mwfact, incmaster is renamed to
 addtomwfact - which is also more precise.
 
 So this change also points out, that your bstack patch should
 contain something like MHFACT (master height factor) as counter
 part. Except of zoom(), which you can re-use from tile, I
 propose you clone the addtomwfact() behavior as follows for
 bstack:
 
 
 /* static */
 
 static double mhfact = MHFACT;
 
 /* extern */
 
 void
 addtomhfact(const char *arg) {
   double delta;
 
   if(lt-arrange != bstack)
   return;
 
   /* arg handling, manipulate mhfact */
   if(arg  (1 == sscanf(arg, %lf, delta))) {
   if(delta + mhfact  0.1  delta + mhfact  0.9)
   mhfact += delta;
   }
   lt-arrange();
 }
 
 
 And in config.h you add something like this (besides cloning
 MHFACT similiar to MWFACT):
 
 
 { MODKEY,   XK_h, addtomwfact,-0.05 }, \
 { MODKEY,   XK_l, addtomhfact,0.05 } , \
 { MODKEY,   XK_h, addtomwfact,-0.05 }, \
 { MODKEY,   XK_l, addtomhfact,0.05 } , \
 
 
 This is somewhat cumbersome for bstack, but the only other
 option would be to design bstack as patch to tile.c.
 
 Regards,
 -- 
  Anselm R. Garbe  http://www.suckless.org/  GPG key: 0D73F361

Because of the nature of bstack, would it make more sense to just patch
tile.c rather than make it it's own layout and clone the addtowfact
function?  Since changes are still happening I would like to take this
time to make sure the patch is done the so called correct way.
Thanks.

-- 
James Turner
BSD Group Consulting
http://www.bsdgroup.org



Re: [dwm] Update: bottomstack patch for latest 4.4 tip

2007-08-12 Thread Anselm R. Garbe
On Sun, Aug 12, 2007 at 07:57:15PM +0200, Anselm R. Garbe wrote:
 On Sun, Aug 12, 2007 at 10:12:14AM -0400, James Turner wrote:
  I went ahead and created a new patch that patches tile.c rather then
  creating an all new bstack layout.  You can find it here:
  http://calminferno.net/files/dwm-4.4-bstack-tile.diff or attached.
 
 Well I accept you decision, but I think it might be worth to
 consider to design a bigtile layout as a tile.c replacement,
 which contains your bstack feature, the NMASTER revival, and
 maybe other things. I think that should be the direction, it
 would even make maintenance of patches much more simplier.
 
 So consider to design the bstack patch as a tile replacement
 rather than as a tile-addon/extension...

Sorry, my English is a nightmare today ;)

-- 
 Anselm R. Garbe  http://www.suckless.org/  GPG key: 0D73F361



Re: [dwm] Update: bottomstack patch for latest 4.4 tip

2007-08-11 Thread James Turner
Well the zoom function seems to work, but increasing the master area  
does not.  I changed part of the incmaster function within tile.c to  
if(lt-arrange == floating) return; but I still can't increase the  
master in the bottom stack layout mode.  Any ideas?


On Aug 11, 2007, at 6:58 PM, James Turner wrote:

Quick note just in case, use patch -p0  dwm-4.4-bstack.diff within  
the dwm source dir to apply.


On Aug 11, 2007, at 6:53 PM, James Turner wrote:

I've gone ahead and updated the bottom stack patch to work with  
the new

4.4 tip.  I just ported the portrait layout since that's all I use.
Please test this against the latest tip.  One question for you C
hackers, how to I get the incmaster and zoom functions with in the
tile.c to work with my new bstack.c?  Also any suggestions ore always
welcome.

Patch here: http://calminferno.net/files/dwm-4.4-bstack.diff and
attached.

--
James Turner
BSD Group Consulting
http://www.bsdgroup.org
dwm-4.4-bstack.diff


--
James Turner
BSD Group Consulting
http://www.bsdgroup.org





--
James Turner
BSD Group Consulting
http://www.bsdgroup.org