36 #include "../api_gui.h"
37 #include "../gui_window_manager.h"
45 class CL_GUITopLevelWindow;
68 virtual void destroy() = 0;
74 virtual void create_window(
75 CL_GUITopLevelWindow *handle,
76 CL_GUITopLevelWindow *owner,
83 virtual void destroy_window(CL_GUITopLevelWindow *handle) = 0;
89 virtual void enable_window(CL_GUITopLevelWindow *handle,
bool enable) = 0;
96 virtual bool has_focus(CL_GUITopLevelWindow *handle)
const = 0;
103 virtual void set_visible(CL_GUITopLevelWindow *handle,
bool visible,
bool activate_root_win) = 0;
110 virtual void set_geometry(CL_GUITopLevelWindow *handle,
const CL_Rect &geometry,
bool client_area) = 0;
118 virtual CL_Rect get_geometry(CL_GUITopLevelWindow *handle,
bool client_area)
const = 0;
127 virtual CL_Point screen_to_window(CL_GUITopLevelWindow *handle,
const CL_Point &screen_point,
bool client_area)
const = 0;
136 virtual CL_Point window_to_screen(CL_GUITopLevelWindow *handle,
const CL_Point &window_point,
bool client_area)
const = 0;
150 virtual CL_InputContext& get_ic(CL_GUITopLevelWindow *handle)
const = 0;
171 virtual void reset_cliprect(CL_GUITopLevelWindow *handle,
CL_GraphicContext &gc) = 0;
184 virtual void pop_cliprect(CL_GUITopLevelWindow *handle,
CL_GraphicContext &gc) = 0;
190 virtual void end_paint(CL_GUITopLevelWindow *handle,
const CL_Rect &update_region) = 0;
196 virtual void request_repaint(CL_GUITopLevelWindow *handle,
const CL_Rect &update_region) = 0;
201 virtual void bring_to_front(CL_GUITopLevelWindow *handle) = 0;
208 virtual bool is_minimized(CL_GUITopLevelWindow *handle)
const = 0;
215 virtual bool is_maximized(CL_GUITopLevelWindow *handle)
const = 0;
221 virtual void capture_mouse(CL_GUITopLevelWindow *handle,
bool state) = 0;
228 virtual CL_DisplayWindow get_display_window(CL_GUITopLevelWindow *handle)
const = 0;
234 virtual void set_cursor(CL_GUITopLevelWindow *handle,
const CL_Cursor &cursor) = 0;
240 virtual void set_cursor(CL_GUITopLevelWindow *handle,
enum CL_StandardCursor type) = 0;
245 virtual void update() = 0;
248 virtual void setup_painting() = 0;
251 virtual void complete_painting() = 0;