Creates operator() for Account and remove sortAccounts
This commit is contained in:
parent
bf25a10326
commit
6596097f72
|
@ -193,7 +193,7 @@ void KissCount::UpdateAccount(Account& ac)
|
|||
_user->_accounts[i] = ac;
|
||||
|
||||
if (ac._default)
|
||||
std::sort(_user->_accounts.begin(), _user->_accounts.end(), sortAccounts);
|
||||
std::sort(_user->_accounts.begin(), _user->_accounts.end(), Account());
|
||||
}
|
||||
|
||||
void KissCount::DeleteAccount(Account& ac, const wxString& replacement)
|
||||
|
|
|
@ -1,34 +0,0 @@
|
|||
/*
|
||||
Copyright 2010-2011 Grégory Soutadé
|
||||
|
||||
This file is part of KissCount.
|
||||
|
||||
KissCount is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
KissCount is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with KissCount. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "Account.h"
|
||||
|
||||
bool sortAccounts(Account ac1, Account ac2)
|
||||
{
|
||||
if (ac1._default) return true;
|
||||
if (ac2._default) return false;
|
||||
|
||||
if (!ac1.blocked && ac2.blocked) return true;
|
||||
if (ac1.blocked && !ac2.blocked) return false;
|
||||
|
||||
if (!ac1._virtual && ac2._virtual) return true;
|
||||
if (ac1._virtual && !ac2._virtual) return false;
|
||||
|
||||
return (ac1.name.Cmp(ac2.name) < 0);
|
||||
}
|
|
@ -31,8 +31,20 @@ struct Account {
|
|||
bool _default;
|
||||
bool is_owner;
|
||||
bool _virtual;
|
||||
|
||||
bool operator() (const Account& ac1, const Account& ac2) const
|
||||
{
|
||||
if (ac1._default) return true;
|
||||
if (ac2._default) return false;
|
||||
|
||||
if (!ac1.blocked && ac2.blocked) return true;
|
||||
if (ac1.blocked && !ac2.blocked) return false;
|
||||
|
||||
if (!ac1._virtual && ac2._virtual) return true;
|
||||
if (ac1._virtual && !ac2._virtual) return false;
|
||||
|
||||
return (ac1.name.Cmp(ac2.name) < 0);
|
||||
}
|
||||
};
|
||||
|
||||
bool sortAccounts(Account ac1, Account ac2);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue
Block a user