bool Listener::Impl::Listen() const { int key = getch(); switch(key) { case KEY_MOUSE: { MEVENT mouse_event; if(getmouse(&mouse_event) == OK) { //Call the callback if (m_mouse_callback) m_mouse_callback(mouse_event); return true; } break; } default: { if (m_keyboard_callback) { m_keyboard_callback(key); } return true; } } return false; }
void widget3d::mouse_callback(int button, int action) { if (m_mouse_callback != nullptr) { m_mouse_callback(button, action, m_xMousePos, m_yMousePos); } }