simplified wxTextCtrl::Create() to use wxControl::MSWCreateControl() instead of duplicating its code

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2001-10-19 15:34:37 +00:00
parent 0e7bd27a8d
commit 7da982c4ec
2 changed files with 3 additions and 70 deletions

View File

@ -145,7 +145,6 @@ public:
#endif // wxUSE_RICHEDIT
virtual void AdoptAttributesFromHWND();
virtual void SetupColours();
virtual bool AcceptsFocus() const;

View File

@ -185,7 +185,7 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id,
// translate wxWin style flags to MSW ones, checking for consistency while
// doing it
long msStyle = ES_LEFT | WS_VISIBLE | WS_CHILD | WS_TABSTOP;
long msStyle = ES_LEFT | WS_TABSTOP;
if ( m_windowStyle & wxCLIP_SIBLINGS )
msStyle |= WS_CLIPSIBLINGS;
@ -297,36 +297,8 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id,
m_isRich = FALSE;
#endif // wxUSE_RICHEDIT
bool want3D;
WXDWORD exStyle = Determine3DEffects(WS_EX_CLIENTEDGE, &want3D);
// Even with extended styles, need to combine with WS_BORDER for them to
// look right.
if ( want3D || wxStyleHasBorder(m_windowStyle) )
msStyle |= WS_BORDER;
// NB: don't use pos and size as CreateWindowEx arguments because they
// might be -1 in which case we should use the default values (and
// SetSize called below takes care of it)
m_hWnd = (WXHWND)::CreateWindowEx(exStyle,
windowClass.c_str(),
NULL,
msStyle,
0, 0, 0, 0,
GetHwndOf(parent),
(HMENU)m_windowId,
wxGetInstance(),
NULL);
wxCHECK_MSG( m_hWnd, FALSE, wxT("Failed to create text ctrl") );
#if wxUSE_CTL3D
if ( want3D )
{
Ctl3dSubclassCtl(GetHwnd());
m_useCtl3D = TRUE;
}
#endif
if ( !MSWCreateControl(windowClass, msStyle, pos, size, value) )
return FALSE;
#if wxUSE_RICHEDIT
if (m_isRich)
@ -345,32 +317,6 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id,
}
#endif // wxUSE_RICHEDIT
SubclassWin(GetHWND());
// set font, position, size and initial value
wxFont& fontParent = parent->GetFont();
if ( fontParent.Ok() )
{
SetFont(fontParent);
}
else
{
SetFont(wxSystemSettings::GetSystemFont(wxSYS_SYSTEM_FONT));
}
// Causes a crash for Symantec C++ and WIN32 for some reason
#if !(defined(__SC__) && defined(__WIN32__))
if ( !value.IsEmpty() )
{
SetValue(value);
}
#endif
// set colours
SetupColours();
SetSize(pos.x, pos.y, size.x, size.y);
return TRUE;
}
@ -404,18 +350,6 @@ void wxTextCtrl::AdoptAttributesFromHWND()
m_windowStyle |= wxTE_PROCESS_ENTER;
}
void wxTextCtrl::SetupColours()
{
wxColour bkgndColour;
// if (IsEditable() || (m_windowStyle & wxTE_MULTILINE))
bkgndColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOW);
// else
// bkgndColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE);
SetBackgroundColour(bkgndColour);
SetForegroundColour(GetParent()->GetForegroundColour());
}
// ----------------------------------------------------------------------------
// set/get the controls text
// ----------------------------------------------------------------------------