]> git.decadent.org.uk Git - ion3.git/blob - ioncore/xwindow.h
6379ddf9c07946864c64b05e768bd221b2f4c937
[ion3.git] / ioncore / xwindow.h
1 /*
2  * ion/ioncore/xwindow.h
3  *
4  * Copyright (c) Tuomo Valkonen 1999-2007. 
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_IONCORE_XWINDOW_H
13 #define ION_IONCORE_XWINDOW_H
14
15 #include "common.h"
16 #include "rectangle.h"
17
18 #define XWINDOW_REGION_OF_T(WIN, TYPE) (TYPE*)xwindow_region_of_t(WIN, &CLASSDESCR(TYPE))
19 #define XWINDOW_REGION_OF(WIN) xwindow_region_of(WIN)
20
21 extern Window create_xwindow(WRootWin *rw, Window par,
22                              const WRectangle *geom);
23
24 extern WRegion *xwindow_region_of(Window win);
25 extern WRegion *xwindow_region_of_t(Window win, const ClassDescr *descr);
26
27 extern void xwindow_restack(Window win, Window other, int stack_mode);
28
29 extern void xwindow_do_set_focus(Window win);
30
31 extern void xwindow_set_cursor(Window win, int cursor);
32
33 extern void xwindow_get_sizehints(Window win, XSizeHints *hints);
34
35 extern bool xwindow_pointer_pos(Window rel, int *px, int *py);
36
37 #endif /* ION_IONCORE_XWINDOW_H */