From 70d04c9b21955c34070ee466693403e2b00870e1 Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Wed, 18 Jul 2012 07:52:13 +0000 Subject: FirstRun, FlashAvatars, FloatingContacts: changed folder structure git-svn-id: http://svn.miranda-ng.org/main/trunk@1008 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/FloatingContacts/src/thumbs.h | 74 +++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 plugins/FloatingContacts/src/thumbs.h (limited to 'plugins/FloatingContacts/src/thumbs.h') diff --git a/plugins/FloatingContacts/src/thumbs.h b/plugins/FloatingContacts/src/thumbs.h new file mode 100644 index 0000000000..ee6db80097 --- /dev/null +++ b/plugins/FloatingContacts/src/thumbs.h @@ -0,0 +1,74 @@ +///////////////////////////////////////////////////////////////////////////// +// +#define USERNAME_LEN 50 +class CDropTarget; + +typedef struct _DockOpt +{ + HWND hwndLeft; + HWND hwndRight; +} +DockOpt; + +struct ThumbInfo +{ +public: // TODO: make private + HWND hwnd; + TCHAR ptszName[ USERNAME_LEN ]; + HANDLE hContact; + int iIcon; + CDropTarget * dropTarget; + DockOpt dockOpt; + BOOL fTipActive; + BOOL fTipTimerActive; + POINT ptTipSt; + + BYTE btAlpha; + MyBitmap bmpContent; + + POINT ptPos; + SIZE szSize; + +public: + ThumbInfo(); + ~ThumbInfo(); + + void GetThumbRect (RECT *rc); + void PositionThumb (short nX, short nY); + void PositionThumbWorker (short nX, short nY, POINT *rcNewPos); + void ResizeThumb (); + void RefreshContactIcon (int iIcon); + void RefreshContactStatus (int idStatus); + void DeleteContactPos (); + void OnLButtonDown (short nX, short nY); + void OnLButtonUp (); + void OnMouseMove (short nX, short nY, WPARAM wParam); + void ThumbSelect (BOOL bMouse); + void ThumbDeselect (BOOL bMouse); + void SetThumbOpacity (BYTE btAlpha); + void KillTip (); + void UpdateContent (); + void PopUpMessageDialog (); + void OnTimer (BYTE idTimer); +}; + +void UndockThumbs ( ThumbInfo *pThumb1, ThumbInfo *pThumb2 ); +void DockThumbs ( ThumbInfo *pThumbLeft, ThumbInfo *pThumbRight, BOOL bMoveLeft ); + +class ThumbList: public LIST +{ +public: + ThumbList(); + ~ThumbList(); + + ThumbInfo* AddThumb (HWND hwnd, TCHAR *ptszName, HANDLE hContact); + void RemoveThumb (ThumbInfo *pThumb); + + ThumbInfo* FindThumb (HWND hwnd); + ThumbInfo* FindThumbByContact (HANDLE hContact); + +private: + static int cmp(const ThumbInfo *p1, const ThumbInfo *p2); +}; + +extern ThumbList thumbList; -- cgit v1.2.3