Ticket #9268: StringList-Sort-2.patch

File StringList-Sort-2.patch, 1.0 KB (added by dknoto, 7 years ago)
  • headers/os/support/StringList.h

    diff --git a/headers/os/support/StringList.h b/headers/os/support/StringList.h
    index e58956b..9ef83cc 100644
    a b public: 
    3535            void                MakeEmpty();
    3636
    3737    // Reorder items
    38             void                Sort(bool ignoreCase = false);
    39                                     // TODO: Sort() with custom sort function.
     38            void                Sort(bool ignoreCase = false);         
     39            void                Sort(int (*compareFunc)(const void*, const void*));
     40
    4041            bool                Swap(int32 indexA, int32 indexB);
    4142            bool                Move(int32 fromIndex, int32 toIndex);
    4243
  • src/kits/support/StringList.cpp

    diff --git a/src/kits/support/StringList.cpp b/src/kits/support/StringList.cpp
    index 900322d..b0dbbb8 100644
    a b BStringList::Sort(bool ignoreCase) 
    201201        ? compare_private_data_ignore_case : compare_private_data);
    202202}
    203203
     204void
     205BStringList::Sort(int (*compareFunc)(const void*, const void*))
     206{
     207    if (compareFunc != NULL)
     208        fStrings.SortItems(compareFunc);
     209}
     210
    204211
    205212bool
    206213BStringList::Swap(int32 indexA, int32 indexB)