X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7a893a3152a6ac676b0409320daef188a7be1b7b..68f2155bb74506ee9c26afbc762543133e0ad1a9:/src/common/textcmn.cpp diff --git a/src/common/textcmn.cpp b/src/common/textcmn.cpp index 4ff84d8a28..9da659d9fb 100644 --- a/src/common/textcmn.cpp +++ b/src/common/textcmn.cpp @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: common/textcmn.cpp +// Name: src/common/textcmn.cpp // Purpose: implementation of platform-independent functions of wxTextCtrl // Author: Julian Smart // Modified by: @@ -13,10 +13,6 @@ // declarations // ============================================================================ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma implementation "textctrlbase.h" -#endif - // for compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -24,12 +20,17 @@ #pragma hdrstop #endif +#ifndef WX_PRECOMP + #include "wx/event.h" +#endif // WX_PRECOMP + #if wxUSE_TEXTCTRL +#include "wx/textctrl.h" + #ifndef WX_PRECOMP #include "wx/intl.h" #include "wx/log.h" - #include "wx/textctrl.h" #endif // WX_PRECOMP #include "wx/ffile.h" @@ -53,6 +54,8 @@ DEFINE_EVENT_TYPE(wxEVT_COMMAND_TEXT_ENTER) DEFINE_EVENT_TYPE(wxEVT_COMMAND_TEXT_URL) DEFINE_EVENT_TYPE(wxEVT_COMMAND_TEXT_MAXLEN) +IMPLEMENT_ABSTRACT_CLASS(wxTextCtrlBase, wxControl) + // ---------------------------------------------------------------------------- // style functions - not implemented here // ---------------------------------------------------------------------------- @@ -475,9 +478,12 @@ wxString wxTextCtrlBase::GetRange(long from, long to) const // do the window-specific processing after processing the update event void wxTextCtrlBase::DoUpdateWindowUI(wxUpdateUIEvent& event) { - if ( event.GetSetEnabled() ) - Enable(event.GetEnabled()); + // call inherited, but skip the wxControl's version, and call directly the + // wxWindow's one instead, because the only reason why we are overriding this + // function is that we want to use SetValue() instead of wxControl::SetLabel() + wxWindowBase::DoUpdateWindowUI(event); + // update text if ( event.GetSetText() ) { if ( event.GetText() != GetValue() ) @@ -518,7 +524,6 @@ wxTextCtrlBase::HitTest(const wxPoint& WXUNUSED(pt), // define this one even if !wxUSE_TEXTCTRL because it is also used by other // controls (wxComboBox and wxSpinCtrl) -#include "wx/event.h" DEFINE_EVENT_TYPE(wxEVT_COMMAND_TEXT_UPDATED)