summaryrefslogtreecommitdiff
path: root/meta2/core_functions.h
diff options
context:
space:
mode:
authorsje <sje@4f64403b-2f21-0410-a795-97e2b3489a10>2007-10-03 05:26:48 +0000
committersje <sje@4f64403b-2f21-0410-a795-97e2b3489a10>2007-10-03 05:26:48 +0000
commit9814933f4bc5a7a4320819de54e313d8fc0ceffe (patch)
treead1b95ce79312a3e88bc0e5c47d2f11c43f2e58f /meta2/core_functions.h
parent812d72d8d92f24e1989a56d1180d1435ee27b5f6 (diff)
initial revision of new metacontacts
git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@338 4f64403b-2f21-0410-a795-97e2b3489a10
Diffstat (limited to 'meta2/core_functions.h')
-rw-r--r--meta2/core_functions.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/meta2/core_functions.h b/meta2/core_functions.h
new file mode 100644
index 0000000..8f6a6ee
--- /dev/null
+++ b/meta2/core_functions.h
@@ -0,0 +1,25 @@
+class MetaMap: public Map<ContactHandle, SubcontactList> {
+public:
+ SubcontactList &operator[](HANDLE h) {
+ return Map<ContactHandle, SubcontactList>::operator[](ContactHandle(h));
+ }
+
+ const bool exists(HANDLE h) const {
+ return Map<ContactHandle, SubcontactList>::exists(ContactHandle(h));
+ }
+
+ const bool remove(HANDLE h) {
+ return Map<ContactHandle, SubcontactList>::remove(ContactHandle(h));
+ }
+};
+
+extern MetaMap metaMap;
+
+HANDLE GetMetaHandle(DWORD id);
+void Meta_Hide(bool hide);
+HANDLE Meta_GetMostOnline(HANDLE hMeta);
+HANDLE Meta_GetMostOnlineSupporting(HANDLE hMeta, int flag, int cap);
+HANDLE Meta_Convert(HANDLE hSub);
+void Meta_CalcStatus(HANDLE hMeta);
+void Meta_Assign(HANDLE hSub, HANDLE hMeta);
+void Meta_Remove(HANDLE hSub); \ No newline at end of file