X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/854e189f90dac9ba5e0239bca79aed64e8d6f46c..b666ade78496cd91d648fcfe2fd6b79ce2b15e33:/src/xrc/xh_text.cpp?ds=sidebyside diff --git a/src/xrc/xh_text.cpp b/src/xrc/xh_text.cpp index 4d4e88413a..c9ffadfcc9 100644 --- a/src/xrc/xh_text.cpp +++ b/src/xrc/xh_text.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: xh_text.cpp +// Name: src/xrc/xh_text.cpp // Purpose: XRC resource for wxTextCtrl // Author: Aleksandras Gluchovas // Created: 2000/03/21 @@ -7,10 +7,6 @@ // Copyright: (c) 2000 Aleksandras Gluchovas // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - -#ifdef __GNUG__ -#pragma implementation "xh_text.h" -#endif // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -19,13 +15,19 @@ #pragma hdrstop #endif +#if wxUSE_XRC && wxUSE_TEXTCTRL + #include "wx/xrc/xh_text.h" -#include "wx/textctrl.h" + +#ifndef WX_PRECOMP + #include "wx/textctrl.h" +#endif IMPLEMENT_DYNAMIC_CLASS(wxTextCtrlXmlHandler, wxXmlResourceHandler) -wxTextCtrlXmlHandler::wxTextCtrlXmlHandler() : wxXmlResourceHandler() +wxTextCtrlXmlHandler::wxTextCtrlXmlHandler() : wxXmlResourceHandler() { + XRC_ADD_STYLE(wxTE_NO_VSCROLL); XRC_ADD_STYLE(wxTE_PROCESS_ENTER); XRC_ADD_STYLE(wxTE_PROCESS_TAB); XRC_ADD_STYLE(wxTE_MULTILINE); @@ -40,13 +42,22 @@ wxTextCtrlXmlHandler::wxTextCtrlXmlHandler() : wxXmlResourceHandler() XRC_ADD_STYLE(wxTE_CENTRE); XRC_ADD_STYLE(wxTE_RIGHT); XRC_ADD_STYLE(wxTE_DONTWRAP); +#if WXWIN_COMPATIBILITY_2_6 XRC_ADD_STYLE(wxTE_LINEWRAP); +#endif // WXWIN_COMPATIBILITY_2_6 + XRC_ADD_STYLE(wxTE_CHARWRAP); XRC_ADD_STYLE(wxTE_WORDWRAP); + + // this style doesn't exist since wx 2.9.0 but we still support it (by + // ignoring it silently) in XRC files to avoid unimportant warnings when + // using XRC produced by old tools + AddStyle(_T("wxTE_AUTO_SCROLL"), 0); + AddWindowStyles(); } wxObject *wxTextCtrlXmlHandler::DoCreateResource() -{ +{ XRC_MAKE_INSTANCE(text, wxTextCtrl) text->Create(m_parentAsWindow, @@ -58,7 +69,10 @@ wxObject *wxTextCtrlXmlHandler::DoCreateResource() GetName()); SetupWindow(text); - + + if (HasParam(wxT("maxlength"))) + text->SetMaxLength(GetLong(wxT("maxlength"))); + return text; } @@ -66,3 +80,5 @@ bool wxTextCtrlXmlHandler::CanHandle(wxXmlNode *node) { return IsOfClass(node, wxT("wxTextCtrl")); } + +#endif // wxUSE_XRC && wxUSE_TEXTCTRL