1 #ifndef MSP_GRAPHICS_WINDOW_H_
2 #define MSP_GRAPHICS_WINDOW_H_
5 #include <sigc++/signal.h>
28 /** Provides input events. The event structure contents are platform-
29 specific. Applications will want to use the enclosed Keyboard and Mouse
31 sigc::signal<void, const Event &> signal_input_event;
33 sigc::signal<void, unsigned, unsigned> signal_resize;
34 sigc::signal<void> signal_close;
38 WindowOptions options;
46 Window(Display &, unsigned w, unsigned h, bool fs = false);
47 Window(Display &, const WindowOptions &);
51 void platform_cleanup();
55 void set_title(const std::string &);
56 void reconfigure(const WindowOptions &);
58 void platform_reconfigure(bool);
60 void set_keyboard_autorepeat(bool);
61 bool get_keyboard_autorepeat() const { return kbd_autorepeat; }
62 void show_cursor(bool);
63 void warp_pointer(int, int);
64 void set_touch_input(bool);
66 void platform_set_touch_input();
68 bool get_touch_input() const { return touch_input; }
70 Display &get_display() const { return display; }
71 const WindowOptions &get_options() const { return options; }
72 virtual unsigned get_width() const { return options.width; }
73 virtual unsigned get_height() const { return options.height; }
74 const Private &get_private() const { return *priv; }
83 bool event(const Event &evnt);
86 } // namespace Graphics