33#include "../../Core/Signals/signal.h"
34#include "../Window/display_window.h"
45 class DisplayWindowDescription;
49 class CursorDescription;
92 std::function<bool(HWND, UINT, WPARAM, LPARAM)> func_window_message;
93 Signal<void(HWND, UINT, WPARAM, LPARAM)> sig_window_message;
198 virtual void set_cursor_handle(HCURSOR cursor) = 0;
202 virtual void set_title(
const std::string &new_title) = 0;
212 virtual void set_size(
int width,
int height,
bool client_area) = 0;
250 virtual void show(
bool activate) = 0;
259 virtual void flip(
int interval) = 0;
This class contains everything to construct a cursor - its data, default settings etc.
Definition cursor_description.h:70
Interface for implementing a Cursor target.
Definition cursor_provider.h:38
Display window description class.
Definition display_window_description.h:50
Interface for implementing a DisplayWindow target.
Definition display_window_provider.h:99
virtual void set_pixel_ratio(float ratio)=0
virtual bool is_visible() const =0
Returns true if the window is visible.
virtual ~DisplayWindowProvider()
Definition display_window_provider.h:101
virtual InputDevice & get_mouse()=0
Returns the mouse input device.
virtual Rect get_geometry() const =0
Returns the position and size of the window frame.
virtual void set_enabled(bool enable)=0
Enables or disables input into this window.
virtual void minimize()=0
Minimizes the window.
virtual bool is_clipboard_text_available() const =0
Returns true if text is available in the clipboard.
virtual void set_large_icon(const PixelBuffer &image)=0
Sets the large icon used for this window.
virtual void hide_system_cursor()=0
Hides the mouse cursor.
virtual void hide()=0
Hides the window.
virtual std::string get_title() const =0
Returns the maximum size of the window.
virtual void create(DisplayWindowSite *site, const DisplayWindowDescription &description)=0
Creates window, assigning site and description to provider.
virtual void show(bool activate)=0
Displays the window in its current size and position.
virtual void bring_to_front()=0
Raise window on top of other windows.
virtual void flip(int interval)=0
Flip the window display buffers.
virtual bool is_maximized() const =0
Returns true if the window is maximized.
virtual float get_pixel_ratio() const =0
virtual void set_clipboard_text(const std::string &text)=0
Stores text in the clipboard.
virtual void toggle_fullscreen()=0
virtual void set_size(int width, int height, bool client_area)=0
virtual void set_title(const std::string &new_title)=0
Change window title.
virtual void set_cursor(CursorProvider *cursor)=0
Sets the current cursor icon.
virtual bool is_clipboard_image_available() const =0
Returns true if an image is available in the clipboard.
virtual bool is_fullscreen() const =0
Returns true if the window is fullscreen.
virtual Size get_minimum_size(bool client_area) const =0
Returns the minimum size of the window.
virtual GraphicContext & get_gc()=0
Returns the graphic context for the window.
virtual CursorProvider * create_cursor(const CursorDescription &cursor_description)=0
Creates a new custom cursor.
virtual void restore()=0
Restores the window.
virtual PixelBuffer get_clipboard_image() const =0
Returns the image stored in the clipboard.
virtual DisplayWindowHandle get_handle() const =0
virtual void set_minimum_size(int width, int height, bool client_area)=0
virtual bool has_focus() const =0
Returns true if window has focus.
virtual void capture_mouse(bool capture)=0
Capture/Release the mouse.
virtual void maximize()=0
Maximizes the window.
virtual std::vector< InputDevice > & get_game_controllers()=0
Returns the game controller input device.
virtual Size get_maximum_size(bool client_area) const =0
Returns the maximum size of the window.
virtual bool is_minimized() const =0
Returns true if the window is minimized.
virtual void show_system_cursor()=0
Shows the mouse cursor.
virtual void set_maximum_size(int width, int height, bool client_area)=0
virtual void set_cursor(StandardCursor type)=0
Sets the current cursor icon.
virtual void set_small_icon(const PixelBuffer &image)=0
Sets the small icon used for this window.
virtual InputDevice & get_keyboard()=0
Returns the keyboard input device.
virtual void extend_frame_into_client_area(int left, int top, int right, int bottom)=0
virtual Point client_to_screen(const Point &client)=0
Convert from window client coordinates to screen coordinates.
virtual void set_clipboard_image(const PixelBuffer &buf)=0
Stores an image in the clipboard.
virtual void set_position(const Rect &pos, bool client_area)=0
Sets the position and size of this window on the screen.
virtual Rect get_viewport() const =0
Returns the drawable area of the window.
virtual void enable_alpha_channel(const Rect &blur_rect)=0
virtual void request_repaint()=0
Invalidates the screen, causing a repaint.
virtual std::string get_clipboard_text() const =0
Returns the text stored in the clipboard.
virtual Point screen_to_client(const Point &screen)=0
Convert from screen coordinates to client coordinates.
Display Window site.
Definition display_window_provider.h:53
Signal< void()> sig_got_focus
Obtained focus signal.
Definition display_window_provider.h:59
Signal< void()> sig_window_close
Window close signal.
Definition display_window_provider.h:68
Signal< void()> sig_window_destroy
Window destroy signal.
Definition display_window_provider.h:71
Signal< void()> sig_window_maximized
Window maximized signal.
Definition display_window_provider.h:77
std::function< bool()> func_minimize_clicked
Minimize button is clicked callback function.
Definition display_window_provider.h:86
Signal< void()> sig_lost_focus
Lost focus signal.
Definition display_window_provider.h:56
Signal< void(float, float)> sig_resize
Resize signal.
Definition display_window_provider.h:62
Signal< void()> sig_window_restored
Window restored signal.
Definition display_window_provider.h:80
Signal< void()> sig_paint
Paint signal.
Definition display_window_provider.h:65
Signal< void()> sig_window_minimized
Window minimized signal.
Definition display_window_provider.h:74
Signal< void()> sig_window_moved
Window moved signal.
Definition display_window_provider.h:89
std::function< void(Rectf &)> func_window_resize
Window resize callback function.
Definition display_window_provider.h:83
Interface to drawing graphics.
Definition graphic_context.h:257
Pixel data container.
Definition pixel_buffer.h:68
2D (x,y) point structure - Integer
Definition point.h:62
2D (left,top,right,bottom) rectangle structure - Integer
Definition rect.h:489
2D (left,top,right,bottom) rectangle structure - Float
Definition rect.h:503
2D (width,height) size structure - Integer
Definition size.h:171
StandardCursor
Standard Cursor.
Definition display_window.h:69
Definition display_window.h:86