/*! \fn wcurses::Application::ProcessMouseEvent( MouseEvent* M ) */ bool Application::ProcessMouseEvent ( MouseEvent* M ) { Debug << M->ToString().std(); _curTarget=QueryTarget ( M ); if(!_curTarget){ Dbg << "error: could not get target widget!!"; DEND; return false; } if ( M->What() == event::MouseButtonClick ) return MouseButtonClick ( M ); if ( M->What() == event::MouseButtonPress ) return MouseButtonPress ( M ); if ( M->What() == event::MouseButtonDblClick ) return MouseButtonDblClick ( M ); if ( M->What() == event::MouseButtonRelease ) return MouseButtonRelease ( M ); //if ( M->What() == event::MouseButtonMove ) return MouseButton( M ); Dbg << "Error: unknow mouse event!!" << M->ToString().std(); DEND; return false; }
void TXT_WindowKeyPress(txt_window_t *window, int c) { int i; // Is this a mouse button ? if (c >= TXT_MOUSE_BASE && c < TXT_MOUSE_BASE + TXT_MAX_MOUSE_BUTTONS) { MouseButtonPress(window, c); return; } // Try the window key spy if (window->key_listener != NULL) { // key listener can eat keys if (window->key_listener(window, c, window->key_listener_data)) { return; } } // Send to the currently selected widget if (TXT_WidgetKeyPress(window, c)) { return; } // Try all of the action buttons for (i=0; i<3; ++i) { if (window->actions[i] != NULL && TXT_WidgetKeyPress(window->actions[i], c)) { return; } } }