1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
|
#if !defined(HISTORYSTATS_GUARD_MU_COMMON_H)
#define HISTORYSTATS_GUARD_MU_COMMON_H
/*
* helper functions
*/
namespace mu
{
/*
* clist
*/
namespace clist
{
HANDLE addMainMenuItem(const TCHAR* pszName, DWORD flags, int position, HICON hIcon, const char* pszService, const TCHAR* pszPopupName = NULL, int popupPosition = 0, DWORD hotKey = 0);
HANDLE addContactMenuItem(const TCHAR* pszName, DWORD flags, int position, HICON hIcon, const char* pszService, DWORD hotKey = 0, const char* pszContactOwner = NULL);
int modifyMenuItem(HANDLE hMenuItem, DWORD toModify, const TCHAR* pszName = NULL, DWORD flags = 0, HICON hIcon = NULL, DWORD hotKey = 0);
const TCHAR* getContactDisplayName(MCONTACT hContact);
const TCHAR* getStatusModeDescription(int nStatusMode);
}
/*
* db
*/
namespace db
{
int getProfilePath(int cbName, TCHAR* pszName);
int getProfileName(int cbName, TCHAR* pszName);
void setSafetyMode(bool safetyMode);
}
/*
* db_contact
*/
namespace db_contact
{
int enumSettings(MCONTACT hContact, const char* szModule, DBSETTINGENUMPROC pEnumProc, LPARAM lProcParam);
int getCount();
}
/*
* db_time
*/
namespace db_time
{
DWORD timestampToLocal(DWORD timestamp);
}
/*
* icolib
*/
namespace icolib
{
bool _available();
void addIcon(const TCHAR* szSection, const TCHAR* szDescription, const char* szIconName, const char* szDefaultFile, int iDefaultIndex, int cx = 16, int cy = 16);
void addIcon(const TCHAR* szSection, const TCHAR* szDescription, const char* szIconName, HICON hDefaultIcon, int cx = 16, int cy = 16);
HICON getIcon(const char* szIconName);
}
/*
* metacontacts [external]
*/
namespace metacontacts
{
bool _available();
int getNumContacts(MCONTACT hMetaContact);
MCONTACT getSubContact(MCONTACT hMetaContact, int iContactNumber);
}
/*
* opt
*/
namespace opt
{
void addPage(WPARAM addInfo, const TCHAR* pszGroup, const TCHAR* pszTitle, const TCHAR* pszTab, DLGPROC pfnDlgProc, const char* pszTemplate, HINSTANCE hInstance, DWORD flags = ODPF_BOLDGROUPS);
}
/*
* png
*/
namespace png
{
bool _available();
bool dibToPng(const BITMAPINFOHEADER* pBMIH, const BYTE* pDIData, BYTE* pImageData, long* pImageLen);
}
/*
* proto
*/
namespace proto
{
int enumProtocols(int* numProtocols, PROTOACCOUNT*** ppProtoDescriptors);
const char* getContactBaseProto(MCONTACT hContact);
}
/*
* protosvc
*/
namespace protosvc
{
DWORD getCaps(const char* szProto, int flagNum);
//int getName(const char* szProto, int cchName, char* szName);
HICON loadIcon(const char* szProto, int whichIcon);
}
/*
* skin
*/
namespace skin
{
HICON loadIcon(int id);
}
/*
* system
*/
namespace system
{
DWORD getVersion();
int getVersionText(int cchVersion, char* szVersion);
int terminated();
}
/*
* updater [external]
*/
namespace updater
{
bool _available();
void registerFL(int fileID, const PLUGININFOEX* pluginInfo);
}
/*
* utils
*/
namespace utils
{
int pathToRelative(const TCHAR* pszPath, TCHAR* pszNewPath);
int pathToAbsolute(const TCHAR* pszPath, TCHAR* pszNewPath);
}
/*
* core interface functions
*/
bool load();
void unload();
DWORD getMinimalMirandaVersion();
bool isMirandaVersionOk(DWORD version);
bool isMirandaUnicode();
/*
* string handling
*/
char* wideToAnsiDup(const WCHAR* pszWide, UINT uCP = CP_ACP);
WCHAR* ansiToWideDup(const char* pszAnsi, UINT uCP = CP_ACP);
char* wideToAnsi(const WCHAR* pszWide, char* pszRes, int maxLen, UINT uCP = CP_ACP);
WCHAR* ansiToWide(const char* pszAnsi, WCHAR* pszRes, int maxLen, UINT uCP = CP_ACP);
inline void freeWide(WCHAR* pszWide) { free(pszWide); }
inline void freeAnsi(char* pszAnsi) { free(pszAnsi); }
}
#endif // HISTORYSTATS_GUARD_MU_COMMON_H
|