X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a290fa5a7deebe9d96c0c0089d18e27d4bd9b624..682214d5c6ec3e56dbdfd0c97d70d87e614b38c2:/include/wx/univ/listbox.h

diff --git a/include/wx/univ/listbox.h b/include/wx/univ/listbox.h
index e47013efdd..992837185a 100644
--- a/include/wx/univ/listbox.h
+++ b/include/wx/univ/listbox.h
@@ -102,19 +102,22 @@ public:
     virtual void Clear();
     virtual void Delete(int n);
 
-    virtual int GetCount() const { return (int)m_strings->GetCount(); }
-    virtual wxString GetString(int n) const { return (*m_strings)[n]; }
+    virtual int GetCount() const
+        { return (int)m_strings->GetCount(); }
+    virtual wxString GetString(int n) const
+        { return m_strings->Item(n); }
     virtual void SetString(int n, const wxString& s);
     virtual int FindString(const wxString& s) const
-        { return IsSorted() ? m_stringsSorted->Index(s) : m_strings->Index(s); }
+        { return m_strings->Index(s); }
 
     virtual bool IsSelected(int n) const
         { return m_selections.Index(n) != wxNOT_FOUND; }
-    virtual void SetSelection(int n, bool select = true);
+    virtual void DoSetSelection(int n, bool select);
     virtual int GetSelection() const;
     virtual int GetSelections(wxArrayInt& aSelections) const;
 
 protected:
+    virtual int DoAppendOnly(const wxString& item);
     virtual int DoAppend(const wxString& item);
     virtual void DoInsertItems(const wxArrayString& items, int pos);
     virtual void DoSetItems(const wxArrayString& items, void **clientData);
@@ -238,14 +241,8 @@ protected:
     void UpdateItems();
 
     // the array containing all items (it is sorted if the listbox has
-    // wxLB_SORT style). Note the evil trick: the pointers share the
-    // same location, hence we use m_strings when we don't care if the
-    // array is sorted or not, m_stringsSorted when we do
-    union
-    {
-        wxArrayString* m_strings;
-        wxSortedArrayString* m_stringsSorted;
-    };
+    // wxLB_SORT style)
+    wxArrayString* m_strings;
 
     // this array contains the indices of the selected items (for the single
     // selection listboxes only the first element of it is used and contains