]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/arrstr.h
Add wxFileName::SetPermissions().
[wxWidgets.git] / interface / wx / arrstr.h
index f2ea79180fd4cf204f421828f73b7d1a5b1c79f3..d22f7a0e2ccdc842df323f99c2fa21030c8f5f6b 100644 (file)
@@ -2,8 +2,7 @@
 // Name:        arrstr.h
 // Purpose:     interface of wxArrayString
 // Author:      wxWidgets team
-// RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
     a specialization of wxArray class for the wxString member data: it is not
     implemented like this, but it does have all of the wxArray functions.
 
-    @todo what about stl? how does it integrate?
+    It also has the full set of <tt>std::vector<wxString></tt> compatible
+    methods, including nested @c iterator and @c const_iterator classes which
+    should be used in the new code for forward compatibility with the future
+    wxWidgets versions.
 
     @library{wxbase}
     @category{containers}
@@ -142,8 +144,7 @@ public:
 
         If @a nIndex is equal to GetCount() this function behaves as Add().
     */
-    void Insert(const wxString& str, size_t nIndex,
-                size_t copies = 1);
+    void Insert(wxString lItem, size_t nIndex, size_t copies = 1);
 
     /**
         Returns @true if the array is empty, @false otherwise. This function returns the
@@ -158,14 +159,20 @@ public:
 
         @see operator[] for the operator version.
     */
-    wxString& Item(size_t nIndex) const;
+    //@{
+    wxString& Item(size_t nIndex);
+    const wxString& Item(size_t nIndex) const;
+    //@}
 
     /**
         Returns the last element of the array. Attempt to access the last element of
         an empty array will result in assert failure in debug build, however no checks
         are done in release mode.
     */
-    wxString& Last() const;
+    //@{
+    wxString& Last();
+    const wxString& Last() const;
+    //@}
 
     /**
         Removes the first item matching this value. An assert failure is provoked by
@@ -258,29 +265,28 @@ public:
     wxSortedArrayString is an efficient container for storing wxString objects
     which always keeps the string in alphabetical order.
 
-    wxSortedArrayString uses binary search in its wxArrayString::Index() function
+    wxSortedArrayString uses binary search in its wxSortedArrayString::Index() method
     (instead of linear search for wxArrayString::Index()) which makes it much more
     efficient if you add strings to the array rarely (because, of course, you have
     to pay for Index() efficiency by having Add() be slower) but search for them
     often. Several methods should not be used with sorted array (basically, all
     those which break the order of items) which is mentioned in their description.
 
-    @todo what about STL? who does it integrates?
-
     @library{wxbase}
     @category{containers}
 
     @see wxArray, wxString, @ref overview_string
 */
-class wxSortedArrayString : public wxArrayString
+class wxSortedArrayString : public wxArray
 {
 public:
-
     /**
-        Copy constructor. Note that when an array is assigned to a sorted array,
-        its contents is automatically sorted during construction.
+        Conversion constructor.
+
+        Constructs a sorted array with the same contents as the (possibly
+        unsorted) "array" argument.
     */
-    wxArrayString(const wxArrayString& array);
+    wxSortedArrayString(const wxArrayString& array);
 
     /**
         @copydoc wxArrayString::Add()
@@ -306,6 +312,8 @@ public:
         @warning This function should not be used with sorted arrays because it
                  could break the order of items and, for example, subsequent calls
                  to Index() would then not work!
+
+        @warning In STL mode, Insert is private and simply invokes wxFAIL_MSG.
     */
     void Insert(const wxString& str, size_t nIndex,
                 size_t copies = 1);
@@ -316,6 +324,8 @@ public:
                  break the order of items and, for example, subsequent calls to Index()
                  would then not work! Also, sorting a wxSortedArrayString doesn't make
                  sense because its elements are always already sorted.
+
+        @warning In STL mode, Sort is private and simply invokes wxFAIL_MSG.
     */
     void Sort(bool reverseOrder = false);
     void Sort(CompareFunction compareFunction);