/*
* ion/ioncore/navi.c
*
- * Copyright (c) Tuomo Valkonen 2006-2007.
+ * Copyright (c) Tuomo Valkonen 2006-2008.
*
- * 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.
*/
#include <string.h>
/*EXTL_DOC
* Find region next from \var{reg} in direction \var{dirstr}
- * (up/down/left/right/next/prev/any). The table param may
- * contain the boolean field \var{nowrap}, instructing not to wrap
+ * (\codestr{up}, \codestr{down}, \codestr{left}, \codestr{right},
+ * \codestr{next}, \codestr{prev}, or \codestr{any}). The table \var{param}
+ * may contain the boolean field \var{nowrap}, instructing not to wrap
* around, and the \type{WRegion}s \var{no_ascend} and \var{no_descend},
- * and functions \var{ascend_filter} and \var{descend_filter} from
- * \var{WRegion}s (\var{to}, \var{from}), used to decide when to descend
- * or ascend into another region. (TODO: more detailed explanation.)
+ * and boolean functions \var{ascend_filter} and \var{descend_filter}
+ * on \var{WRegion} pairs (\var{to}, \var{from}), are used to decide when
+ * to descend or ascend into another region.
*/
EXTL_EXPORT
WRegion *ioncore_navi_next(WRegion *reg, const char *dirstr, ExtlTab param)
/*EXTL_DOC
- * Find first region within \var{reg} in direction \var{dirstr}
- * (up/down/left/right/beg/end/any). For information on \var{param},
- * see \fnref{ioncore.navi_next}.
+ * Find first region within \var{reg} in direction \var{dirstr}.
+ * For information on \var{param}, see \fnref{ioncore.navi_next}.
*/
EXTL_EXPORT
WRegion *ioncore_navi_first(WRegion *reg, const char *dirstr, ExtlTab param)
{
WRegionNaviData data;
- if(reg==NULL){
- /* ??? */
+ if(reg==NULL)
return NULL;
- }
if(!get_param(&data, dirstr, param))
return NULL;
static WRegion *do_goto(WRegion *res)
{
- if(res!=NULL){
- /* TODO: deep rqorder? */
- region_rqorder(res, REGION_ORDER_FRONT);
+ if(res!=NULL)
region_goto(res);
- }
+
return res;
}
/*EXTL_DOC
- * Go to region next from \var{reg} in direction \var{dirstr}
- * (up/down/left/right/next/prev/any). For information on \var{param},
- * see \fnref{ioncore.navi_next}. Additionally this function supports
- * the boolean \var{nofront} field, for not bringing the object to
- * front.
+ * Go to region next from \var{reg} in direction \var{dirstr}.
+ * For information on \var{param}, see \fnref{ioncore.navi_next}.
+ * Additionally this function supports the boolean \var{nofront}
+ * field, for not bringing the object to front.
*/
EXTL_EXPORT
WRegion *ioncore_goto_next(WRegion *reg, const char *dirstr, ExtlTab param)
/*EXTL_DOC
- * Go to first region within \var{reg} in direction \var{dirstr}
- * (up/down/left/right/beg/end/any). For information on \var{param},
- * see \fnref{ioncore.navi_next}. Additionally this function supports
- * the boolean \var{nofront} field, for not bringing the object to
- * front.
+ * Go to first region within \var{reg} in direction \var{dirstr}.
+ * For information on \var{param}, see \fnref{ioncore.navi_next}.
+ * Additionally this function supports the boolean \var{nofront} field,
+ * for not bringing the object to front.
*/
EXTL_EXPORT
WRegion *ioncore_goto_first(WRegion *reg, const char *dirstr, ExtlTab param)