]> git.decadent.org.uk Git - ion3.git/blobdiff - ioncore/manage.h
[svn-upgrade] Integrating new upstream version, ion3 (20070506)
[ion3.git] / ioncore / manage.h
index 45ddf6a6179ec9b894761fb5c43b44cf59ddf0d6..d0faed21956fbe354597497a1eb14d2efe509ca6 100644 (file)
@@ -3,10 +3,7 @@
  *
  * 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
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
+ * See the included file LICENSE for details.
  */
 
 #ifndef ION_IONCORE_MANAGE_H
@@ -28,12 +25,29 @@ INTRSTRUCT(WManageParams);
   {FALSE, FALSE, FALSE, FALSE, FALSE, ForgetGravity, {0, 0, 0, 0}, NULL}
 
 enum{
-    MANAGE_REDIR_PREFER_YES,
-    MANAGE_REDIR_PREFER_NO,
-    MANAGE_REDIR_STRICT_YES,
-    MANAGE_REDIR_STRICT_NO
+    MANAGE_PRIORITY_NONE,
+    MANAGE_PRIORITY_LOW,
+    MANAGE_PRIORITY_NORMAL,
+    MANAGE_PRIORITY_GROUP,
+    MANAGE_PRIORITY_NO,
+    /* Special */
+    MANAGE_PRIORITY_NOREDIR
 };
 
+#define MANAGE_PRIORITY_OK(PRIORITY, OUR)                        \
+    ((PRIORITY) <= (OUR) || (PRIORITY)==MANAGE_PRIORITY_NOREDIR)
+
+#define MANAGE_PRIORITY_SUB(PRIORITY, OUR)      \
+    ((PRIORITY)==MANAGE_PRIORITY_NOREDIR        \
+     ? MANAGE_PRIORITY_NO                       \
+     : (PRIORITY) < (OUR) ? (OUR) : (PRIORITY))
+
+#define MANAGE_PRIORITY_SUBX(PRIORITY, OUR)                    \
+    ((PRIORITY)==MANAGE_PRIORITY_NOREDIR || (OUR) < (PRIORITY) \
+     ? MANAGE_PRIORITY_NO                                      \
+     : MANAGE_PRIORITY_NONE)
+
+
 DECLSTRUCT(WManageParams){
     bool switchto;
     bool jumpto;