changed replacetag into toggletag

This commit is contained in:
Anselm R.Garbe 2006-08-14 16:59:18 +02:00
parent 666fae97e6
commit 19da197f58
4 changed files with 61 additions and 54 deletions

77
tag.c
View file

@ -34,16 +34,6 @@ void (*arrange)(Arg *) = DEFMODE;
/* extern */
void
appendtag(Arg *arg)
{
if(!sel)
return;
sel->tags[arg->i] = True;
settitle(sel);
}
void
dofloat(Arg *arg)
{
@ -182,19 +172,6 @@ isvisible(Client *c)
return False;
}
void
replacetag(Arg *arg)
{
int i;
if(!sel)
return;
for(i = 0; i < ntags; i++)
sel->tags[i] = False;
appendtag(arg);
}
void
restack()
{
@ -280,6 +257,20 @@ settags(Client *c)
c->tags[i] = seltag[i];
}
void
tag(Arg *arg)
{
unsigned int i;
if(!sel)
return;
for(i = 0; i < ntags; i++)
sel->tags[i] = False;
sel->tags[arg->i] = True;
settitle(sel);
}
void
togglemode(Arg *arg)
{
@ -287,6 +278,34 @@ togglemode(Arg *arg)
arrange(NULL);
}
void
toggletag(Arg *arg)
{
unsigned int i;
if(!sel)
return;
sel->tags[arg->i] = !sel->tags[arg->i];
for(i = 0; i < ntags && !sel->tags[i]; i++);
if(i == ntags)
sel->tags[arg->i] = True;
settitle(sel);
}
void
toggleview(Arg *arg)
{
unsigned int i;
seltag[arg->i] = !seltag[arg->i];
for(i = 0; i < ntags && !seltag[i]; i++);
if(i == ntags)
seltag[arg->i] = True; /* cannot toggle last view */
arrange(NULL);
}
void
view(Arg *arg)
{
@ -297,15 +316,3 @@ view(Arg *arg)
seltag[arg->i] = True;
arrange(NULL);
}
void
toggleview(Arg *arg)
{
unsigned int i;
seltag[arg->i] = !seltag[arg->i];
for(i = 0; !seltag[i] && i < ntags; i++);
if(i == ntags)
seltag[arg->i] = True; /* cannot toggle last view */
arrange(NULL);
}