]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/combobox.cpp
xti additions / changes, trying to reduce dependencies
[wxWidgets.git] / src / msw / combobox.cpp
index 5082a9b72847d65aeed1e0dd7b30baa1d4542957..ff22aac51d972f436474804cc0678631b21230b3 100644 (file)
@@ -17,7 +17,7 @@
 // headers
 // ----------------------------------------------------------------------------
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma implementation "combobox.h"
 #endif
 
 // wxWin macros
 // ----------------------------------------------------------------------------
 
+#if wxUSE_EXTENDED_RTTI
+IMPLEMENT_DYNAMIC_CLASS_XTI(wxComboBox, wxControl,"wx/combobox.h")
+
+WX_BEGIN_PROPERTIES_TABLE(wxComboBox)
+    // TODO DELEGATES
+       WX_PROPERTY( Font , wxFont , SetFont , GetFont  , )
+    WX_PROPERTY_COLLECTION( Choices , wxArrayString , wxString , AppendString , GetStrings )
+       WX_PROPERTY( Value ,wxString, SetValue, GetValue, )
+       WX_PROPERTY( Selection ,int, SetSelection, GetSelection, )
+WX_END_PROPERTIES_TABLE()
+
+WX_BEGIN_HANDLERS_TABLE(wxComboBox)
+WX_END_HANDLERS_TABLE()
+
+WX_CONSTRUCTOR_5( wxComboBox , wxWindow* , Parent , wxWindowID , Id , wxString , Value , wxPoint , Position , wxSize , Size )
+#else
 IMPLEMENT_DYNAMIC_CLASS(wxComboBox, wxControl)
+#endif
 
 // ----------------------------------------------------------------------------
 // function prototypes
@@ -162,11 +179,6 @@ WXHBRUSH wxComboBox::OnCtlColor(WXHDC pDC, WXHWND WXUNUSED(pWnd), WXUINT WXUNUSE
     )
 {
     HDC hdc = (HDC)pDC;
-    if (GetParent()->GetTransparentBackground())
-        SetBkMode(hdc, TRANSPARENT);
-    else
-        SetBkMode(hdc, OPAQUE);
-
     wxColour colBack = GetBackgroundColour();
 
     if (!IsEnabled())
@@ -317,8 +329,10 @@ bool wxComboBox::Create(wxWindow *parent, wxWindowID id,
                    CBS_AUTOHSCROLL | CBS_NOINTEGRALHEIGHT /* | WS_CLIPSIBLINGS */;
     if ( style & wxCB_READONLY )
         msStyle |= CBS_DROPDOWNLIST;
+#ifndef __WXWINCE__
     else if ( style & wxCB_SIMPLE )
         msStyle |= CBS_SIMPLE; // A list (shown always) and edit control
+#endif
     else
         msStyle |= CBS_DROPDOWN;
 
@@ -415,7 +429,7 @@ void wxComboBox::SetInsertionPoint(long pos)
         // Scroll insertion point into view
         SendMessage(hEditWnd, EM_SCROLLCARET, (WPARAM)0, (LPARAM)0);
         // Why is this necessary? (Copied from wxTextCtrl::SetInsertionPoint)
-        SendMessage(hEditWnd, EM_REPLACESEL, 0, (LPARAM)_T(""));
+        SendMessage(hEditWnd, EM_REPLACESEL, 0, (LPARAM) wxEmptyString);
     }
 #endif // __WIN32__
 }