]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/textctrl.cpp
make the string properly 0 terminated and allow for one char more on the output buffer
[wxWidgets.git] / src / msw / textctrl.cpp
index b45dc637a979a7a753f6f5bd61addb066a614059..9630d087b9419c51e38a90f5621387e9285cc570 100644 (file)
@@ -351,21 +351,24 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id,
         // found (or if msw.inkedit != 0 and the InkEd.dll is present).
         // However, an application can veto ink edit controls by either specifying
         // msw.inkedit = 0 or by removing wxTE_RICH[2] from the style.
-        
+        //
         if ((wxSystemSettings::HasFeature(wxSYS_TABLET_PRESENT) || wxSystemOptions::GetOptionInt(wxT("msw.inkedit")) != 0) &&
             !(wxSystemOptions::HasOption(wxT("msw.inkedit")) && wxSystemOptions::GetOptionInt(wxT("msw.inkedit")) == 0))
         {
             if (wxRichEditModule::LoadInkEdit())
-            {                
-                windowClass = INKEDIT_CLASS;                
+            {
+                windowClass = INKEDIT_CLASS;
+
+#if wxUSE_INKEDIT && wxUSE_RICHEDIT
                 m_isInkEdit = 1;
-                
+#endif
+
                 // Fake rich text version for other calls
                 m_verRichEdit = 2;
             }
         }
 #endif
-        
+
         if (!IsInkEdit())
         {
             if ( m_verRichEdit == 2 )
@@ -1797,16 +1800,15 @@ void wxTextCtrl::OnChar(wxKeyEvent& event)
     switch ( event.GetKeyCode() )
     {
         case WXK_RETURN:
-            if ( !HasFlag(wxTE_MULTILINE) )
             {
                 wxCommandEvent event(wxEVT_COMMAND_TEXT_ENTER, m_windowId);
                 InitCommandEvent(event);
                 event.SetString(GetValue());
                 if ( GetEventHandler()->ProcessEvent(event) )
+                if ( !HasFlag(wxTE_MULTILINE) )
                     return;
+                //else: multiline controls need Enter for themselves
             }
-            //else: multiline controls need Enter for themselves
-
             break;
 
         case WXK_TAB: