X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=ioncore%2Fmanage.h;h=d0faed21956fbe354597497a1eb14d2efe509ca6;hb=ae4260bb64817c11f9a7140324cd3e3ba113e297;hp=45ddf6a6179ec9b894761fb5c43b44cf59ddf0d6;hpb=de22e45179cb3bafa490294d31d47f361047a30a;p=ion3.git diff --git a/ioncore/manage.h b/ioncore/manage.h index 45ddf6a..d0faed2 100644 --- a/ioncore/manage.h +++ b/ioncore/manage.h @@ -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;