Simplify natural sort classes interface

Now the comparison function/class should be constructed before usage.
This change also make it easier to plug in into various containers which
will require a compare function type (such as std::set).
This commit is contained in:
Chocobo1
2021-04-05 13:02:28 +08:00
parent 5045fa6dcd
commit a64bb1a990
24 changed files with 235 additions and 177 deletions

View File

@@ -34,7 +34,6 @@
#include "base/bittorrent/infohash.h"
#include "base/bittorrent/torrent.h"
#include "base/utils/string.h"
#include "transferlistmodel.h"
namespace
@@ -143,7 +142,7 @@ int TransferListSortModel::compare(const QModelIndex &left, const QModelIndex &r
case TransferListModel::TR_SAVE_PATH:
case TransferListModel::TR_TAGS:
case TransferListModel::TR_TRACKER:
return Utils::String::naturalCompare(leftValue.toString(), rightValue.toString(), Qt::CaseInsensitive);
return m_naturalCompare(leftValue.toString(), rightValue.toString());
case TransferListModel::TR_AMOUNT_DOWNLOADED:
case TransferListModel::TR_AMOUNT_DOWNLOADED_SESSION: