9#ifndef MaxOS_GUI_WIDGET_H
10#define MaxOS_GUI_WIDGET_H
53 Widget(int32_t left, int32_t top, uint32_t width, uint32_t height);
66 void move(int32_t left, int32_t top);
67 void resize(int32_t width, int32_t height);
78 virtual void on_mouse_move_widget(uint32_t from_x, uint32_t from_y, uint32_t to_x, uint32_t to_y);
101 CompositeWidget(int32_t left, int32_t top, uint32_t width, uint32_t height);
111 void on_mouse_move_widget(uint32_t from_x, uint32_t from_y, uint32_t to_x, uint32_t to_y)
override;
162 : drivers::peripherals::MouseEventHandler() {
163 this->targeted_widget = target;
176 Widget* targ = this->targeted_widget;
179 if(Left != 0 || Top != 0)
184 if(Width != 0 || Height != 0)
Draws pixels to the screen, and handles drawing lines, rectangles and circles.
Stores the left, top, width and height of a rectangle.
Type height
The height of the rectangle.
Type top
The top coordinate of the rectangle.
Type left
The left coordinate of the rectangle.
Type width
The width of the rectangle.
Handles the events that are triggered by the Keyboard Driver.
Handles events that are triggered by the mouse driver.
Defines a simple Coordinates type as a pair of int32_t values.
Defines a GraphicsContext class for drawing pixels, lines, rectangles and circles to the screen.
Defines a Keyboard and related classes for handling keyboard input.
Defines a MouseDriver for handling PS/2 mouse input and generating mouse events.
Defines a Rectangle class for storing rectangle dimensions and performing rectangle operations.
Defines a Vector class for dynamically storing an array of elements.