summaryrefslogtreecommitdiff
path: root/src/group.c
diff options
context:
space:
mode:
authorcos <cos>2013-05-15 23:26:11 +0200
committercos <cos>2013-05-26 19:37:40 +0200
commit14cce1cb74c2924e76fdee467ef06b5775c76421 (patch)
treec0527187fa70c854ac96593e188573fd1f1615d1 /src/group.c
parent74e7f50fedca5052bebbaffd4ef2e9483686c62a (diff)
downloadratpoison-14cce1cb74c2924e76fdee467ef06b5775c76421.zip
Add initial cmd_gnumber implementation.
Diffstat (limited to 'src/group.c')
-rw-r--r--src/group.c27
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)