]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/motif/private.h
replace 5 copies of size constraining code with one function
[wxWidgets.git] / include / wx / motif / private.h
index 36b0c038fe53680893a96352d9dc2dc54de6cc0b..8bee9f9bf743bcb3341f98880f1985e5f9d9843a 100644 (file)
@@ -106,6 +106,9 @@ extern void wxGetTextExtent(WXDisplay* display, const wxFont& font,
                             double scale,
                             const wxString& string, int* width, int* height,
                             int* ascent, int* descent);
+extern void wxGetTextExtent(const wxWindow* window, const wxString& str,
+                            int* width, int* height,
+                            int* ascent, int* descent);
 
 #define wxNO_COLORS   0x00
 #define wxBACK_COLORS 0x01
@@ -131,16 +134,25 @@ XmString wxStringToXmString( const char* string );
 // cleaning up automatically)
 class wxXmString
 {
+    void Init(const char *str)
+    {
+        m_string = XmStringCreateLtoR((char *)str, XmSTRING_DEFAULT_CHARSET);
+    }
+
 public:
     wxXmString(const char* str)
     {
-        m_string = XmStringCreateLtoR((char *)str, XmSTRING_DEFAULT_CHARSET);
+        Init(str);
     }
 
     wxXmString(const wxString& str)
     {
-        m_string = XmStringCreateLtoR((char *)str.c_str(),
-            XmSTRING_DEFAULT_CHARSET);
+        Init(str.mb_str());
+    }
+
+    wxXmString(const wxCStrData& str)
+    {
+        Init(str);
     }
 
     // just to avoid calling XmStringFree()