X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1f0c8f31f407ecfce909060464c0ea655221cdab..bb69632a56a827bed4cfae842bfffa88259ac1aa:/src/osx/carbon/combobox.cpp diff --git a/src/osx/carbon/combobox.cpp b/src/osx/carbon/combobox.cpp index 1174358e29..54c70ebca5 100644 --- a/src/osx/carbon/combobox.cpp +++ b/src/osx/carbon/combobox.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: src/mac/carbon/combobox.cpp +// Name: src/osx/carbon/combobox.cpp // Purpose: wxComboBox class // Author: Stefan Csomor, Dan "Bud" Keith (composite combobox) // Modified by: @@ -23,7 +23,7 @@ #include "wx/textctrl.h" #endif -#include "wx/osx/uma.h" +#include "wx/osx/private.h" IMPLEMENT_DYNAMIC_CLASS(wxComboBox, wxControl) @@ -34,17 +34,6 @@ BEGIN_EVENT_TABLE(wxComboBox, wxControl) END_EVENT_TABLE() -static int nextPopUpMenuId = 1000 ; - -MenuHandle NewUniqueMenu() -{ - MenuHandle handle = UMANewMenu(nextPopUpMenuId, wxString(wxT("Menu")), wxFont::GetDefaultEncoding() ); - nextPopUpMenuId++ ; - - return handle ; -} - - // ---------------------------------------------------------------------------- // constants // ---------------------------------------------------------------------------- @@ -148,6 +137,16 @@ protected: event.Skip(); } + void OnFocus( wxFocusEvent& event ) + { + // in case the textcontrol gets the focus we propagate + // it to the parent's handlers. + wxFocusEvent evt2(event.GetEventType(),m_cb->GetId()); + evt2.SetEventObject(m_cb); + m_cb->GetEventHandler()->ProcessEvent(evt2); + + event.Skip(); + } private: wxComboBox *m_cb; @@ -158,6 +157,8 @@ BEGIN_EVENT_TABLE(wxComboBoxText, wxTextCtrl) EVT_KEY_DOWN(wxComboBoxText::OnKeyDown) EVT_CHAR(wxComboBoxText::OnChar) EVT_KEY_UP(wxComboBoxText::OnKeyUp) + EVT_SET_FOCUS(wxComboBoxText::OnFocus) + EVT_KILL_FOCUS(wxComboBoxText::OnFocus) EVT_TEXT(wxID_ANY, wxComboBoxText::OnText) END_EVENT_TABLE() @@ -651,7 +652,7 @@ bool wxComboBox::CanRedo() const return false; } -wxInt32 wxComboBox::MacControlHit( WXEVENTHANDLERREF WXUNUSED(handler) , WXEVENTREF WXUNUSED(event) ) +bool wxComboBox::HandleClicked( double timestampsec ) { /* For consistency with other platforms, clicking in the text area does not constitute a selection @@ -662,7 +663,7 @@ wxInt32 wxComboBox::MacControlHit( WXEVENTHANDLERREF WXUNUSED(handler) , WXEVENT ProcessCommand(event); */ - return noErr ; + return true ; } #endif // wxUSE_COMBOBOX