static int compare_by_eta (GtkTreeModel * m, GtkTreeIter * a, GtkTreeIter * b, gpointer u) { int ret = 0; tr_torrent *ta, *tb; gtk_tree_model_get (m, a, MC_TORRENT, &ta, -1); gtk_tree_model_get (m, b, MC_TORRENT, &tb, -1); if (!ret) ret = compare_eta (tr_torrentStatCached (ta)->eta, tr_torrentStatCached (tb)->eta); if (!ret) ret = compare_by_name (m, a, b, u); return ret; }
std::vector<LLMute> LLMuteList::getMutes() const { std::vector<LLMute> mutes; for (mute_set_t::const_iterator it = mMutes.begin(); it != mMutes.end(); ++it) { mutes.push_back(*it); } for (string_set_t::const_iterator it = mLegacyMutes.begin(); it != mLegacyMutes.end(); ++it) { LLMute legacy(LLUUID::null, *it); mutes.push_back(legacy); } std::sort(mutes.begin(), mutes.end(), compare_by_name()); return mutes; }
static int compare_by_size (GtkTreeModel * m, GtkTreeIter * a, GtkTreeIter * b, gpointer u) { int ret = 0; tr_torrent *t; const tr_info *ia, *ib; gtk_tree_model_get (m, a, MC_TORRENT, &t, -1); ia = tr_torrentInfo (t); gtk_tree_model_get (m, b, MC_TORRENT, &t, -1); ib = tr_torrentInfo (t); if (!ret) ret = compare_uint64 (ia->totalSize, ib->totalSize); if (!ret) ret = compare_by_name (m, a, b, u); return ret; }