4 * Copyright (c) Tuomo Valkonen 1999-2009.
6 * See the included file LICENSE for details.
9 #ifndef ION_IONCORE_WINDOW_H
10 #define ION_IONCORE_WINDOW_H
15 #include "rectangle.h"
27 extern bool window_init(WWindow
*p
, /*@notnull@*/ WWindow
*parent
,
28 const WFitParams
*fp
, const char *name
);
30 * @param parent required when 'win' is 'None'.
31 * @param win the window to initialize. A new window is created when 'win'
33 * @param name the name of the newly created Window
35 extern bool window_do_init(WWindow
*p
, WWindow
*parent
,
36 const WFitParams
*fp
, Window win
, const char *name
);
37 extern void window_deinit(WWindow
*win
);
39 DYNFUN
void window_draw(WWindow
*wwin
, bool complete
);
40 DYNFUN
void window_insstr(WWindow
*wwin
, const char *buf
, size_t n
);
41 DYNFUN
int window_press(WWindow
*wwin
, XButtonEvent
*ev
, WRegion
**reg_ret
);
42 DYNFUN
void window_release(WWindow
*wwin
);
44 /* Only to be used by regions that inherit this */
45 extern void window_map(WWindow
*wwin
);
46 extern void window_unmap(WWindow
*wwin
);
48 extern void window_do_set_focus(WWindow
*wwin
, bool warp
);
50 extern void window_do_fitrep(WWindow
*wwin
, WWindow
*parent
,
51 const WRectangle
*geom
);
52 extern bool window_fitrep(WWindow
*wwin
, WWindow
*parent
,
53 const WFitParams
*fp
);
54 extern void window_notify_subs_move(WWindow
*wwin
);
56 extern void window_restack(WWindow
*wwin
, Window other
, int mode
);
58 extern void window_select_input(WWindow
*wwin
, long event_mask
);
60 #endif /* ION_IONCORE_WINDOW_H */