]> git.saurik.com Git - wxWidgets.git/blobdiff - src/motif/textctrl.cpp
Added comments
[wxWidgets.git] / src / motif / textctrl.cpp
index 224bd0200cdded248c2a8c362361bc9685ae651b..623de21836100e92c0893282d1a372baeba56464 100644 (file)
@@ -150,6 +150,10 @@ bool wxTextCtrl::Create(wxWindow *parent,
                                   NULL
                                  );
 
+        XtVaSetValues ((Widget) m_mainWidget,
+                        XmNeditable, ((style & wxTE_READONLY) ? False : True),
+                        NULL);
+
         // TODO: Is this relevant? What does it do?
         int noCols = 2;
         if (!value.IsNull() && (value.Length() > (unsigned int) noCols))
@@ -168,8 +172,21 @@ bool wxTextCtrl::Create(wxWindow *parent,
     }
 
     if ( !!value )
+    {
+#if 0
+        // don't do this because it is just linking the text to a source
+        // string which is unsafe. MB
+        //
         XmTextSetString ((Widget) m_mainWidget, (char*)value.c_str());
-
+#else
+        // do this instead... MB
+        //
+        XtVaSetValues( (Widget) m_mainWidget,
+                       XmNvalue, (char *)value.c_str(),
+                       NULL);
+#endif
+    }
+    
     // install callbacks
     XtAddCallback((Widget) m_mainWidget, XmNvalueChangedCallback, (XtCallbackProc)wxTextWindowChangedProc, (XtPointer)this);
 
@@ -234,7 +251,18 @@ void wxTextCtrl::SetValue(const wxString& value)
 {
     m_inSetValue = TRUE;
 
+#if 0
+    // don't do this because it is just linking the text to a source
+    // string which is unsafe. MB
+    //
     XmTextSetString ((Widget) m_mainWidget, (char*)value.c_str());
+#else
+    // do this instead... MB
+    //
+    XtVaSetValues( (Widget) m_mainWidget,
+                   XmNvalue, (char *)value.c_str(),
+                   NULL);
+#endif
 
     m_inSetValue = FALSE;
 }