#pragma once #define MIRANDA_VER 0x0600 #include #include #include #include #include "resource.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* dc90285a-9985-4b7a-baad-e70ae1dfc1d9 */ #define MIID_RECENTCONTACTS { 0xdc90285a, 0x9985, 0x4b7a, {0xba, 0xad, 0xe7, 0x0a, 0xe1, 0xdf, 0xc1, 0xd9}} static struct MM_INTERFACE mmi; // from m_protosvc.h //#define MS_PROTO_GETCONTACTBASEPROTO "Proto/GetContactBaseProto" // Toggle ignore state for contact. //wParam=(WPARAM)(HANDLE)hContact1 //lParam=0 #define V_RECENTCONTACTS_TOGGLE_IGNORE "V_RecentContacts/ToggleIgnore" using namespace std; void wSetData(char **Data, const char *Value); void wfree(char **Data); //HICON LoadIconExEx( const char* IcoLibName, int NonIcoLibIcon ); static char msLastUC_ShowListName[] = "Recent Contacts"; static char dbLastUC_ModuleName[] = "V_RecentContacts"; static char dbLastUC_LastUsedTimeLo[] = "LastUsedTimeLo"; static char dbLastUC_LastUsedTimeHi[] = "LastUsedTimeHi"; static char dbLastUC_WindowPosPrefix[] = "Window"; static char dbLastUC_DateTimeFormat[] = "DateTimeFormat"; //char dbLastUC_DateTimeFormatDefault[] = "(%Y-%m-%d %H:%M) "; static char dbLastUC_DateTimeFormatDefault[] = "(%Y-%m-%d %H:%M) "; static char dbLastUC_MaxShownContacts[] = "MaxShownContacts"; static char dbLastUC_IgnoreContact[] = "Ignore"; static char dbLastUC_HideOfflineContacts[] = "HideOfflineContacts"; //int MaxShownContacts = 0; static char msLastUC_ShowList[] = "V_RecentContacts/ShowList"; static char msLastUC_IgnoreOff[] = "V_RecentContacts/SetIgnoreOff"; static char msLastUC_IgnoreOn[] = "V_RecentContacts/SetIgnoreOn"; //translations static char msLastUC_IconName[] = "Main icon"; static char msLastUC_HotkeyName[] = "Show Recent Contacts"; static char strLastUC_WndListHeadNameColumn[] = "Contact"; typedef struct _LastUCOptions { int MaxShownContacts; int HideOffline; string DateTimeFormat; } LastUCOptions; extern LastUCOptions LastUCOpt; //#include "m_tabsrmm.h" // custom tabSRMM events #define tabMSG_WINDOW_EVT_CUSTOM_BEFORESEND 1 struct TABSRMM_SessionInfo { unsigned int cbSize; unsigned int evtCode; HWND hwnd; // handle of the message dialog (tab) HWND hwndContainer; // handle of the parent container HWND hwndInput; // handle of the input area (rich edit) /*struct MessageWindowData*/ void *dat; // the session info /*struct ContainerWindowData*/ void *pContainer; }; typedef std::multimap <__time64_t, HANDLE, std::greater<__time64_t> > cmultimap; typedef std::pair <__time64_t, HANDLE> cpair; typedef struct LASTUC_DLG_DATA { cmultimap *Contacts; SIZE WindowMinSize; RECT ListUCRect; HANDLE hContact; } LASTUC_DLG_DATA;