From a7e5e613f86963c8bf82248ab044e0ea36e42fbc Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 16 Mar 2018 12:09:30 +0300 Subject: LIST<>::indexOf(T**) - fast index calculation for direct iterators --- plugins/QuickContacts/src/quickcontacts.cpp | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'plugins/QuickContacts/src') diff --git a/plugins/QuickContacts/src/quickcontacts.cpp b/plugins/QuickContacts/src/quickcontacts.cpp index d0c720b2e7..9f864e2bc7 100644 --- a/plugins/QuickContacts/src/quickcontacts.cpp +++ b/plugins/QuickContacts/src/quickcontacts.cpp @@ -404,12 +404,8 @@ void LoadContacts(HWND hwndDlg, BOOL show_all) SortArray(); SendDlgItemMessage(hwndDlg, IDC_USERNAME, CB_RESETCONTENT, 0, 0); - for (int loop = 0; loop < contacts.getCount(); loop++) { - SendDlgItemMessage(hwndDlg, IDC_USERNAME, CB_SETITEMDATA, - (WPARAM)SendDlgItemMessage(hwndDlg, IDC_USERNAME, - CB_ADDSTRING, 0, (LPARAM)GetListName(contacts[loop])), - (LPARAM)loop); - } + for (int loop = 0; loop < contacts.getCount(); loop++) + SendDlgItemMessage(hwndDlg, IDC_USERNAME, CB_SETITEMDATA, SendDlgItemMessage(hwndDlg, IDC_USERNAME, CB_ADDSTRING, 0, (LPARAM)GetListName(contacts[loop])), loop); } @@ -511,9 +507,9 @@ MCONTACT GetSelectedContact(HWND hwndDlg) // get array position from handle int GetItemPos(MCONTACT hcontact) { - for (int loop = 0; loop < contacts.getCount(); loop++) - if (hcontact == contacts[loop]->hcontact) - return loop; + for (auto &it : contacts) + if (hcontact == it->hcontact) + return contacts.indexOf(&it); return -1; } -- cgit v1.2.3