viriketo@4: #include viriketo@4: #include "TextBox.hpp" viriketo@5: #include "MainWindow.hpp" viriketo@4: viriketo@4: BEGIN_EVENT_TABLE (wxTextBox, wxTextCtrl) viriketo@4: EVT_CHAR (wxTextBox::OnKeyEvent) viriketo@4: END_EVENT_TABLE () viriketo@4: viriketo@4: wxTextBox::wxTextBox(wxWindow *parent, int id, wxString text) viriketo@4: :wxTextCtrl(parent, id, text, wxDefaultPosition, wxDefaultSize, viriketo@4: wxTE_PROCESS_ENTER | wxTE_PROCESS_TAB) viriketo@4: { viriketo@4: } viriketo@4: viriketo@4: void wxTextBox::OnKeyEvent(wxKeyEvent &e) viriketo@4: { viriketo@4: if (e.GetKeyCode() == WXK_TAB) viriketo@4: { viriketo@4: std::cerr << "TAB pressed" << std::endl; viriketo@6: wxCommandEvent ce(EV_SKIP_QUESTION); viriketo@5: AddPendingEvent(ce); viriketo@4: } viriketo@4: else if (e.GetKeyCode() == WXK_RETURN) viriketo@4: { viriketo@4: std::cerr << "ENTER pressed" << std::endl; viriketo@6: wxCommandEvent ce(EV_SAVE_SENTENCE); viriketo@5: AddPendingEvent(ce); viriketo@4: } viriketo@4: else viriketo@4: e.Skip(); viriketo@4: }