]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/ctrlsub.h
fix multiple problems with selection in controls with wxTR_MULTIPLE style (closes...
[wxWidgets.git] / include / wx / ctrlsub.h
index c71a87835236cc20fc0973be4db0654b460d0e4f..74dcd4b47d7634e3f65730689d1f72677cee5129 100644 (file)
@@ -30,7 +30,7 @@
 // implements an extended interface deriving from this one)
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxItemContainerImmutable
+class WXDLLIMPEXP_CORE wxItemContainerImmutable
 {
 public:
     wxItemContainerImmutable() { }
@@ -73,7 +73,7 @@ public:
     bool SetStringSelection(const wxString& s);
 
     // return the selected string or empty string if none
-    wxString GetStringSelection() const;
+    virtual wxString GetStringSelection() const;
 
     // this is the same as SetSelection( for single-selection controls but
     // reads better for multi-selection ones
@@ -97,7 +97,7 @@ protected:
 // in this case DoInsertItem() needs to be overridden.
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxItemContainer : public wxItemContainerImmutable
+class WXDLLIMPEXP_CORE wxItemContainer : public wxItemContainerImmutable
 {
 private:
     // AppendItems() and InsertItems() helpers just call DoAppend/InsertItems()
@@ -133,7 +133,7 @@ private:
         wxASSERT_MSG( GetClientDataType() != wxClientData_Void,
                       _T("can't mix different types of client data") );
 
-        return AppendItems(items, wx_reinterpret_cast(void **, clientData),
+        return AppendItems(items, reinterpret_cast<void **>(clientData),
                            wxClientData_Object);
     }
 
@@ -180,7 +180,7 @@ private:
                       _T("can't mix different types of client data") );
 
         return InsertItems(items, pos,
-                           wx_reinterpret_cast(void **, clientData),
+                           reinterpret_cast<void **>(clientData),
                            wxClientData_Object);
     }
 
@@ -412,7 +412,7 @@ private:
     wxClientData* GetClientObject(unsigned int n) const                    \
         { return wxItemContainer::GetClientObject(n); }
 
-class WXDLLEXPORT wxControlWithItemsBase : public wxControl,
+class WXDLLIMPEXP_CORE wxControlWithItemsBase : public wxControl,
                                            public wxItemContainer
 {
 public:
@@ -437,7 +437,7 @@ protected:
     void InitCommandEventWithItems(wxCommandEvent& event, int n);
 
 private:
-    DECLARE_NO_COPY_CLASS(wxControlWithItemsBase)
+    wxDECLARE_NO_COPY_CLASS(wxControlWithItemsBase);
 };
 
 // define the platform-specific wxControlWithItems class
@@ -446,14 +446,14 @@ private:
 #elif defined(__WXMOTIF__)
     #include "wx/motif/ctrlsub.h"
 #else
-    class WXDLLEXPORT wxControlWithItems : public wxControlWithItemsBase
+    class WXDLLIMPEXP_CORE wxControlWithItems : public wxControlWithItemsBase
     {
     public:
         wxControlWithItems() { }
 
     private:
         DECLARE_ABSTRACT_CLASS(wxControlWithItems)
-        DECLARE_NO_COPY_CLASS(wxControlWithItems)
+        wxDECLARE_NO_COPY_CLASS(wxControlWithItems);
     };
 #endif