1///////////////////////////////////////////////////////////////////////////// 2// Name: src/xrc/xh_text.cpp 3// Purpose: XRC resource for wxTextCtrl 4// Author: Aleksandras Gluchovas 5// Created: 2000/03/21 6// RCS-ID: $Id: xh_text.cpp 40443 2006-08-04 11:10:53Z VZ $ 7// Copyright: (c) 2000 Aleksandras Gluchovas 8// Licence: wxWindows licence 9///////////////////////////////////////////////////////////////////////////// 10 11// For compilers that support precompilation, includes "wx.h". 12#include "wx/wxprec.h" 13 14#ifdef __BORLANDC__ 15 #pragma hdrstop 16#endif 17 18#if wxUSE_XRC && wxUSE_TEXTCTRL 19 20#include "wx/xrc/xh_text.h" 21 22#ifndef WX_PRECOMP 23 #include "wx/textctrl.h" 24#endif 25 26IMPLEMENT_DYNAMIC_CLASS(wxTextCtrlXmlHandler, wxXmlResourceHandler) 27 28wxTextCtrlXmlHandler::wxTextCtrlXmlHandler() : wxXmlResourceHandler() 29{ 30 XRC_ADD_STYLE(wxTE_NO_VSCROLL); 31 XRC_ADD_STYLE(wxTE_AUTO_SCROLL); 32 XRC_ADD_STYLE(wxTE_PROCESS_ENTER); 33 XRC_ADD_STYLE(wxTE_PROCESS_TAB); 34 XRC_ADD_STYLE(wxTE_MULTILINE); 35 XRC_ADD_STYLE(wxTE_PASSWORD); 36 XRC_ADD_STYLE(wxTE_READONLY); 37 XRC_ADD_STYLE(wxHSCROLL); 38 XRC_ADD_STYLE(wxTE_RICH); 39 XRC_ADD_STYLE(wxTE_RICH2); 40 XRC_ADD_STYLE(wxTE_AUTO_URL); 41 XRC_ADD_STYLE(wxTE_NOHIDESEL); 42 XRC_ADD_STYLE(wxTE_LEFT); 43 XRC_ADD_STYLE(wxTE_CENTRE); 44 XRC_ADD_STYLE(wxTE_RIGHT); 45 XRC_ADD_STYLE(wxTE_DONTWRAP); 46#if WXWIN_COMPATIBILITY_2_6 47 XRC_ADD_STYLE(wxTE_LINEWRAP); 48#endif // WXWIN_COMPATIBILITY_2_6 49 XRC_ADD_STYLE(wxTE_CHARWRAP); 50 XRC_ADD_STYLE(wxTE_WORDWRAP); 51 AddWindowStyles(); 52} 53 54wxObject *wxTextCtrlXmlHandler::DoCreateResource() 55{ 56 XRC_MAKE_INSTANCE(text, wxTextCtrl) 57 58 text->Create(m_parentAsWindow, 59 GetID(), 60 GetText(wxT("value")), 61 GetPosition(), GetSize(), 62 GetStyle(), 63 wxDefaultValidator, 64 GetName()); 65 66 SetupWindow(text); 67 68 if (HasParam(wxT("maxlength"))) 69 text->SetMaxLength(GetLong(wxT("maxlength"))); 70 71 return text; 72} 73 74bool wxTextCtrlXmlHandler::CanHandle(wxXmlNode *node) 75{ 76 return IsOfClass(node, wxT("wxTextCtrl")); 77} 78 79#endif // wxUSE_XRC && wxUSE_TEXTCTRL 80