From f99d18dd83625a753a7171e807b404345b11de4d Mon Sep 17 00:00:00 2001 From: sje Date: Wed, 3 Oct 2007 08:03:17 +0000 Subject: fix major bug in 'get most online supporting cap' function notify of subcontact change on any subcontact status change calculate subcontacts and meta status after modules loaded use meta map for contact count git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@342 4f64403b-2f21-0410-a795-97e2b3489a10 --- meta2/menu.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'meta2/menu.cpp') diff --git a/meta2/menu.cpp b/meta2/menu.cpp index 68c3674..2ff4e62 100644 --- a/meta2/menu.cpp +++ b/meta2/menu.cpp @@ -37,7 +37,7 @@ int ContactMenuConvert(WPARAM wParam, LPARAM lParam) { int ContactMenuAdd(WPARAM wParam, LPARAM lParam) { HANDLE hContact = (HANDLE)wParam; TCHAR buff[256]; - mir_sntprintf(buff, 256, TranslateT("Adding %s..."), (TCHAR *)CallService(MS_CLIST_GETCONTACTDISPLAYNAME, (WPARAM)hContact, GCDNF_TCHAR)); + mir_sntprintf(buff, 256, TranslateT("Adding %s..."), ContactName(hContact)); HANDLE hMeta = SelectMeta(buff); if(hMeta) Meta_Assign(hContact, hMeta); @@ -133,7 +133,7 @@ int PrebuildContactMenu(WPARAM wParam, LPARAM lParam) { SubcontactList::Iterator i = metaMap[hContact].start(); int count = 0; while(i.has_val()) { - mi.ptszName = (TCHAR *)CallService(MS_CLIST_GETCONTACTDISPLAYNAME, (WPARAM)i.val().handle(), GCDNF_TCHAR); + mi.ptszName = ContactName(i.val().handle()); mi.hIcon = ImageList_GetIcon(il, (int)CallService(MS_CLIST_GETCONTACTICON, (WPARAM)i.val().handle(), 0), 0); CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuContact[count], (LPARAM)&mi); @@ -158,10 +158,10 @@ int PrebuildContactMenu(WPARAM wParam, LPARAM lParam) { } else { mi.flags = CMIM_FLAGS; - if(meta_count) CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuAdd, (LPARAM)&mi); + if(metaMap.size()) CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuAdd, (LPARAM)&mi); CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuConvert, (LPARAM)&mi); mi.flags = CMIM_FLAGS | CMIF_HIDDEN; - if(!meta_count) CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuAdd, (LPARAM)&mi); + if(!metaMap.size()) CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuAdd, (LPARAM)&mi); CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuRemove, (LPARAM)&mi); CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuDefault, (LPARAM)&mi); } -- cgit v1.2.3