]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/textentry_osx.cpp
Fixed VC6 compilation - wxAny(const wxVariant&) ctor required a specific 'template<>')
[wxWidgets.git] / src / osx / textentry_osx.cpp
index 680a4fdcfbcb9afa0af3749a6b2743d6e12ab09c..2d9d79a0e2ef26743eba77ca76496f897e78eece 100644 (file)
@@ -148,6 +148,8 @@ wxTextPos wxTextEntry::GetLastPosition() const
 void wxTextEntry::Remove(long from, long to)
 {
     GetTextPeer()->Remove( from , to ) ;
+
+    SendTextUpdatedEventIfAllowed();
 }
 
 void wxTextEntry::SetSelection(long from, long to)
@@ -158,11 +160,15 @@ void wxTextEntry::SetSelection(long from, long to)
 void wxTextEntry::WriteText(const wxString& str)
 {
     GetTextPeer()->WriteText( str ) ;
+
+    SendTextUpdatedEventIfAllowed();
 }
 
 void wxTextEntry::Clear()
 {
     GetTextPeer()->Clear() ;
+
+    SendTextUpdatedEventIfAllowed();
 }
 
 bool wxTextEntry::IsEditable() const
@@ -204,7 +210,9 @@ bool wxTextEntry::CanRedo() const
 
 wxTextWidgetImpl * wxTextEntry::GetTextPeer() const
 {
-    wxFAIL_MSG("You need to implement wxTextWidgetImpl* GetTextPeer() in your wxTextEntry subclass if you want to use the native impls of its methods.");
-    return NULL;
+    wxWindow * const win = const_cast<wxTextEntry *>(this)->GetEditableWindow();
+
+    return win ? dynamic_cast<wxTextWidgetImpl *>(win->GetPeer()) : NULL;
 }
+
 #endif // wxUSE_TEXTCTRL