From 3aaffcf0fcb005ef7a49f3c522c643f4469be200 Mon Sep 17 00:00:00 2001 From: Rodrigo Braz Monteiro Date: Sun, 13 Jan 2008 23:47:58 +0000 Subject: [PATCH] Fixed the enter key on the goto dialog and MAYBE glitch #569 Originally committed to SVN as r1708. --- aegisub/dialog_jumpto.cpp | 22 +++++++++------------- aegisub/dialog_jumpto.h | 2 +- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/aegisub/dialog_jumpto.cpp b/aegisub/dialog_jumpto.cpp index d64ba49a1..cba87e427 100644 --- a/aegisub/dialog_jumpto.cpp +++ b/aegisub/dialog_jumpto.cpp @@ -58,7 +58,7 @@ enum { /////////////// // Constructor DialogJumpTo::DialogJumpTo (wxWindow *parent) -: wxDialog(parent, -1, _("Jump to"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE, _T("JumpTo")) +: wxDialog(parent, -1, _("Jump to"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxWANTS_CHARS , _T("JumpTo")) { // Set icon SetIcon(BitmapToIcon(wxBITMAP(jumpto_button))); @@ -71,8 +71,8 @@ DialogJumpTo::DialogJumpTo (wxWindow *parent) // Times wxStaticText *LabelFrame = new wxStaticText(this,-1,_("Frame: "),wxDefaultPosition,wxSize(60,20)); wxStaticText *LabelTime = new wxStaticText(this,-1,_("Time: "),wxDefaultPosition,wxSize(60,20)); - JumpFrame = new wxTextCtrl(this,TEXT_JUMP_FRAME,wxString::Format(_T("%i"),jumpframe),wxDefaultPosition,wxSize(60,20)); - JumpTime = new TimeEdit(this,TEXT_JUMP_TIME,jumptime.GetASSFormated(),wxDefaultPosition,wxSize(60,20)); + JumpFrame = new wxTextCtrl(this,TEXT_JUMP_FRAME,wxString::Format(_T("%i"),jumpframe),wxDefaultPosition,wxSize(60,20),wxTE_PROCESS_ENTER); + JumpTime = new TimeEdit(this,TEXT_JUMP_TIME,jumptime.GetASSFormated(),wxDefaultPosition,wxSize(60,20),wxTE_PROCESS_ENTER); wxSizer *FrameSizer = new wxBoxSizer(wxHORIZONTAL); wxSizer *TimeSizer = new wxBoxSizer(wxHORIZONTAL); FrameSizer->Add(LabelFrame,0,wxALIGN_CENTER_VERTICAL,0); @@ -106,7 +106,8 @@ DialogJumpTo::DialogJumpTo (wxWindow *parent) /////////////// // Event table BEGIN_EVENT_TABLE(DialogJumpTo, wxDialog) - EVT_KEY_DOWN(DialogJumpTo::OnKey) + EVT_TEXT_ENTER(TEXT_JUMP_FRAME,DialogJumpTo::OnKey) + EVT_TEXT_ENTER(TEXT_JUMP_TIME,DialogJumpTo::OnKey) EVT_BUTTON(wxID_CANCEL,DialogJumpTo::OnCloseButton) EVT_BUTTON(wxID_OK,DialogJumpTo::OnOK) EVT_TEXT(TEXT_JUMP_TIME, DialogJumpTo::OnEditTime) @@ -122,22 +123,17 @@ void DialogJumpTo::OnOK (wxCommandEvent &event) { OnClose(true); } ////////////////// // On Key pressed -void DialogJumpTo::OnKey(wxKeyEvent &event) { - int key = event.GetKeyCode(); - if (key == WXK_RETURN) { - VideoContext::Get()->JumpToFrame(jumpframe); - EndModal(0); - return; - } - event.Skip(); +void DialogJumpTo::OnKey(wxCommandEvent &event) { + EndModal(0); + VideoContext::Get()->JumpToFrame(jumpframe); } //////////////////////// // On OK button pressed void DialogJumpTo::OnClose(bool ok) { - if (ok) VideoContext::Get()->JumpToFrame(jumpframe); EndModal(0); + if (ok) VideoContext::Get()->JumpToFrame(jumpframe); } diff --git a/aegisub/dialog_jumpto.h b/aegisub/dialog_jumpto.h index 3cd637503..39f40e2b5 100644 --- a/aegisub/dialog_jumpto.h +++ b/aegisub/dialog_jumpto.h @@ -56,7 +56,7 @@ private: TimeEdit *JumpTime; wxTextCtrl *JumpFrame; - void OnKey(wxKeyEvent &event); + void OnKey(wxCommandEvent &event); void OnCloseButton(wxCommandEvent &event); void OnOK(wxCommandEvent &event); void OnEditTime(wxCommandEvent &event);