-// In WIN16, need to override normal erasing because
-// Ctl3D doesn't use the wxWindows background colour.
-#ifdef __WIN16__
-void wxTextCtrl::OnEraseBackground(wxEraseEvent& event)
-{
- wxColour col(m_backgroundColour);
-
-#if wxUSE_CTL3D
- if (m_useCtl3D)
- col = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW);
-#endif
-
- RECT rect;
- ::GetClientRect(GetHwnd(), &rect);
-
- COLORREF ref = wxColourToRGB(col);
- HBRUSH hBrush = ::CreateSolidBrush(ref);
- if ( !hBrush )
- wxLogLastError(wxT("CreateSolidBrush"));
-
- HDC hdc = (HDC)event.GetDC()->GetHDC();
-
- int mode = ::SetMapMode(hdc, MM_TEXT);
-
- ::FillRect(hdc, &rect, hBrush);
- ::DeleteObject(hBrush);
- ::SetMapMode(hdc, mode);
-
-}
-#endif // Win16
-