From 78c0815c4118fe24ab78cce2dc48a6232dcd824a Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sat, 2 Jun 2012 20:55:18 +0000 Subject: - code cleaning git-svn-id: http://svn.miranda-ng.org/main/trunk@270 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/FloatingContacts/main.cpp | 629 ++++++++++++++++++-------------------- 1 file changed, 302 insertions(+), 327 deletions(-) (limited to 'plugins/FloatingContacts/main.cpp') diff --git a/plugins/FloatingContacts/main.cpp b/plugins/FloatingContacts/main.cpp index 3abca83658..8c572e210d 100644 --- a/plugins/FloatingContacts/main.cpp +++ b/plugins/FloatingContacts/main.cpp @@ -28,9 +28,9 @@ No warranty for any misbehaviour. //#define DB_POS_GETY(pos) HIWORD(pos) //#define DB_POS_MAKE_XY(x, y) MAKELONG(x, y) -BOOL (WINAPI *pSetLayeredWindowAttributes)(HWND,COLORREF,BYTE,DWORD); +BOOL (WINAPI *pSetLayeredWindowAttributes)(HWND, COLORREF, BYTE, DWORD); BOOL (WINAPI *pUpdateLayeredWindow) - (HWND hwnd, HDC hdcDST, POINT *pptDst, SIZE *psize, HDC hdcSrc, POINT *pptSrc, + (HWND hwnd, HDC hdcDST, POINT *pptDst, SIZE *psize, HDC hdcSrc, POINT *pptSrc, COLORREF crKey, BLENDFUNCTION *pblend, DWORD dwFlags); // Globals @@ -58,7 +58,7 @@ static int ClcStatusToPf2 ( int status ); static LRESULT __stdcall CommWndProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); static LRESULT __stdcall newMirandaWndProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); -static int OnContactDeleted ( WPARAM wParam,LPARAM lParam ); +static int OnContactDeleted ( WPARAM wParam, LPARAM lParam ); static int OnContactIconChanged ( WPARAM wParam, LPARAM lParam ); static int OnContactDrag ( WPARAM wParam, LPARAM lParam ); static int OnContactDrop ( WPARAM wParam, LPARAM lParam ); @@ -69,94 +69,93 @@ static int OnStatusModeChange ( WPARAM wParam, LPARAM lParam ); static int OnModulesLoded ( WPARAM wParam, LPARAM lParam ); static int OnPrebuildContactMenu ( WPARAM wParam, LPARAM lParam ); -static int OnContactMenu_Remove ( WPARAM wParam,LPARAM lParam ); -//static int OnContactMenu_HideAll ( WPARAM wParam,LPARAM lParam ); -static int OnMainMenu_HideAll ( WPARAM wParam,LPARAM lParam ); -static int OnHotKey_HideWhenCListShow( WPARAM wParam,LPARAM lParam ); +static INT_PTR OnContactMenu_Remove ( WPARAM wParam, LPARAM lParam ); +static INT_PTR OnMainMenu_HideAll ( WPARAM wParam, LPARAM lParam ); +static INT_PTR OnHotKey_HideWhenCListShow( WPARAM wParam, LPARAM lParam ); static VOID CALLBACK ToTopTimerProc ( HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime); WNDPROC oldMirandaWndProc; -HINSTANCE hInst = NULL; -HMODULE hUserDll = NULL; -PLUGINLINK *pluginLink = NULL; -LIST_INTERFACE li = {0}; -HFONT hFont[FLT_FONTIDS] = {NULL}; -COLORREF tColor[FLT_FONTIDS] = {0}; -HIMAGELIST himl = NULL; -HANDLE hevContactIcon = NULL; -HANDLE hevContactDrop = NULL; -HANDLE hevContactDragStop = NULL; -HANDLE hevSkinIcons = NULL; -HANDLE hevContactDrag = NULL; -HANDLE hevContactSetting = NULL; -HANDLE hevContactDeleted = NULL; -HANDLE hevOptionsInit = NULL; -HANDLE hevStatusMode = NULL; -HANDLE hevModules = NULL; -HANDLE hevPrebuildMenu = NULL; -HANDLE hNewContact = NULL; - -HPEN hLTEdgesPen = NULL; -HPEN hRBEdgesPen = NULL; -HBRUSH hBkBrush = NULL; -DWORD bkColor = 0; -HBITMAP hBmpBackground = NULL; -WORD nBackgroundBmpUse = CLB_STRETCH; - -HWND hwndMiranda = NULL; -BOOL bVersionOK = FALSE; -BOOL bNT = FALSE; -BOOL bDockHorz = TRUE; -//UINT nStatus = 0; -HMENU hContactMenu = NULL; -HANDLE hMenuItemRemove = NULL; -HANDLE hMenuItemHideAll = NULL; -HANDLE hMainMenuItemHideAll = NULL; +HINSTANCE hInst = NULL; +HMODULE hUserDll = NULL; +PLUGINLINK *pluginLink = NULL; +LIST_INTERFACE li = {0}; +HFONT hFont[FLT_FONTIDS] = {NULL}; +COLORREF tColor[FLT_FONTIDS] = {0}; +HIMAGELIST himl = NULL; +HANDLE hevContactIcon = NULL; +HANDLE hevContactDrop = NULL; +HANDLE hevContactDragStop = NULL; +HANDLE hevSkinIcons = NULL; +HANDLE hevContactDrag = NULL; +HANDLE hevContactSetting = NULL; +HANDLE hevContactDeleted = NULL; +HANDLE hevOptionsInit = NULL; +HANDLE hevStatusMode = NULL; +HANDLE hevModules = NULL; +HANDLE hevPrebuildMenu = NULL; +HANDLE hNewContact = NULL; + +HPEN hLTEdgesPen = NULL; +HPEN hRBEdgesPen = NULL; +HBRUSH hBkBrush = NULL; +DWORD bkColor = 0; +HBITMAP hBmpBackground = NULL; +WORD nBackgroundBmpUse = CLB_STRETCH; + +HWND hwndMiranda = NULL; +BOOL bVersionOK = FALSE; +BOOL bNT = FALSE; +BOOL bDockHorz = TRUE; +//UINT nStatus = 0; +HMENU hContactMenu = NULL; +HANDLE hMenuItemRemove = NULL; +HANDLE hMenuItemHideAll = NULL; +HANDLE hMainMenuItemHideAll = NULL; RECT rcScreen; -DWORD dwOfflineModes = 0; -BOOL bEnableTip = FALSE; -UINT_PTR ToTopTimerID = 0; -BOOL bIsCListShow = TRUE; - -HANDLE hRemoveThumb = NULL; -HANDLE hMainHideAllThumbs = NULL; -HANDLE hHideWhenCListShow = NULL; +DWORD dwOfflineModes = 0; +BOOL bEnableTip = FALSE; +UINT_PTR ToTopTimerID = 0; +BOOL bIsCListShow = TRUE; + +HANDLE hRemoveThumb = NULL; +HANDLE hMainHideAllThumbs = NULL; +HANDLE hHideWhenCListShow = NULL; int hLangpack; //Options FCOptions fcOpt = {0}; -static void InitOptions(){ - fcOpt.thumbAlpha = 255; - fcOpt.bHideOffline = FALSE; - fcOpt.bHideAll = FALSE; - fcOpt.bHideWhenFullscreen = FALSE; - fcOpt.bMoveTogether = FALSE; - fcOpt.bFixedWidth = FALSE; - fcOpt.nThumbWidth = 0; - fcOpt.bShowTip = TRUE; - fcOpt.TimeIn = 0; - fcOpt.bToTop = TRUE; - fcOpt.ToTopTime = TOTOPTIME_DEF; - fcOpt.bHideWhenCListShow = FALSE; - fcOpt.bUseSingleClick = FALSE; - fcOpt.bShowIdle = TRUE; +static void InitOptions() { + fcOpt.thumbAlpha = 255; + fcOpt.bHideOffline = FALSE; + fcOpt.bHideAll = FALSE; + fcOpt.bHideWhenFullscreen = FALSE; + fcOpt.bMoveTogether = FALSE; + fcOpt.bFixedWidth = FALSE; + fcOpt.nThumbWidth = 0; + fcOpt.bShowTip = TRUE; + fcOpt.TimeIn = 0; + fcOpt.bToTop = TRUE; + fcOpt.ToTopTime = TOTOPTIME_DEF; + fcOpt.bHideWhenCListShow = FALSE; + fcOpt.bUseSingleClick = FALSE; + fcOpt.bShowIdle = TRUE; } -PLUGININFO pluginInfo ={ - sizeof(PLUGININFO), - __PLUGIN_NAME, - 0, - __DESC, - __AUTHOR, - __AUTHOREMAIL, - __COPYRIGHT, - __AUTHORWEB, - UNICODE_AWARE, +PLUGININFO pluginInfo = { + sizeof(PLUGININFO), + __PLUGIN_NAME, + 0, + __DESC, + __AUTHOR, + __AUTHOREMAIL, + __COPYRIGHT, + __AUTHORWEB, + UNICODE_AWARE, 0 }; @@ -170,29 +169,29 @@ extern "C" __declspec(dllexport) const MUUID * MirandaPluginInterfaces(void) return interfaces; } -PLUGININFOEX pluginInfoEx ={ - sizeof(PLUGININFOEX), - __PLUGIN_NAME, - 0, - __DESC, - __AUTHOR, - __AUTHOREMAIL, - __COPYRIGHT, - __AUTHORWEB, - UNICODE_AWARE, - 0, +PLUGININFOEX pluginInfoEx = { + sizeof(PLUGININFOEX), + __PLUGIN_NAME, + 0, + __DESC, + __AUTHOR, + __AUTHOREMAIL, + __COPYRIGHT, + __AUTHORWEB, + UNICODE_AWARE, + 0, MIID_FLTCONT }; -_inline unsigned int MakeVer(int a,int b,int c,int d) +_inline unsigned int MakeVer(int a, int b, int c, int d) { - return PLUGIN_MAKE_VERSION(a,b,c,d); + return PLUGIN_MAKE_VERSION(a, b, c, d); } extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion) { - if( mirandaVersion < MakeVer(MINIMAL_COREVERSION) ) return NULL; - pluginInfoEx.version=MakeVer(PRODUCT_VERSION); + if ( mirandaVersion < MakeVer(MINIMAL_COREVERSION) ) return NULL; + pluginInfoEx.version = MakeVer(PRODUCT_VERSION); return &pluginInfoEx; } @@ -219,8 +218,8 @@ BOOL WINAPI DllMain( HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved ) extern "C" __declspec(dllexport) PLUGININFO* MirandaPluginInfo( DWORD mirandaVersion ) { - if( mirandaVersion < MakeVer(MINIMAL_COREVERSION) ) return NULL; - pluginInfo.version=MakeVer(PRODUCT_VERSION); + if ( mirandaVersion < MakeVer(MINIMAL_COREVERSION) ) return NULL; + pluginInfo.version = MakeVer(PRODUCT_VERSION); return &pluginInfo; } @@ -230,24 +229,23 @@ extern "C" int __declspec(dllexport) Load( PLUGINLINK *link ) { SetLastError( 0 ); InitOptions(); - pluginLink = link; + pluginLink = link; mir_getLI(&li); mir_getLP(&pluginInfoEx); - hevModules = HookEvent( ME_SYSTEM_MODULESLOADED, OnModulesLoded ); - bNT = GetOSPlatform(); + hevModules = HookEvent( ME_SYSTEM_MODULESLOADED, OnModulesLoded ); + bNT = GetOSPlatform(); - if (hUserDll = LoadLibrary(_T("user32.dll"))) - { - pSetLayeredWindowAttributes = - (BOOL (WINAPI *)(HWND,COLORREF,BYTE,DWORD)) + if (hUserDll = LoadLibrary(_T("user32.dll"))) { + pSetLayeredWindowAttributes = + (BOOL (WINAPI *)(HWND, COLORREF, BYTE, DWORD)) GetProcAddress(hUserDll, "SetLayeredWindowAttributes"); - pUpdateLayeredWindow = + pUpdateLayeredWindow = (BOOL (WINAPI *)(HWND, HDC, POINT *, SIZE *, HDC, POINT *, COLORREF, BLENDFUNCTION *, DWORD)) GetProcAddress(hUserDll, "UpdateLayeredWindow"); - } else - { + } + else { pSetLayeredWindowAttributes = NULL; pUpdateLayeredWindow = NULL; } @@ -281,17 +279,14 @@ static void CleanUp() UnhookEvent( hevModules ); UnhookEvent( hevPrebuildMenu ); - if(hRemoveThumb) + if (hRemoveThumb) DestroyServiceFunction(hRemoveThumb); - if(hMainHideAllThumbs) + if (hMainHideAllThumbs) DestroyServiceFunction(hMainHideAllThumbs); - if(hHideWhenCListShow) + if (hHideWhenCListShow) DestroyServiceFunction(hHideWhenCListShow); -// while( pThumbsList != NULL ) -// RemoveThumb( pThumbsList ); - - if(ServiceExists(MS_HOTKEY_UNREGISTER)){ + if (ServiceExists(MS_HOTKEY_UNREGISTER)) { CallService(MS_HOTKEY_UNREGISTER, 0, (LPARAM)(sModule "/MainHideAllThumbs")); CallService(MS_HOTKEY_UNREGISTER, 0, (LPARAM)(sModule "/HideWhenCListShow")); } @@ -302,11 +297,10 @@ static void CleanUp() DeleteObject(hRBEdgesPen); if (NULL != hBmpBackground) DeleteObject(hBmpBackground); - if (NULL != hBkBrush) - { - SetClassLong((HWND)WND_CLASS, GCL_HBRBACKGROUND, (LONG)NULL); + if (NULL != hBkBrush) { + SetClassLong((HWND)WND_CLASS, GCLP_HBRBACKGROUND, (LONG)NULL); DeleteObject(hBkBrush); - hBkBrush=NULL; + hBkBrush = NULL; } for (nFontId = 0; nFontId < FLT_FONTIDS; nFontId++) @@ -318,9 +312,7 @@ static void CleanUp() FreeFileDropping(); if ( hUserDll != NULL ) - { FreeLibrary( hUserDll ); - } } @@ -329,24 +321,24 @@ static void CleanUp() // Hooked events static int OnModulesLoded( WPARAM wParam, LPARAM lParam ) { - hevContactIcon = HookEvent( ME_CLIST_CONTACTICONCHANGED, OnContactIconChanged ); - hevSkinIcons = HookEvent( ME_SKIN_ICONSCHANGED, OnSkinIconsChanged ); - hevContactDrag = HookEvent( ME_CLUI_CONTACTDRAGGING, OnContactDrag ); - hevContactDrop = HookEvent( ME_CLUI_CONTACTDROPPED, OnContactDrop ); - hevContactDragStop = HookEvent( ME_CLUI_CONTACTDRAGSTOP, OnContactDragStop ); - hevContactSetting = HookEvent( ME_DB_CONTACT_SETTINGCHANGED, OnContactSettingChanged ); - hevContactDeleted = HookEvent( ME_DB_CONTACT_DELETED, OnContactDeleted ); - hevOptionsInit = HookEvent( ME_OPT_INITIALISE, OnOptionsInitialize ); - hevStatusMode = HookEvent( ME_CLIST_STATUSMODECHANGE, OnStatusModeChange ); - hevPrebuildMenu = HookEvent( ME_CLIST_PREBUILDCONTACTMENU, OnPrebuildContactMenu ); - hwndMiranda = (HWND)CallService( MS_CLUI_GETHWND, 0, 0 ); - - oldMirandaWndProc = (WNDPROC)SetWindowLong( hwndMiranda, GWLP_WNDPROC, (LONG)newMirandaWndProc); + hevContactIcon = HookEvent( ME_CLIST_CONTACTICONCHANGED, OnContactIconChanged ); + hevSkinIcons = HookEvent( ME_SKIN_ICONSCHANGED, OnSkinIconsChanged ); + hevContactDrag = HookEvent( ME_CLUI_CONTACTDRAGGING, OnContactDrag ); + hevContactDrop = HookEvent( ME_CLUI_CONTACTDROPPED, OnContactDrop ); + hevContactDragStop = HookEvent( ME_CLUI_CONTACTDRAGSTOP, OnContactDragStop ); + hevContactSetting = HookEvent( ME_DB_CONTACT_SETTINGCHANGED, OnContactSettingChanged ); + hevContactDeleted = HookEvent( ME_DB_CONTACT_DELETED, OnContactDeleted ); + hevOptionsInit = HookEvent( ME_OPT_INITIALISE, OnOptionsInitialize ); + hevStatusMode = HookEvent( ME_CLIST_STATUSMODECHANGE, OnStatusModeChange ); + hevPrebuildMenu = HookEvent( ME_CLIST_PREBUILDCONTACTMENU, OnPrebuildContactMenu ); + hwndMiranda = (HWND)CallService( MS_CLUI_GETHWND, 0, 0 ); + + oldMirandaWndProc = (WNDPROC)SetWindowLong( hwndMiranda, GWLP_WNDPROC, (LONG)newMirandaWndProc); // No thumbs yet -// pThumbsList = NULL; +// pThumbsList = NULL; bEnableTip = ServiceExists("mToolTip/ShowTip"); RegisterWindowClass(); @@ -358,10 +350,10 @@ static int OnModulesLoded( WPARAM wParam, LPARAM lParam ) LoadContacts(); LoadMenus(); - if(fcOpt.bToTop){ + if (fcOpt.bToTop){ fcOpt.ToTopTime = (fcOpt.ToTopTime<1)?1:fcOpt.ToTopTime; fcOpt.ToTopTime = (fcOpt.ToTopTime>TOTOPTIME_MAX)?TOTOPTIME_MAX:fcOpt.ToTopTime; - ToTopTimerID=SetTimer(NULL, 0, fcOpt.ToTopTime*TOTOPTIME_P, ToTopTimerProc); + ToTopTimerID = SetTimer(NULL, 0, fcOpt.ToTopTime*TOTOPTIME_P, ToTopTimerProc); } return( 0 ); } @@ -369,8 +361,8 @@ static int OnModulesLoded( WPARAM wParam, LPARAM lParam ) static int OnContactDeleted( WPARAM wParam, LPARAM lParam ) { - HANDLE hContact = ( HANDLE )wParam; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + HANDLE hContact = ( HANDLE )wParam; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); if (!pThumb) return 0; pThumb->DeleteContactPos(); @@ -382,8 +374,8 @@ static int OnContactDeleted( WPARAM wParam, LPARAM lParam ) static int OnContactIconChanged( WPARAM wParam, LPARAM lParam ) { - HANDLE hContact = ( HANDLE )wParam; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + HANDLE hContact = ( HANDLE )wParam; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); if ( pThumb ) { @@ -398,21 +390,18 @@ static int OnContactIconChanged( WPARAM wParam, LPARAM lParam ) static int OnContactDrag( WPARAM wParam, LPARAM lParam ) { - ThumbInfo *pNewThumb = NULL; - HANDLE hContact = ( HANDLE )wParam; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); - TCHAR *ptName = (TCHAR*)CallService( MS_CLIST_GETCONTACTDISPLAYNAME, wParam, (LPARAM)GCDNF_TCHAR ); - int idStatus = ID_STATUS_OFFLINE; + ThumbInfo *pNewThumb = NULL; + HANDLE hContact = ( HANDLE )wParam; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + TCHAR *ptName = (TCHAR*)CallService( MS_CLIST_GETCONTACTDISPLAYNAME, wParam, (LPARAM)GCDNF_TCHAR ); + int idStatus = ID_STATUS_OFFLINE; POINT pt; GetCursorPos(&pt); - if ( pThumb == NULL ) - { + if ( pThumb == NULL ) { idStatus = GetContactStatus( hContact ); - if ( !fcOpt.bHideAll && !HideOnFullScreen() && ( !fcOpt.bHideOffline || IsStatusVisible( idStatus ) ) && (!fcOpt.bHideWhenCListShow || !bIsCListShow) ) - { -// CreateThumbWnd( pName, hContact, LOWORD( lParam ), HIWORD( lParam ) ); + if ( !fcOpt.bHideAll && !HideOnFullScreen() && ( !fcOpt.bHideOffline || IsStatusVisible( idStatus ) ) && (!fcOpt.bHideWhenCListShow || !bIsCListShow)) { CreateThumbWnd( ptName, hContact, pt.x, pt.y ); pNewThumb = thumbList.FindThumbByContact( hContact ); ShowWindow( pNewThumb->hwnd, SW_SHOWNA ); @@ -422,10 +411,7 @@ static int OnContactDrag( WPARAM wParam, LPARAM lParam ) } } else if ( hContact == hNewContact ) - { -// PositionThumb( pThumb, (short)( LOWORD( lParam ) - 5 ), (short)( HIWORD( lParam ) - 5 ) ); pThumb->PositionThumb( (short)( pt.x - 5 ), (short)( pt.y - 5 ) ); - } return( hNewContact != NULL ? 1 : 0 ); } @@ -438,8 +424,8 @@ static int OnContactDrop( WPARAM wParam, LPARAM lParam ) RECT rcThumb; // RECT rcOverlap; - HANDLE hContact = ( HANDLE )wParam; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + HANDLE hContact = ( HANDLE )wParam; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); if ( ( hNewContact == hContact ) && ( pThumb != NULL ) ) { @@ -491,16 +477,16 @@ static int OnSkinIconsChanged( WPARAM wParam, LPARAM lParam ) static int OnContactSettingChanged( WPARAM wParam, LPARAM lParam ) { - HANDLE hContact = ( HANDLE )wParam; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); - int idStatus = ID_STATUS_OFFLINE; - BOOL bRefresh = TRUE; + HANDLE hContact = ( HANDLE )wParam; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + int idStatus = ID_STATUS_OFFLINE; + BOOL bRefresh = TRUE; DBCONTACTWRITESETTING* pdbcws = ( DBCONTACTWRITESETTING* )lParam; if ( hContact == NULL ) { - if(( 0 == stricmp( pdbcws->szModule, "CLC" ) ) || ( 0 == stricmp( pdbcws->szModule, sModule ) ) ){ + if (( 0 == stricmp( pdbcws->szModule, "CLC" ) ) || ( 0 == stricmp( pdbcws->szModule, sModule ) ) ) { LoadDBSettings(); ApplyOptionsChanges(); } @@ -511,7 +497,7 @@ static int OnContactSettingChanged( WPARAM wParam, LPARAM lParam ) if ( pThumb == NULL ) return( 0 ); // Only on these 2 events we need to refresh - if( 0 == stricmp( pdbcws->szSetting, "Status" ) ) + if ( 0 == stricmp( pdbcws->szSetting, "Status" ) ) { idStatus = pdbcws->value.wVal; } @@ -588,26 +574,26 @@ static int OnPrebuildContactMenu( WPARAM wParam, LPARAM lParam ) static void LoadDBSettings() { - fcOpt.thumbAlpha = (BYTE)((double)DBGetContactSettingByte( NULL, sModule, "Opacity", 100 ) * 2.55 ); - fcOpt.bHideOffline = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideOffline", 0 ); - fcOpt.bHideAll = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideAll", 0 ); - fcOpt.bHideWhenFullscreen = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideWhenFullscreen", 0 ); - fcOpt.bMoveTogether = (BOOL)DBGetContactSettingByte( NULL, sModule, "MoveTogether", 0 ); - fcOpt.bFixedWidth = (BOOL)DBGetContactSettingByte( NULL, sModule, "FixedWidth", 0 ); - fcOpt.nThumbWidth = (DWORD)DBGetContactSettingDword( NULL, sModule, "Width", 0 ); - dwOfflineModes = DBGetContactSettingDword( NULL, "CLC","OfflineModes", CLCDEFAULT_OFFLINEMODES ); - fcOpt.bShowTip = (BOOL)DBGetContactSettingByte( NULL, sModule, "ShowTip", 1 ); - fcOpt.TimeIn = (WORD)DBGetContactSettingWord( NULL, sModule, "TimeIn", 0 ); - fcOpt.bToTop = (BOOL)DBGetContactSettingByte( NULL, sModule, "ToTop", 0 ); - fcOpt.ToTopTime = (WORD)DBGetContactSettingWord( NULL, sModule, "ToTopTime", TOTOPTIME_DEF ); - fcOpt.bHideWhenCListShow = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideWhenCListShow", 0 ); - fcOpt.bUseSingleClick = (BOOL)DBGetContactSettingByte( NULL, sModule, "UseSingleClick", 0 ); - fcOpt.bShowIdle = (BOOL)DBGetContactSettingByte( NULL, sModule, "ShowIdle", 0 ); - - if(DBGetContactSettingByte(NULL, "ModernData", "HideBehind", 0)) - bIsCListShow = (DBGetContactSettingByte(NULL, "ModernData", "BehindEdge", 0)==0); + fcOpt.thumbAlpha = (BYTE)((double)DBGetContactSettingByte( NULL, sModule, "Opacity", 100 ) * 2.55 ); + fcOpt.bHideOffline = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideOffline", 0 ); + fcOpt.bHideAll = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideAll", 0 ); + fcOpt.bHideWhenFullscreen = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideWhenFullscreen", 0 ); + fcOpt.bMoveTogether = (BOOL)DBGetContactSettingByte( NULL, sModule, "MoveTogether", 0 ); + fcOpt.bFixedWidth = (BOOL)DBGetContactSettingByte( NULL, sModule, "FixedWidth", 0 ); + fcOpt.nThumbWidth = (DWORD)DBGetContactSettingDword( NULL, sModule, "Width", 0 ); + dwOfflineModes = DBGetContactSettingDword( NULL, "CLC", "OfflineModes", CLCDEFAULT_OFFLINEMODES ); + fcOpt.bShowTip = (BOOL)DBGetContactSettingByte( NULL, sModule, "ShowTip", 1 ); + fcOpt.TimeIn = (WORD)DBGetContactSettingWord( NULL, sModule, "TimeIn", 0 ); + fcOpt.bToTop = (BOOL)DBGetContactSettingByte( NULL, sModule, "ToTop", 0 ); + fcOpt.ToTopTime = (WORD)DBGetContactSettingWord( NULL, sModule, "ToTopTime", TOTOPTIME_DEF ); + fcOpt.bHideWhenCListShow = (BOOL)DBGetContactSettingByte( NULL, sModule, "HideWhenCListShow", 0 ); + fcOpt.bUseSingleClick = (BOOL)DBGetContactSettingByte( NULL, sModule, "UseSingleClick", 0 ); + fcOpt.bShowIdle = (BOOL)DBGetContactSettingByte( NULL, sModule, "ShowIdle", 0 ); + + if (DBGetContactSettingByte(NULL, "ModernData", "HideBehind", 0)) + bIsCListShow = (DBGetContactSettingByte(NULL, "ModernData", "BehindEdge", 0) == 0); else - bIsCListShow = (DBGetContactSettingByte(NULL,"CList","State",0)==2); + bIsCListShow = (DBGetContactSettingByte(NULL, "CList", "State", 0) == 2); } void SendMsgDialog( HWND hwnd, char *pText ) @@ -621,8 +607,8 @@ void SendMsgDialog( HWND hwnd, char *pText ) static void ShowContactMenu( HWND hwnd, POINT pt ) { - ThumbInfo *pThumb = thumbList.FindThumb( hwnd ); - int idCommand = 0; + ThumbInfo *pThumb = thumbList.FindThumb( hwnd ); + int idCommand = 0; if ( pThumb != NULL ) { @@ -631,7 +617,7 @@ static void ShowContactMenu( HWND hwnd, POINT pt ) if ( hContactMenu == NULL ) return; idCommand = TrackPopupMenu( hContactMenu, TPM_RIGHTALIGN | TPM_TOPALIGN | TPM_RETURNCMD, pt.x, pt.y, 0 , hwnd, NULL ); - CallService( MS_CLIST_MENUPROCESSCOMMAND, MAKEWPARAM( idCommand ,MPCF_CONTACTMENU), (LPARAM)pThumb->hContact ); + CallService( MS_CLIST_MENUPROCESSCOMMAND, MAKEWPARAM( idCommand , MPCF_CONTACTMENU), (LPARAM)pThumb->hContact ); } } @@ -640,8 +626,8 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, WPARAM wParam, LPARAM lParam ) { - LRESULT lResult = 0; - ThumbInfo *pThumb = thumbList.FindThumb( hwnd ); + LRESULT lResult = 0; + ThumbInfo *pThumb = thumbList.FindThumb( hwnd ); switch( uMsg ) { @@ -653,7 +639,7 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, if (pThumb) pThumb->ThumbDeselect( TRUE ); - ClientToScreen(hwnd,&pt); + ClientToScreen(hwnd, &pt); ShowContactMenu( hwnd, pt ); } @@ -661,7 +647,7 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, //#if 0 case WM_NCPAINT: - if(pThumb){ + if (pThumb){ HDC hdc = GetWindowDC( hwnd ); BitBlt(hdc, 0, 0, pThumb->bmpContent.getWidth(), pThumb->bmpContent.getHeight(), pThumb->bmpContent.getDC(), 0, 0, SRCCOPY); //RepaintWindow( hwnd, hdc ); @@ -671,7 +657,7 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, } case WM_PAINT: - if(pThumb){ + if (pThumb){ PAINTSTRUCT ps; HDC hdc = BeginPaint(hwnd, &ps); BitBlt(hdc, 0, 0, pThumb->bmpContent.getWidth(), pThumb->bmpContent.getHeight(), pThumb->bmpContent.getDC(), 0, 0, SRCCOPY); @@ -682,7 +668,7 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, case WM_PRINT: case WM_PRINTCLIENT: - if(pThumb){ + if (pThumb){ BitBlt((HDC)wParam, 0, 0, pThumb->bmpContent.getWidth(), pThumb->bmpContent.getHeight(), pThumb->bmpContent.getDC(), 0, 0, SRCCOPY); //RepaintWindow(hwnd, (HDC)wParam); break; @@ -690,11 +676,11 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, //#endif case WM_MEASUREITEM: - lResult = CallService( MS_CLIST_MENUMEASUREITEM,wParam,lParam ); + lResult = CallService( MS_CLIST_MENUMEASUREITEM, wParam, lParam ); break; case WM_DRAWITEM: - lResult = CallService( MS_CLIST_MENUDRAWITEM,wParam,lParam ); + lResult = CallService( MS_CLIST_MENUDRAWITEM, wParam, lParam ); break; case WM_LBUTTONDOWN: @@ -714,12 +700,12 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, case WM_LBUTTONDBLCLK: // Popup message dialog //if (pThumb) pThumb->ThumbDeselect( TRUE ); - if(!fcOpt.bUseSingleClick && pThumb) + if (!fcOpt.bUseSingleClick && pThumb) pThumb->PopUpMessageDialog(); break; case WM_RBUTTONDOWN: - if(bEnableTip && fcOpt.bShowTip && pThumb) pThumb->KillTip(); + if (bEnableTip && fcOpt.bShowTip && pThumb) pThumb->KillTip(); break; case WM_REFRESH_CONTACT: if (pThumb) @@ -731,7 +717,7 @@ static LRESULT __stdcall CommWndProc( HWND hwnd, break; case WM_TIMER: - if(pThumb)pThumb->OnTimer(wParam); + if (pThumb)pThumb->OnTimer(wParam); break; case WM_HOTKEY: @@ -762,17 +748,17 @@ extern void SetThumbsOpacity( BYTE btAlpha ) static void GetScreenRect() { - rcScreen.left = GetSystemMetrics( SM_XVIRTUALSCREEN ); - rcScreen.top = GetSystemMetrics( SM_YVIRTUALSCREEN ); - rcScreen.right = GetSystemMetrics( SM_CXVIRTUALSCREEN ) + rcScreen.left; - rcScreen.bottom = GetSystemMetrics( SM_CYVIRTUALSCREEN ) + rcScreen.top; + rcScreen.left = GetSystemMetrics( SM_XVIRTUALSCREEN ); + rcScreen.top = GetSystemMetrics( SM_YVIRTUALSCREEN ); + rcScreen.right = GetSystemMetrics( SM_CXVIRTUALSCREEN ) + rcScreen.left; + rcScreen.bottom = GetSystemMetrics( SM_CYVIRTUALSCREEN ) + rcScreen.top; } void OnStatusChanged() { - int idStatus = ID_STATUS_OFFLINE; + int idStatus = ID_STATUS_OFFLINE; for (int i = 0; i < thumbList.getCount(); ++i) { @@ -788,12 +774,12 @@ void ApplyOptionsChanges() CreateThumbsFont(); CreateBackgroundBrush(); -// dwOfflineModes = DBGetContactSettingDword( NULL, "CLC","OfflineModes", CLCDEFAULT_OFFLINEMODES ); - if(!fcOpt.bToTop && ToTopTimerID){ +// dwOfflineModes = DBGetContactSettingDword( NULL, "CLC", "OfflineModes", CLCDEFAULT_OFFLINEMODES ); + if (!fcOpt.bToTop && ToTopTimerID){ KillTimer(NULL, ToTopTimerID); ToTopTimerID = 0; } - if(fcOpt.bToTop){ + if (fcOpt.bToTop){ if (ToTopTimerID) KillTimer(NULL, ToTopTimerID); fcOpt.ToTopTime = (fcOpt.ToTopTime<1)?1:fcOpt.ToTopTime; fcOpt.ToTopTime = (fcOpt.ToTopTime>TOTOPTIME_MAX)?TOTOPTIME_MAX:fcOpt.ToTopTime; @@ -815,18 +801,18 @@ static void RegisterWindowClass() WNDCLASSEX wcx; ZeroMemory( &wcx, sizeof( wcx ) ); - wcx.cbSize = sizeof( WNDCLASSEX ); - wcx.style = CS_VREDRAW | CS_HREDRAW | CS_DBLCLKS; - wcx.lpfnWndProc = CommWndProc; - wcx.cbClsExtra = 0; - wcx.cbWndExtra = 0; - wcx.hInstance = hInst; - wcx.hIcon = NULL; - wcx.hCursor = NULL; - wcx.hbrBackground = GetSysColorBrush(COLOR_3DFACE); - wcx.lpszMenuName = NULL; - wcx.lpszClassName = WND_CLASS; - wcx.hIconSm = NULL; + wcx.cbSize = sizeof( WNDCLASSEX ); + wcx.style = CS_VREDRAW | CS_HREDRAW | CS_DBLCLKS; + wcx.lpfnWndProc = CommWndProc; + wcx.cbClsExtra = 0; + wcx.cbWndExtra = 0; + wcx.hInstance = hInst; + wcx.hIcon = NULL; + wcx.hCursor = NULL; + wcx.hbrBackground = GetSysColorBrush(COLOR_3DFACE); + wcx.lpszMenuName = NULL; + wcx.lpszClassName = WND_CLASS; + wcx.hIconSm = NULL; SetLastError( 0 ); @@ -844,30 +830,30 @@ static void UnregisterWindowClass() static void CreateThumbWnd( TCHAR *ptszName, HANDLE hContact, int nX, int nY ) { - HWND hwnd = NULL; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + HWND hwnd = NULL; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); // Prepare for window creation if ( pThumb == NULL ) { - hwnd = CreateWindowEx( WS_EX_TOOLWINDOW | WS_EX_TOPMOST, - WND_CLASS, - ptszName, - WS_POPUP, - nX, - nY, - 50, - 20, - NULL /*hwndMiranda*/, - NULL, - hInst, + hwnd = CreateWindowEx( WS_EX_TOOLWINDOW | WS_EX_TOPMOST, + WND_CLASS, + ptszName, + WS_POPUP, + nX, + nY, + 50, + 20, + NULL /*hwndMiranda*/, + NULL, + hInst, NULL ); if ( hwnd != NULL ) { pThumb = thumbList.AddThumb( hwnd, ptszName, hContact ); - SetWindowLong( hwnd, GWL_USERDATA, (long)pThumb ); + SetWindowLong( hwnd, GWLP_USERDATA, (long)pThumb ); pThumb->ResizeThumb(); pThumb->SetThumbOpacity( fcOpt.thumbAlpha ); @@ -911,14 +897,14 @@ static void CreateThumbsFont() GetFontSetting(TRUE, nFontId, &lf, &tColor[nFontId]); { LONG height; - HDC hdc=GetDC(NULL); - height=lf.lfHeight; - lf.lfHeight=-MulDiv(lf.lfHeight, GetDeviceCaps(hdc, LOGPIXELSY), 72); - ReleaseDC(NULL,hdc); + HDC hdc = GetDC(NULL); + height = lf.lfHeight; + lf.lfHeight = -MulDiv(lf.lfHeight, GetDeviceCaps(hdc, LOGPIXELSY), 72); + ReleaseDC(NULL, hdc); hFont[nFontId] = CreateFontIndirectA(&lf); - lf.lfHeight=height; + lf.lfHeight = height; } } } @@ -948,7 +934,7 @@ static void CreateBackgroundBrush() } if (NULL != hBkBrush) { - SetClassLong((HWND)WND_CLASS, GCL_HBRBACKGROUND, (LONG)NULL); + SetClassLong((HWND)WND_CLASS, GCLP_HBRBACKGROUND, (LONG)NULL); DeleteObject( hBkBrush ); hBkBrush = NULL; } @@ -975,17 +961,17 @@ static void CreateBackgroundBrush() nBackgroundBmpUse = (WORD)DBGetContactSettingWord(NULL, sModule, "BkBitmapOpt", FLT_DEFAULT_BKGNDBITMAPOPT); // Create brush - hBkBrush = CreateSolidBrush(bkColor); + hBkBrush = CreateSolidBrush(bkColor); // Attach brush to the window - SetClassLong((HWND)WND_CLASS, GCL_HBRBACKGROUND, (LONG)hBkBrush); + SetClassLong((HWND)WND_CLASS, GCLP_HBRBACKGROUND, (LONG)hBkBrush); } static int GetContactStatus( HANDLE hContact ) { - char *szProto = NULL; - int idStatus = ID_STATUS_OFFLINE; + char *szProto = NULL; + int idStatus = ID_STATUS_OFFLINE; if ( hContact == NULL ) { @@ -993,11 +979,11 @@ static int GetContactStatus( HANDLE hContact ) return( 0 ); } - szProto = ( char* )CallService( "Proto/GetContactBaseProto", (WPARAM)hContact, 0 ); + szProto = ( char* )CallService( "Proto/GetContactBaseProto", (WPARAM)hContact, 0 ); if ( NULL != szProto ) { - idStatus = DBGetContactSettingWord( hContact, szProto, "Status", ID_STATUS_OFFLINE ); + idStatus = DBGetContactSettingWord( hContact, szProto, "Status", ID_STATUS_OFFLINE ); } @@ -1031,39 +1017,39 @@ BOOL IsStatusVisible( int status ) void RegHotkey( HANDLE hContact, HWND hwnd ) { - char szBuf[ MAX_PATH ]= {0}; -/* char szPath[ MAX_PATH ]= {0}; + char szBuf[ MAX_PATH ] = {0}; +/* char szPath[ MAX_PATH ] = {0}; GetModuleFileName( NULL, szPath, MAX_PATH ); PathRemoveFileSpec( szPath ); strcat( szPath, "\\Thumbs.ini" ); GetPrivateProfileString( "Hotkeys", szName, "", szBuf, MAX_PATH - 1, szPath );*/ DBVARIANT dbv; - if(DBGetContactSettingString ( hContact, sModule, "Hotkey", &dbv)) return; + if (DBGetContactSettingString ( hContact, sModule, "Hotkey", &dbv)) return; strncpy(szBuf, dbv.pszVal, MAX_PATH - 1); DBFreeVariant( &dbv ); if ( 0 != strlen( szBuf ) ) { - UINT nModifiers = 0; - char chKey = 0; - char szMod[ 2 ][ 20 ] = {0}; - char szKey[ 20 ] = {0}; + UINT nModifiers = 0; + char chKey = 0; + char szMod[ 2 ][ 20 ] = {0}; + char szKey[ 20 ] = {0}; int i = 0; sscanf( szBuf, "%[^'+']+%[^'+']+%[^'+']", szMod[ 0 ], szMod[ 1 ], szKey ); for ( i = 0; i < 2; ++i ) { - if( 0 == strncmp( szMod[ i ], "ALT", 19 ) ) + if ( 0 == strncmp( szMod[ i ], "ALT", 19 ) ) { nModifiers = nModifiers | MOD_ALT; } - else if( 0 == strncmp( szMod[ i ], "CTRL", 19 ) ) + else if ( 0 == strncmp( szMod[ i ], "CTRL", 19 ) ) { nModifiers = nModifiers | MOD_CONTROL; } - else if( 0 == strncmp( szMod[ i ], "SHIFT", 19 ) ) + else if ( 0 == strncmp( szMod[ i ], "SHIFT", 19 ) ) { nModifiers = nModifiers | MOD_SHIFT; } @@ -1090,20 +1076,17 @@ void SaveContactsPos() thumbList[i]->GetThumbRect( &rc ); - if( 0 == GetLastError() ) - DBWriteContactSettingDword( thumbList[i]->hContact, sModule, "ThumbsPos", DB_POS_MAKE_XY(rc.left,rc.top) ); + if ( 0 == GetLastError() ) + DBWriteContactSettingDword( thumbList[i]->hContact, sModule, "ThumbsPos", DB_POS_MAKE_XY(rc.left, rc.top) ); } } static void LoadContacts() { - HANDLE hContact = (HANDLE)CallService( MS_DB_CONTACT_FINDFIRST, 0, 0) ; - - while( hContact != NULL ) - { + HANDLE hContact = (HANDLE)CallService( MS_DB_CONTACT_FINDFIRST, 0, 0) ; + while( hContact != NULL ) { LoadContact( hContact ); - hContact = (HANDLE)CallService( MS_DB_CONTACT_FINDNEXT, ( WPARAM ) hContact, 0 ); } } @@ -1113,57 +1096,54 @@ static void LoadContacts() static void LoadMenus() { - CLISTMENUITEM mi; - - // Remove thumb menu item - hRemoveThumb = CreateServiceFunction( sModule "/RemoveThumb",OnContactMenu_Remove ); - ZeroMemory( &mi,sizeof( mi ) ); + // Remove thumb menu item + hRemoveThumb = CreateServiceFunction( sModule "/RemoveThumb", OnContactMenu_Remove ); - mi.cbSize = sizeof( mi ); - mi.position = 0xFFFFF; - mi.flags = CMIF_TCHAR; - mi.hIcon = LoadIcon( hInst, MAKEINTRESOURCE( IDI_HIDE ) ); - mi.ptszName = _T("Remove thumb"); - mi.pszService = sModule "/RemoveThumb"; - hMenuItemRemove = (HANDLE)CallService( MS_CLIST_ADDCONTACTMENUITEM,0, ( LPARAM )&mi ); - - // Hide all thumbs main menu item - hMainHideAllThumbs = CreateServiceFunction( sModule "/MainHideAllThumbs",OnMainMenu_HideAll ); - ZeroMemory( &mi,sizeof( mi ) ); + CLISTMENUITEM mi = { 0 }; + mi.cbSize = sizeof( mi ); + mi.position = 0xFFFFF; + mi.flags = CMIF_TCHAR; + mi.hIcon = LoadIcon( hInst, MAKEINTRESOURCE( IDI_HIDE ) ); + mi.ptszName = _T("Remove thumb"); + mi.pszService = sModule "/RemoveThumb"; + hMenuItemRemove = (HANDLE)CallService( MS_CLIST_ADDCONTACTMENUITEM, 0, ( LPARAM )&mi ); + + // Hide all thumbs main menu item + hMainHideAllThumbs = CreateServiceFunction( sModule "/MainHideAllThumbs", OnMainMenu_HideAll ); + ZeroMemory( &mi, sizeof( mi ) ); - mi.cbSize = sizeof( mi ); - mi.position = 0xFFFFF; - mi.flags = CMIF_TCHAR; - mi.hIcon = LoadIcon( hInst, MAKEINTRESOURCE( fcOpt.bHideAll ? IDI_SHOW : IDI_HIDE ) ); - mi.ptszName = fcOpt.bHideAll ? _T("Show all thumbs") : _T("Hide all thumbs"); - mi.pszService = sModule "/MainHideAllThumbs"; - hMainMenuItemHideAll = (HANDLE)CallService( MS_CLIST_ADDMAINMENUITEM,0, ( LPARAM )&mi ); - - if(ServiceExists(MS_HOTKEY_REGISTER)){ - HOTKEYDESC hkd={0}; - - hkd.cbSize = sizeof(hkd); - hkd.pszSection = "Floating Contacts"; + mi.cbSize = sizeof( mi ); + mi.position = 0xFFFFF; + mi.flags = CMIF_TCHAR; + mi.hIcon = LoadIcon( hInst, MAKEINTRESOURCE( fcOpt.bHideAll ? IDI_SHOW : IDI_HIDE ) ); + mi.ptszName = fcOpt.bHideAll ? _T("Show all thumbs") : _T("Hide all thumbs"); + mi.pszService = sModule "/MainHideAllThumbs"; + hMainMenuItemHideAll = (HANDLE)CallService( MS_CLIST_ADDMAINMENUITEM, 0, ( LPARAM )&mi ); + + if (ServiceExists(MS_HOTKEY_REGISTER)) { + HOTKEYDESC hkd = {0}; + hkd.cbSize = sizeof(hkd); + hkd.pszSection = "Floating Contacts"; - hkd.pszName = sModule "/MainHideAllThumbs"; - hkd.pszDescription = "Show/Hide all thumbs"; - hkd.pszService = sModule "/MainHideAllThumbs"; - CallService(MS_HOTKEY_REGISTER, 0, (LPARAM)&hkd); - - hHideWhenCListShow = CreateServiceFunction( sModule "/HideWhenCListShow",OnHotKey_HideWhenCListShow ); - hkd.pszName = sModule "/HideWhenCListShow"; - hkd.pszDescription = "Hide when contact list is shown"; - hkd.pszService = sModule "/HideWhenCListShow"; - CallService(MS_HOTKEY_REGISTER, 0, (LPARAM)&hkd); - } + hkd.pszName = sModule "/MainHideAllThumbs"; + hkd.pszDescription = "Show/Hide all thumbs"; + hkd.pszService = sModule "/MainHideAllThumbs"; + CallService(MS_HOTKEY_REGISTER, 0, (LPARAM)&hkd); + + hHideWhenCListShow = CreateServiceFunction( sModule "/HideWhenCListShow", OnHotKey_HideWhenCListShow ); + hkd.pszName = sModule "/HideWhenCListShow"; + hkd.pszDescription = "Hide when contact list is shown"; + hkd.pszService = sModule "/HideWhenCListShow"; + CallService(MS_HOTKEY_REGISTER, 0, (LPARAM)&hkd); + } } static void LoadContact( HANDLE hContact ) { - DWORD dwPos = (DWORD)-1; - TCHAR *ptName = NULL; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + DWORD dwPos = (DWORD)-1; + TCHAR *ptName = NULL; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); int nX, nY; @@ -1219,32 +1199,30 @@ BOOL HideOnFullScreen() } -static int OnContactMenu_Remove( WPARAM wParam,LPARAM lParam ) +static INT_PTR OnContactMenu_Remove( WPARAM wParam, LPARAM lParam ) { - HANDLE hContact = ( HANDLE )wParam; - ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); + HANDLE hContact = ( HANDLE )wParam; + ThumbInfo *pThumb = thumbList.FindThumbByContact( hContact ); - if (pThumb) - { + if (pThumb) { pThumb->DeleteContactPos(); thumbList.RemoveThumb(pThumb); } DestroyMenu( hContactMenu ); - return 0; } -static int OnHotKey_HideWhenCListShow( WPARAM wParam,LPARAM lParam ) +static INT_PTR OnHotKey_HideWhenCListShow( WPARAM wParam, LPARAM lParam ) { - fcOpt.bHideWhenCListShow=!fcOpt.bHideWhenCListShow; + fcOpt.bHideWhenCListShow = !fcOpt.bHideWhenCListShow; DBWriteContactSettingByte(NULL, sModule, "HideWhenCListShow", (BYTE)fcOpt.bHideWhenCListShow); OnStatusChanged(); return 0; } -static int OnMainMenu_HideAll( WPARAM wParam,LPARAM lParam ) +static INT_PTR OnMainMenu_HideAll( WPARAM wParam, LPARAM lParam ) { CLISTMENUITEM clmi = {0}; int b; @@ -1253,10 +1231,10 @@ static int OnMainMenu_HideAll( WPARAM wParam,LPARAM lParam ) DBWriteContactSettingByte(NULL, sModule, "HideAll", (BYTE)fcOpt.bHideAll); OnStatusChanged(); - clmi.cbSize = sizeof( clmi ); - clmi.flags = CMIM_NAME | CMIM_ICON|CMIF_TCHAR; - clmi.hIcon = LoadIcon( hInst, MAKEINTRESOURCE( fcOpt.bHideAll ? IDI_SHOW : IDI_HIDE ) ); - clmi.ptszName = fcOpt.bHideAll ? _T("Show all thumbs") : _T("Hide all thumbs"); + clmi.cbSize = sizeof( clmi ); + clmi.flags = CMIM_NAME | CMIM_ICON|CMIF_TCHAR; + clmi.hIcon = LoadIcon( hInst, MAKEINTRESOURCE( fcOpt.bHideAll ? IDI_SHOW : IDI_HIDE ) ); + clmi.ptszName = fcOpt.bHideAll ? _T("Show all thumbs") : _T("Hide all thumbs"); b = CallService( MS_CLIST_MODIFYMENUITEM, ( WPARAM )hMainMenuItemHideAll, ( LPARAM )&clmi ); return 0; } @@ -1270,59 +1248,56 @@ static VOID CALLBACK ToTopTimerProc ( HWND hwnd, UINT uMsg, UINT_PTR idEvent, DW 0, 0, 0, - 0, + 0, SWP_NOSIZE | SWP_NOMOVE | /*SWP_NOZORDER |*/ SWP_NOACTIVATE); } } void ShowThumbsOnHideCList() { - if(!fcOpt.bHideWhenCListShow || fcOpt.bHideAll || HideOnFullScreen())return; + if (!fcOpt.bHideWhenCListShow || fcOpt.bHideAll || HideOnFullScreen()) + return; + for (int i = 0; i < thumbList.getCount(); ++i) - { - if ( !fcOpt.bHideOffline || IsStatusVisible( GetContactStatus(thumbList[i]->hContact) ) ) - { + if ( !fcOpt.bHideOffline || IsStatusVisible( GetContactStatus(thumbList[i]->hContact) )) ShowWindow( thumbList[i]->hwnd, SW_SHOWNA ); - } - } } void HideThumbsOnShowCList() { - if(!fcOpt.bHideWhenCListShow || fcOpt.bHideAll || HideOnFullScreen())return; + if (!fcOpt.bHideWhenCListShow || fcOpt.bHideAll || HideOnFullScreen())return; for (int i = 0; i < thumbList.getCount(); ++i) ShowWindow( thumbList[i]->hwnd, SW_HIDE ); } static LRESULT __stdcall newMirandaWndProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) { - if( uMsg == WM_WINDOWPOSCHANGED) - { + if ( uMsg == WM_WINDOWPOSCHANGED) { WINDOWPOS *wp = (WINDOWPOS *)lParam; - if(wp->flags&SWP_HIDEWINDOW) { + if (wp->flags&SWP_HIDEWINDOW) { bIsCListShow = FALSE; ShowThumbsOnHideCList(); } - else if(wp->flags&SWP_SHOWWINDOW){ + else if (wp->flags&SWP_SHOWWINDOW){ bIsCListShow = TRUE; HideThumbsOnShowCList(); } - else if(!(wp->flags&SWP_NOMOVE)){ - BYTE method=DBGetContactSettingByte(NULL, "ModernData", "HideBehind", 0); - if(method) { - WORD wBehindEdgeBorderSize=DBGetContactSettingWord(NULL, "ModernData", "HideBehindBorderSize", 0); + else if (!(wp->flags&SWP_NOMOVE)) { + BYTE method = DBGetContactSettingByte(NULL, "ModernData", "HideBehind", 0); + if (method) { + WORD wBehindEdgeBorderSize = DBGetContactSettingWord(NULL, "ModernData", "HideBehindBorderSize", 0); RECT rc = {wp->x, wp->y, wp->x+wp->cx, wp->y+wp->cy}; RECT rcScreen = {wBehindEdgeBorderSize*(2-method), 0, GetSystemMetrics(SM_CXSCREEN)-wBehindEdgeBorderSize*(method-1), GetSystemMetrics(SM_CYSCREEN)}; RECT rcOverlap; BOOL isIntersect; isIntersect = IntersectRect( &rcOverlap, &rc, &rcScreen ); - if ( !isIntersect && bIsCListShow ){ + if ( !isIntersect && bIsCListShow ) { bIsCListShow = FALSE; ShowThumbsOnHideCList(); } - else if ( isIntersect && !bIsCListShow ){ + else if ( isIntersect && !bIsCListShow ) { bIsCListShow = TRUE; HideThumbsOnShowCList(); } -- cgit v1.2.3