]> git.decadent.org.uk Git - ion3.git/blobdiff - ioncore/activity.c
[svn-upgrade] Integrating new upstream version, ion3 (20070203)
[ion3.git] / ioncore / activity.c
index 0f7b7a6e6e3501d3c262e7d11b79dc0871ba12bf..668d10a95f6bf824a2e579174a5dfbbbbb1435f4 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ion/ioncore/activity.c
  *
- * Copyright (c) Tuomo Valkonen 1999-2006
+ * Copyright (c) Tuomo Valkonen 1999-2007
  *
  * Ion is free software; you can redistribute it and/or modify it under
  * the terms of the GNU Lesser General Public License as published by
@@ -32,7 +32,7 @@ void region_mark_mgd_activity(WRegion *mgr)
     mgr->mgd_activity++;
     
     if(!mgr_marked){
-        region_notify_change(mgr, "sub-activity");
+        region_notify_change(mgr, ioncore_g.notifies.sub_activity);
         region_mark_mgd_activity(REGION_MANAGER(mgr));
     }
 }
@@ -46,7 +46,7 @@ void region_clear_mgd_activity(WRegion *mgr)
     mgr->mgd_activity=maxof(0, mgr->mgd_activity-1);
     
     if(!region_is_activity_r(mgr)){
-        region_notify_change(mgr, "sub-activity");
+        region_notify_change(mgr, ioncore_g.notifies.sub_activity);
         region_clear_mgd_activity(REGION_MANAGER(mgr));
     }
 }
@@ -89,7 +89,7 @@ bool region_set_activity(WRegion *reg, int sp)
             propagate_clear(reg);
     }
     
-    region_notify_change(reg, "activity");
+    region_notify_change(reg, ioncore_g.notifies.activity);
     
     return nset;
 }
@@ -124,22 +124,15 @@ bool region_is_activity_r(WRegion *reg)
 
 
 /*EXTL_DOC
- * Return list of regions with activity/urgency bit set.
+ * Iterate over activity list until \var{iterfn} returns \code{false}.
+ * The function itself returns \code{true} if it reaches the end of list
+ * without this happening.
  */
 EXTL_SAFE
 EXTL_EXPORT
-ExtlTab ioncore_activity_list()
+bool ioncore_activity_i(ExtlFn iterfn)
 {
-    ExtlTab t=extl_create_table();
-    ObjListIterTmp tmp;
-    Obj *obj;
-    int i=1;
-    
-    FOR_ALL_ON_OBJLIST(Obj*, obj, actlist, tmp){
-        extl_table_seti_o(t, i, obj);
-    }
-    
-    return t;
+    return extl_iter_objlist(iterfn, actlist);
 }