]> git.decadent.org.uk Git - ion3.git/blob - mod_panews/splitext.h
[svn-inject] Installing original source of ion3
[ion3.git] / mod_panews / splitext.h
1 /*
2  * ion/panews/splitext.h
3  *
4  * Copyright (c) Tuomo Valkonen 1999-2006. 
5  *
6  * Ion is free software; you can redistribute it and/or modify it under
7  * the terms of the GNU Lesser General Public License as published by
8  * the Free Software Foundation; either version 2.1 of the License, or
9  * (at your option) any later version.
10  */
11
12 #ifndef ION_PANEWS_SPLITEXT_H
13 #define ION_PANEWS_SPLITEXT_H
14
15 #include <ioncore/common.h>
16 #include <mod_tiling/split.h>
17
18 INTRCLASS(WSplitUnused);
19 INTRCLASS(WSplitPane);
20
21 #include "panews.h"
22
23 DECLCLASS(WSplitUnused){
24     WSplitRegion regnode;
25 };
26
27 DECLCLASS(WSplitPane){
28     WSplitInner isplit;
29     WSplit *contents;
30     char *marker;
31 };
32
33 extern bool splitunused_init(WSplitUnused *split, const WRectangle *geom,
34                              WPaneWS *ws);
35 extern bool splitpane_init(WSplitPane *split, const WRectangle *geom,
36                            WSplit *cnt);
37
38 extern WSplitUnused *create_splitunused(const WRectangle *geom,
39                                         WPaneWS *ws);
40 extern WSplitPane *create_splitpane(const WRectangle *geom, WSplit *cnt);
41
42 extern void splitunused_deinit(WSplitUnused *split);
43 extern void splitpane_deinit(WSplitPane *split);
44
45 extern const char *splitpane_get_marker(WSplitPane *pane);
46 extern bool splitpane_set_marker(WSplitPane *pane, const char *s);
47
48 extern WRegion *panews_do_get_nextto(WPaneWS *ws, WRegion *reg,
49                                      int dir, int primn, bool any);
50 extern WRegion *panews_do_get_farthest(WPaneWS *ws,
51                                        int dir, int primn, bool any);
52
53 extern WSplitRegion *split_tree_find_region_in_pane_of(WSplit *node);
54
55 #endif /* ION_PANEWS_SPLITEXT_H */