diff options
author | cos <cos> | 2013-05-15 23:26:11 +0200 |
---|---|---|
committer | cos <cos> | 2013-05-26 19:37:40 +0200 |
commit | 14cce1cb74c2924e76fdee467ef06b5775c76421 (patch) | |
tree | c0527187fa70c854ac96593e188573fd1f1615d1 /src/group.c | |
parent | 74e7f50fedca5052bebbaffd4ef2e9483686c62a (diff) | |
download | ratpoison-14cce1cb74c2924e76fdee467ef06b5775c76421.zip |
Add initial cmd_gnumber implementation.
Diffstat (limited to 'src/group.c')
-rw-r--r-- | src/group.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/group.c b/src/group.c index 872746c..e882e8d 100644 --- a/src/group.c +++ b/src/group.c @@ -60,6 +60,12 @@ free_groups(void) } } +struct numset * +group_get_numset(void) +{ + return group_numset; +} + rp_group * group_new (int number, char *name) { @@ -100,7 +106,7 @@ group_add_new_group (char *name) list_for_each_entry (cur, &rp_groups, node) { - if(cur->number > g->number) + if (cur->number > g->number) { list_add_tail (&g->node, &cur->node); return g; @@ -113,6 +119,25 @@ group_add_new_group (char *name) } void +group_resort_group (rp_group *g) +{ + rp_group *cur; + struct list_head *last = &rp_groups; + + list_del (&g->node); + list_for_each_entry (cur, &rp_groups, node) + { + if (cur->number > g->number) + { + list_add (&g->node, last); + return; + } + last = &cur->node; + } + list_add (&g->node, last); +} + +void group_rename (rp_group *g, char *name) { if (g->name) |