]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/combobox.cpp
Fix for crash when opening empty node
[wxWidgets.git] / src / os2 / combobox.cpp
index cc804d43547c28be82de149ffd86072741612679..d3ff05da08fab752c49dda6e1cea85648335d8b3 100644 (file)
@@ -129,8 +129,9 @@ bool wxComboBox::Create(
     lSstyle = WS_TABSTOP   |
               WS_VISIBLE;
 
-    if (lStyle & wxCLIP_SIBLINGS )
-        lSstyle |= WS_CLIPSIBLINGS;
+    // clipping siblings does not yet work
+    // if (lStyle & wxCLIP_SIBLINGS )
+    //     lSstyle |= WS_CLIPSIBLINGS;
     if (lStyle & wxCB_READONLY)
         lSstyle |= CBS_DROPDOWNLIST;
     else if (lStyle & wxCB_SIMPLE)
@@ -163,10 +164,10 @@ bool wxComboBox::Create(
 
     // Set height to use with sizers i.e. without the dropdown listbox
     wxFont vFont = GetFont();
-    int nCx,nCy;
-    wxGetCharSize( GetHWND(), &nCx, &nCy, &vFont );
-    int nEditHeight = EDIT_HEIGHT_FROM_CHAR_HEIGHT(nCy);
-    SetBestFittingSize(wxSize(-1,nEditHeight));
+    int nEditHeight;
+    wxGetCharSize( GetHWND(), NULL, &nEditHeight, &vFont );
+    nEditHeight = EDIT_HEIGHT_FROM_CHAR_HEIGHT(nEditHeight);
+    SetInitialSize(wxSize(-1,nEditHeight+4));   // +2x2 for the border
 
     if (!rsValue.empty())
     {
@@ -192,7 +193,7 @@ void wxComboBox::SetValue(
     if ( HasFlag(wxCB_READONLY) )
         SetStringSelection(rsValue);
     else
-        ::WinSetWindowText(GetHwnd(), (PSZ)rsValue.c_str());
+        ::WinSetWindowText(GetHwnd(), rsValue.c_str());
 } // end of wxComboBox::SetValue
 
 //
@@ -298,7 +299,7 @@ void wxComboBox::Replace( long lFrom,
     // Now replace with 'value', by pasting.
     //
     wxSetClipboardData( wxDF_TEXT
-                       ,(wxObject *)rsValue.c_str()
+                       ,rsValue.c_str()
                        ,0
                        ,0
                       );
@@ -388,7 +389,7 @@ bool wxComboBox::ProcessEditMsg(
                 return(HandleKillFocus((WXHWND)(HWND)wParam));
     }
     return false;
-} // end of WinGuiBase_CComboBox::ProcessEditMsg
+} // end of wxComboBox::ProcessEditMsg
 
 MRESULT EXPENTRY wxComboEditWndProc(
   HWND                              hWnd