fix range of x,y in windowsWidth and windowsHeight

This commit is contained in:
Shaohua Tong 2019-12-05 14:11:29 +01:00
parent 9d8b954f71
commit 7e2166808c

View File

@ -11,10 +11,10 @@ auto GUI_Window::handle(int e) -> int {
case FL_PUSH:
x = Fl::event_x();
y = Fl::event_y();
x < 0 ? x = 0: x = x;
y < 0 ? y = 0: y = y;
x > windowsWidth ? x = windowsWidth : x = x;
y > windowsHeight ? y = windowsHeight : y = y;
x = x < 0 ? 0: x;
y = y < 30 ? 30 : y;
x = x > windowsWidth ? windowsWidth : x;
y = y > windowsHeight ? windowsHeight : y;
vkvm::setMousePosition(x,y);
if (Fl::event_button() == FL_LEFT_MOUSE) {
this->child(2)->label("Event:Mouse Left Down");
@ -31,10 +31,10 @@ auto GUI_Window::handle(int e) -> int {
case FL_RELEASE:
x = Fl::event_x();
y = Fl::event_y();
x < 0 ? x = 0: x = x;
y < 0 ? y = 0: y = y;
x > windowsWidth ? x = windowsWidth : x = x;
y > windowsHeight ? y = windowsHeight : y = y;
x = x < 0 ? 0: x;
y = y < 30 ? 30 : y;
x = x > windowsWidth ? windowsWidth : x;
y = y > windowsHeight ? windowsHeight : y;
vkvm::setMousePosition(x,y);
if (Fl::event_button() == FL_LEFT_MOUSE) {
this->child(2)->label("Event:Mouse Left Up");
@ -50,10 +50,10 @@ auto GUI_Window::handle(int e) -> int {
case FL_DRAG:
x = Fl::event_x();
y = Fl::event_y();
x < 0 ? x = 0: x = x;
y < 0 ? y = 0: y = y;
x > windowsWidth ? x = windowsWidth : x = x;
y > windowsHeight ? y = windowsHeight : y = y;
x = x < 0 ? 0: x;
y = y < 30 ? 30 : y;
x = x > windowsWidth ? windowsWidth : x;
y = y > windowsHeight ? windowsHeight : y;
vkvm::setMousePosition(x,y);
this->child(3)->label(position_to_string(x,y));
if (Fl::event_button() == FL_LEFT_MOUSE) {
@ -72,10 +72,10 @@ auto GUI_Window::handle(int e) -> int {
case FL_MOVE:
x = Fl::event_x();
y = Fl::event_y();
x < 0 ? x = 0: x = x;
y < 0 ? y = 0: y = y;
x > windowsWidth ? x = windowsWidth : x = x;
y > windowsHeight ? y = windowsHeight : y = y;
x = x < 0 ? 0: x;
y = y < 30 ? 30 : y;
x = x > windowsWidth ? windowsWidth : x;
y = y > windowsHeight ? windowsHeight : y;
vkvm::setMousePosition(x,y);
vkvm::callEvent(vkvm::EventType::MouseMove);
this->child(2)->label("Event:Mouse Move");