]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/srchctrl_osx.cpp
new file added
[wxWidgets.git] / src / osx / srchctrl_osx.cpp
index d264955f0063b75475568fc20542c5c3803bdfc1..9a300ff33e784e10d251ed48851eb6c1758a3932 100644 (file)
@@ -3,9 +3,9 @@
 // Purpose:     implements mac carbon wxSearchCtrl
 // Author:      Vince Harron
 // Created:     2006-02-19
-// RCS-ID:      $Id: srchctrl.cpp 54820 2008-07-29 20:04:11Z SC $
+// RCS-ID:      $Id$
 // Copyright:   Vince Harron
-// License:     wxWindows licence
+// Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
 // For compilers that support precompilation, includes "wx.h".
@@ -68,9 +68,9 @@ void wxSearchCtrl::Init()
 
 wxSearchWidgetImpl* wxSearchCtrl::GetSearchPeer() const
 {
-    return dynamic_cast<wxSearchWidgetImpl*> (m_peer);
+    return dynamic_cast<wxSearchWidgetImpl*> (GetPeer());
 }
+
 wxSearchCtrl::~wxSearchCtrl()
 {
     delete m_menu;
@@ -168,7 +168,7 @@ bool wxSearchCtrl::Create(wxWindow *parent, wxWindowID id,
             const wxValidator& validator,
             const wxString& name)
 {
-    m_macIsUserPane = false ;
+    DontCreatePeer();
     m_editable = true ;
 
     if ( ! (style & wxNO_BORDER) )
@@ -185,7 +185,7 @@ bool wxSearchCtrl::Create(wxWindow *parent, wxWindowID id,
     }
 
 
-    m_peer = wxWidgetImpl::CreateSearchControl( this, GetParent(), GetId(), value, pos, size, style, GetExtraStyle() );
+    SetPeer(wxWidgetImpl::CreateSearchControl( this, GetParent(), GetId(), value, pos, size, style, GetExtraStyle() ));
 
     MacPostControlCreate(pos, size) ;
 
@@ -205,6 +205,11 @@ bool wxSearchCtrl::HandleSearchFieldSearchHit()
 {
     wxCommandEvent event(wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN, m_windowId );
     event.SetEventObject(this);
+
+    // provide the string to search for directly in the event, this is more
+    // convenient than retrieving it from the control in event handler code
+    event.SetString(GetValue());
+
     return ProcessCommand(event);
 }