X-Git-Url: https://eleni.mutantstargoat.com/git/?p=winnie;a=blobdiff_plain;f=src%2Fwindow.cc;h=84d1004c34a726659911dd46d5034d648aa79301;hp=af30e3c5c865cce46f487358a9c4510527066d0a;hb=5deac1a20d178aa7d2e8bb5cbc79b6584c6287f5;hpb=f71618aebfa6b8754dd056689a6c5821b755972c diff --git a/src/window.cc b/src/window.cc index af30e3c..84d1004 100644 --- a/src/window.cc +++ b/src/window.cc @@ -22,6 +22,17 @@ const Rect &Window::get_rect() const return rect; } +bool Window::contains_point(int ptr_x, int ptr_y) +{ + if((rect.x <= ptr_x) && ((rect.x + rect.width) >= ptr_x)) { + if((rect.y <= ptr_y) && (ptr_y <= (rect.y + rect.height))) { + return true; + } + } + + return false; +} + void Window::move(int x, int y) { invalidate(); // moved, should redraw, MUST BE CALLED FIRST @@ -93,3 +104,23 @@ void Window::set_mouse_motion_callback(MouseMotionFuncType func) { callbacks.motion = func; } + +const DisplayFuncType Window::get_display_callback() const +{ + return callbacks.display; +} + +const KeyboardFuncType Window::get_keyboard_callback() const +{ + return callbacks.keyboard; +} + +const MouseButtonFuncType Window::get_mouse_button_callback() const +{ + return callbacks.button; +} + +const MouseMotionFuncType Window::get_mouse_motion_callback() const +{ + return callbacks.motion; +}