X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b2d5a7ee008faae08694abd039f7da235da8bce5..8f25531f6f1ec5cc29f7ea8d09143133e1b8edbb:/src/msw/textctrl.cpp?ds=sidebyside

diff --git a/src/msw/textctrl.cpp b/src/msw/textctrl.cpp
index 3b742402c4..e9bbcc1ad5 100644
--- a/src/msw/textctrl.cpp
+++ b/src/msw/textctrl.cpp
@@ -357,10 +357,16 @@ void wxTextCtrl::AdoptAttributesFromHWND()
 
 WXDWORD wxTextCtrl::MSWGetStyle(long style, WXDWORD *exstyle) const
 {
+    // default border for the text controls is the sunken one
+    if ( (style & wxBORDER_MASK) == wxBORDER_DEFAULT )
+    {
+        style |= wxBORDER_SUNKEN;
+    }
+
     long msStyle = wxControl::MSWGetStyle(style, exstyle);
 
     // default styles
-    msStyle |= ES_LEFT | WS_TABSTOP;
+    msStyle |= ES_LEFT;
 
     if ( style & wxTE_MULTILINE )
     {
@@ -633,7 +639,7 @@ void wxTextCtrl::DoWriteText(const wxString& value, bool selectionOnly)
 #if wxUSE_UNICODE_MSLU
         // RichEdit doesn't have Unicode version of EM_REPLACESEL on Win9x,
         // but EM_STREAMIN works
-        if ( wxGetOsVersion() == wxWIN95 && GetRichVersion() > 1 )
+        if ( wxUsingUnicowsDll() && GetRichVersion() > 1 )
         {
            done = StreamIn(valueDos, wxFONTENCODING_SYSTEM, selectionOnly);
         }
@@ -838,6 +844,12 @@ void wxTextCtrl::GetSelection(long* from, long* to) const
 
 bool wxTextCtrl::IsEditable() const
 {
+    // strangely enough, we may be called before the control is created: our
+    // own Create() calls MSWGetStyle() which calls AcceptsFocus() which calls
+    // us
+    if ( !m_hWnd )
+        return TRUE;
+
     long style = ::GetWindowLong(GetHwnd(), GWL_STYLE);
 
     return (style & ES_READONLY) == 0;
@@ -1718,7 +1730,7 @@ bool wxRichEditModule::OnInit()
 
 void wxRichEditModule::OnExit()
 {
-    for ( int i = 0; i < WXSIZEOF(ms_hRichEdit); i++ )
+    for ( size_t i = 0; i < WXSIZEOF(ms_hRichEdit); i++ )
     {
         if ( ms_hRichEdit[i] )
         {