From 725f68b6808a8a30778f58223fac75386f082785 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Fri, 18 May 2012 22:10:43 +0000 Subject: plugins folders renaming git-svn-id: http://svn.miranda-ng.org/main/trunk@61 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/modernb/modern_extraimage.cpp | 520 ---------------------------------- 1 file changed, 520 deletions(-) delete mode 100644 plugins/modernb/modern_extraimage.cpp (limited to 'plugins/modernb/modern_extraimage.cpp') diff --git a/plugins/modernb/modern_extraimage.cpp b/plugins/modernb/modern_extraimage.cpp deleted file mode 100644 index e54abd2628..0000000000 --- a/plugins/modernb/modern_extraimage.cpp +++ /dev/null @@ -1,520 +0,0 @@ -#include "hdr/modern_commonheaders.h" -#include "hdr/modern_commonprototypes.h" - - - -#define ExtraImageIconsIndexCount 6 - -boolean visar[EXTRACOLUMNCOUNT]; -int ExtraImageIconsIndex[ExtraImageIconsIndexCount]; -int EnabledColumnCount=0; -BOOL g_mutex_bSetAllExtraIconsCycle=0; - -static HIMAGELIST hExtraImageList=NULL; -static HIMAGELIST hWideExtraImageList=NULL; - -void ExtraImage_SetAllExtraIcons(HWND hwndList,HANDLE hContact); - -void ClearExtraIcons(); - -boolean ImageCreated=FALSE; -BYTE ExtraOrder[]= -{ - 1, // EXTRA_ICON_EMAIL - 2, // EXTRA_ICON_PROTO - 3, // EXTRA_ICON_SMS - 4, // EXTRA_ICON_ADV1 - 5, // EXTRA_ICON_ADV2 - 6, // EXTRA_ICON_WEB - 7, // EXTRA_ICON_CLIENT - 0, // EXTRA_ICON_VISMODE - 8, // EXTRA_ICON_ADV3 - 9, // EXTRA_ICON_ADV4 -}; - -BOOL HasExtraIconsService() -{ - return ServiceExists("ExtraIcon/Register"); -} - -boolean isColumnVisible(int extra) -{ - if (HasExtraIconsService()) - return true; - - int i=0; - for (i=0; i=EXTRACOLUMNCOUNT){return(-1);}; - if (to<0||to>=EXTRACOLUMNCOUNT){return(-1);}; - if (to EXTRACOLUMNCOUNT) - return -1; - else - return extra-1; - } - - int ord=ExtraOrder[extra-1]; - if (!visar[ord]) return -1; - return (colsum(0,ord)-1); -}; - -int ExtraImage_ColumnNumToExtraID(int column) -{ - if (HasExtraIconsService()) - return column+1; - - for (int i=0; ihwndContactTree==0){return(-1);}; - if (wParam==0||lParam==0){return(-1);}; - piec=(pIconExtraColumn)lParam; - - if (piec->cbSize!=sizeof(IconExtraColumn)){return(-1);}; - icol=ExtraImage_ExtraIDToColumnNum(piec->ColumnType); - if (icol==-1){return(-1);}; - hItem=(HANDLE)SendMessage(pcli->hwndContactTree,CLM_FINDCONTACT,(WPARAM)wParam,0); - if (hItem==0){return(-1);}; - - SendMessage(pcli->hwndContactTree,CLM_SETEXTRAIMAGE,(WPARAM)hItem,MAKELPARAM(icol,piec->hImage)); - return(0); -}; - -//wparam=hIcon -//return hImage on success,-1 on failure -INT_PTR AddIconToExtraImageList(WPARAM wParam,LPARAM lParam) -{ - int res=-1; - if (hExtraImageList==0||wParam==0){return(-1);}; - res=((int)ImageList_AddIcon(hExtraImageList,(HICON)wParam)); - if (res>254) return -1; - return res; -}; - - -void SetNewExtraColumnCount() -{ - int newcount; - LoadPositionsFromDB(ExtraOrder); - GetVisColumns(); - newcount=colsum(0,EXTRACOLUMNCOUNT-1); - ModernWriteSettingByte(NULL,CLUIFrameModule,"EnabledColumnCount",(BYTE)newcount); - EnabledColumnCount=newcount; - SendMessage(pcli->hwndContactTree,CLM_SETEXTRACOLUMNS,EnabledColumnCount,0); -}; - -void ExtraImage_ReloadExtraIcons() -{ - int count,i; - PROTOACCOUNT **accs; - HICON hicon; - BOOL needFree; - - SendMessage(pcli->hwndContactTree,CLM_SETEXTRACOLUMNSSPACE,ModernGetSettingByte(NULL,"CLUI","ExtraColumnSpace",18),0); - SendMessage(pcli->hwndContactTree,CLM_SETEXTRAIMAGELIST,0,(LPARAM)NULL); - if (hExtraImageList){ImageList_Destroy(hExtraImageList);}; - if (hWideExtraImageList){ImageList_Destroy(hWideExtraImageList);}; - - hExtraImageList=ImageList_Create(GetSystemMetrics(SM_CXSMICON),GetSystemMetrics(SM_CYSMICON),ILC_COLOR32|ILC_MASK,1,256); - hWideExtraImageList=ImageList_Create(GetSystemMetrics(SM_CXSMICON),GetSystemMetrics(SM_CYSMICON),ILC_COLOR32|ILC_MASK,1,256); - - if (!HasExtraIconsService()) - { - HICON hIcon; - - //loading icons - hIcon = LoadSkinnedIcon(SKINICON_OTHER_SENDEMAIL); - ExtraImageIconsIndex[0]=ImageList_AddIcon(hExtraImageList, hIcon); - CallService(MS_SKIN2_RELEASEICON, (WPARAM)hIcon, 0); - hIcon = LoadSkinnedIcon(SKINICON_OTHER_SMS); - ExtraImageIconsIndex[1]=ImageList_AddIcon(hExtraImageList, hIcon); - CallService(MS_SKIN2_RELEASEICON, (WPARAM)hIcon, 0); - hIcon = LoadSkinnedIcon(SKINICON_EVENT_URL); - ExtraImageIconsIndex[2]=ImageList_AddIcon(hExtraImageList, hIcon); - CallService(MS_SKIN2_RELEASEICON, (WPARAM)hIcon, 0); - - //calc only needed protocols - //adding protocol icons - ProtoEnumAccounts( &count, &accs ); - for(i=0;iszModuleName, PS_GETCAPS,PFLAGNUM_2, 0 )== 0) - continue; - - hIcon = LoadSkinnedProtoIcon(accs[i]->szModuleName,ID_STATUS_ONLINE); - ImageList_AddIcon(hExtraImageList, hIcon); - CallService(MS_SKIN2_RELEASEICON, (WPARAM)hIcon, 0); - } - - hicon=CLUI_LoadIconFromExternalFile("clisticons.dll",5,TRUE,TRUE,"AlwaysVis","Contact List",Translate("Always Visible"),-IDI_ALWAYSVIS,&needFree); - if (!hicon) {hicon=LoadSmallIcon(g_hInst, MAKEINTRESOURCE(IDI_ALWAYSVIS));needFree=TRUE;} - ExtraImageIconsIndex[3]=ImageList_AddIcon(hExtraImageList,hicon ); - if (needFree) DestroyIcon_protect(hicon); - - hicon=CLUI_LoadIconFromExternalFile("clisticons.dll",6,TRUE,TRUE,"NeverVis","Contact List",Translate("Never Visible"),-IDI_NEVERVIS,&needFree); - if (!hicon) {hicon=LoadSmallIcon(g_hInst, MAKEINTRESOURCE(IDI_NEVERVIS));needFree=TRUE;} - ExtraImageIconsIndex[4]=ImageList_AddIcon(hExtraImageList,hicon ); - if (needFree) DestroyIcon_protect(hicon); - - hicon=CLUI_LoadIconFromExternalFile("clisticons.dll",7,TRUE,TRUE,"ChatActivity","Contact List",Translate("Chat Activity"),-IDI_CHAT,&needFree); - if (!hicon) {hicon=LoadSmallIcon(g_hInst, MAKEINTRESOURCE(IDI_CHAT));needFree=TRUE;} - ExtraImageIconsIndex[5]=ImageList_AddIcon(hExtraImageList,hicon ); - if (needFree) DestroyIcon_protect(hicon); - } - - SendMessage(pcli->hwndContactTree,CLM_SETEXTRAIMAGELIST,(WPARAM)hWideExtraImageList,(LPARAM)hExtraImageList); - //ExtraImage_SetAllExtraIcons(hImgList); - SetNewExtraColumnCount(); - NotifyEventHooks(g_CluiData.hEventExtraImageListRebuilding,0,0); - ImageCreated=TRUE; -} - -void ReAssignExtraIcons() -{ - ClearExtraIcons(); - SetNewExtraColumnCount(); - ExtraImage_SetAllExtraIcons(pcli->hwndContactTree,0); - SendMessage(pcli->hwndContactTree,CLM_AUTOREBUILD,0,0); -} - -void ClearExtraIcons() -{ - int i; - HANDLE hContact,hItem; - - //EnabledColumnCount=DBGetContactSettingByte(NULL,CLUIFrameModule,"EnabledColumnCount",5); - //SendMessage(pcli->hwndContactTree,CLM_SETEXTRACOLUMNS,EnabledColumnCount,0); - SetNewExtraColumnCount(); - - hContact=(HANDLE)CallService(MS_DB_CONTACT_FINDFIRST,0,0); - do { - - hItem=(HANDLE)SendMessage(pcli->hwndContactTree,CLM_FINDCONTACT,(WPARAM)hContact,0); - if (hItem==0){continue;}; - for (i=0;ihwndContactTree,CLM_SETEXTRAIMAGE,(WPARAM)hItem,MAKELPARAM(i,0xFF)); - }; - - } while(hContact=(HANDLE)CallService(MS_DB_CONTACT_FINDNEXT,(WPARAM)hContact,0)); -}; - -void ExtraImage_SetAllExtraIcons(HWND hwndList,HANDLE hContact) -{ - HANDLE hItem; - int locApparentMode=0; - char * locApparentModeProto=NULL; - boolean hcontgiven=FALSE; - char *szProto; - char *(ImgIndex[64]); - int maxpr,count,i; - PROTOACCOUNT **accs; - pdisplayNameCacheEntry pdnce; - int em,pr,sms,a1,a2,w1,c1; - int tick=0; - g_mutex_bSetAllExtraIconsCycle=1; - hcontgiven=(hContact!=0); - - if (pcli->hwndContactTree==0){return;}; - tick=GetTickCount(); - if (ImageCreated==FALSE) ExtraImage_ReloadExtraIcons(); - - SetNewExtraColumnCount(); - - BOOL hasExtraIconsService = HasExtraIconsService(); - if (!hasExtraIconsService) - { - em=ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_EMAIL); - pr=ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_PROTO); - sms=ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_SMS); - a1=ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_ADV1); - a2=ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_ADV2); - w1=ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_WEB); - c1=ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_CLIENT); - - memset( ImgIndex, 0, sizeof( ImgIndex ) ); - ProtoEnumAccounts( &count, &accs ); - maxpr=0; - //calc only needed protocols - for(i=0;iszModuleName,PS_GETCAPS,PFLAGNUM_2,0)==0) continue; - ImgIndex[maxpr]=accs[i]->szModuleName; - maxpr++; - } - } - - if (hContact==NULL) - { - hContact=(HANDLE)CallService(MS_DB_CONTACT_FINDFIRST,0,0); - } - - do { - - szProto=NULL; - hItem=hContact; - if (hItem==0){continue;}; - pdnce=(pdisplayNameCacheEntry)pcli->pfnGetCacheEntry(hItem); - if (pdnce==NULL) {continue;}; - - // szProto=(char*)CallService(MS_PROTO_GETCONTACTBASEPROTO,(WPARAM)hContact,0); - szProto=pdnce->m_cache_cszProto; - - if (!hasExtraIconsService) - { - { - boolean showweb; - showweb=FALSE; - if (ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_WEB)!=-1) - { - - if (szProto != NULL) - { - char *homepage; - homepage= ModernGetStringA(pdnce->m_cache_hContact,"UserInfo", "Homepage"); - if (!homepage) - homepage= ModernGetStringA(pdnce->m_cache_hContact,pdnce->m_cache_cszProto, "Homepage"); - if (homepage!=NULL) - { - showweb=TRUE; - mir_free_and_nill(homepage); - } - } - SendMessage(hwndList,CLM_SETEXTRAIMAGE,(WPARAM)hItem,MAKELPARAM(ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_WEB),(showweb)?2:0xFF)); - } - } - { - DBVARIANT dbv={0}; - boolean showemail; - showemail=TRUE; - if (ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_EMAIL)!=-1) - { - - if (szProto == NULL || ModernGetSettingString(hContact, szProto, "e-mail",&dbv)) - { - ModernDBFreeVariant(&dbv); - if (ModernGetSettingString(hContact, "UserInfo", "Mye-mail0", &dbv)) - showemail=FALSE; - } - SendMessage(hwndList,CLM_SETEXTRAIMAGE,(WPARAM)hItem,MAKELPARAM(ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_EMAIL),(showemail)?0:0xFF)); - ModernDBFreeVariant(&dbv); - } - } - - { - DBVARIANT dbv={0}; - boolean showsms; - showsms=TRUE; - if (ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_SMS)!=-1) - { - if (szProto == NULL || ModernGetSettingString(hContact, szProto, "Cellular",&dbv)) - { - ModernDBFreeVariant(&dbv); - if (ModernGetSettingString(hContact, "UserInfo", "MyPhone0", &dbv)) - showsms=FALSE; - } - SendMessage(hwndList,CLM_SETEXTRAIMAGE,(WPARAM)hItem,MAKELPARAM(ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_SMS),(showsms)?1:0xFF)); - ModernDBFreeVariant(&dbv); - } - } - - if(ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_PROTO)!=-1) - { - for (i=0;iApparentMode==ID_STATUS_OFFLINE) - iconIndex=ExtraImageIconsIndex[4]; - else if (pdnce->ApparentMode==ID_STATUS_ONLINE) - { - if (szProto!=locApparentModeProto) - { - locApparentModeProto=szProto; - locApparentMode=CallProtoService(locApparentModeProto,PS_GETSTATUS,0,0); - } - if(locApparentMode == ID_STATUS_INVISIBLE || ModernGetSettingByte(NULL,"CList","AlwaysShowAlwaysVisIcon",SETTING_ALWAYSVISICON_DEFAULT) == 1) - iconIndex=ExtraImageIconsIndex[3]; } - } - else - { - if (pdnce->ApparentMode==ID_STATUS_OFFLINE) - iconIndex=ExtraImageIconsIndex[5]; - else iconIndex=255; - } - } - SendMessage(hwndList,CLM_SETEXTRAIMAGE,(WPARAM)hItem,MAKELPARAM(ExtraImage_ExtraIDToColumnNum(EXTRA_ICON_VISMODE),iconIndex)); - } - } - NotifyEventHooks(g_CluiData.hEventExtraImageApplying,(WPARAM)hContact,0); - if (hcontgiven) break; - Sleep(0); - } while(hContact=(HANDLE)CallService(MS_DB_CONTACT_FINDNEXT,(WPARAM)hContact,0)); - - tick=GetTickCount()-tick; - g_mutex_bSetAllExtraIconsCycle=0; - CLUI__cliInvalidateRect(hwndList,NULL,FALSE); - Sleep(0); -} - -HWND SetToolTip(HWND hwnd, TCHAR * tip); - -HWND tipHWND=NULL; - -static int ehhShowExtraInfoTip(WPARAM wParam, LPARAM lParam) -{ - CLCEXTRAINFOTIP * eit=(CLCEXTRAINFOTIP *)lParam; - //tipHWND=SetToolTip(eit->hwnd,_T("TEST")); - //SendMessage(tipHWND,TTM_ACTIVATE,1,0); - //SendMessage(tipHWND,TTM_POPUP,0,0); - return 1; - -} - -int ehhHideExtraInfoTip(WPARAM wParam, LPARAM lParam) -{ - - //SendMessage(tipHWND,TTM_ACTIVATE,0,0); - return 0; - -} - -INT_PTR WideSetIconForExtraColumn(WPARAM wParam,LPARAM lParam) -{ - pIconExtraColumn piec; - int icol; - HANDLE hItem; - - if (pcli->hwndContactTree==0){return(-1);}; - if (wParam==0||lParam==0){return(-1);}; - piec=(pIconExtraColumn)lParam; - - if (piec->cbSize!=sizeof(IconExtraColumn)){return(-1);}; - icol=ExtraImage_ExtraIDToColumnNum(piec->ColumnType); - if (icol==-1){return(-1);}; - - hItem=(HANDLE)SendMessage(pcli->hwndContactTree,CLM_FINDCONTACT,(WPARAM)wParam,0); - if (hItem==0){return(-1);}; - if (piec->hImage==(HANDLE)0xFF) piec->hImage=(HANDLE)0xFFFF; - - SendMessage(pcli->hwndContactTree,CLM_SETWIDEEXTRAIMAGE,(WPARAM)hItem,MAKELPARAM(icol,piec->hImage)); - return(0); -}; - -//wparam=hIcon -//return hImage on success,-1 on failure -INT_PTR WideAddIconToExtraImageList(WPARAM wParam,LPARAM lParam) -{ - int res=-1; - if (hWideExtraImageList==0||wParam==0){return(-1);}; - res=((int)ImageList_AddIcon(hWideExtraImageList,(HICON)wParam)); - if (res==0xFF) res=((int)ImageList_AddIcon(hWideExtraImageList,(HICON)wParam)); - if (res>0xFFFE) return -1; - return res; -}; -static int ehhExtraImage_UnloadModule(WPARAM wParam,LPARAM lParam) -{ - if (hExtraImageList) { ImageList_Destroy(hExtraImageList); }; - if (hWideExtraImageList) { ImageList_Destroy(hWideExtraImageList); }; - return 0; - -} -void ExtraImage_LoadModule() -{ - CreateServiceFunction(MS_CLIST_EXTRA_SET_ICON,WideSetIconForExtraColumn); - CreateServiceFunction(MS_CLIST_EXTRA_ADD_ICON,WideAddIconToExtraImageList); - - //CreateServiceFunction(MS_CLIST_EXTRA2_SET_ICON,WideSetIconForExtraColumn); - //CreateServiceFunction(MS_CLIST_EXTRA2_ADD_ICON,WideAddIconToExtraImageList); - - - - //HookEvent(ME_SKIN2_ICONSCHANGED,OnIconLibIconChanged); - - ModernHookEvent(ME_CLC_SHOWEXTRAINFOTIP, ehhShowExtraInfoTip ); - ModernHookEvent(ME_CLC_HIDEINFOTIP, ehhHideExtraInfoTip ); - ModernHookEvent(ME_SYSTEM_SHUTDOWN, ehhExtraImage_UnloadModule ); -}; - - - - - -- cgit v1.2.3