summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/ExternalAPI/m_icqplus.h92
1 files changed, 92 insertions, 0 deletions
diff --git a/plugins/ExternalAPI/m_icqplus.h b/plugins/ExternalAPI/m_icqplus.h
new file mode 100644
index 0000000000..62f9d1664f
--- /dev/null
+++ b/plugins/ExternalAPI/m_icqplus.h
@@ -0,0 +1,92 @@
+// ---------------------------------------------------------------------------80
+// ICQ plugin for Miranda Instant Messenger
+// ________________________________________
+//
+// Copyright © 2000,2001 Richard Hughes, Roland Rabien, Tristan Van de Vreede
+// Copyright © 2001,2002 Jon Keating, Richard Hughes
+// Copyright © 2002,2003,2004 Martin Öberg, Sam Kothari, Robert Rainwater
+// Copyright © 2004,2005,2006,2007 Joe Kucera
+//
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+#ifndef M_ICQPLUS_H__
+#define M_ICQPLUS_H__ 1
+
+#define PS_ICQP_SERVER_IGNORE "/ServerIgnore"
+
+#define MS_INCOGNITO_REQUEST "/IncognitoRequest"
+
+
+#define MS_TZER_DIALOG "/TzerDialog"
+//Send tzer
+//wParam=(WPARAM)hContact;
+//lParam=(int)tZer
+#define MS_SEND_TZER "/SendtZer"
+
+
+
+
+
+#define MAX_CAPNAME 64
+typedef struct
+{
+ int cbSize;
+ char caps[0x10];
+ HANDLE hIcon;
+ char name[MAX_CAPNAME];
+} ICQ_CUSTOMCAP;
+
+// Add a custom icq capability.
+// wParam = 0;
+// lParam = (LPARAM)(ICQ_CUSTOMCAP *)&icqCustomCap;
+#define PS_ICQ_ADDCAPABILITY "/IcqAddCapability"
+
+// Check if capability is supportes. Only icqCustomCap.caps does matter.
+// wParam = (WPARAM)(HANDLE)hContact;
+// lParam = (LPARAM)(ICQ_CUSTOMCAP *)&icqCustomCap;
+// returns non-zero if capability is supported
+#define PS_ICQ_CHECKCAPABILITY "/IcqCheckCapability"
+
+
+#ifndef ICQ_NOHELPERS
+static __inline void IcqBuildMirandaCap(ICQ_CUSTOMCAP *icqCustomCap, const char *name, HICON hIcon, const char *id)
+{
+ if (!icqCustomCap) return;
+ icqCustomCap->cbSize = sizeof(*icqCustomCap);
+ icqCustomCap->hIcon = hIcon;
+ strncpy(icqCustomCap->name, name, sizeof(icqCustomCap->name))[sizeof(icqCustomCap->name)-1]=0;
+ memset(icqCustomCap->caps, 0, 0x10);
+ strncpy(icqCustomCap->caps+0, "Miranda/", 8);
+ strncpy(icqCustomCap->caps+8, id, 8);
+}
+#endif
+
+/* usage:
+char icqCustomCapStr[0x10] = {...};
+ICQ_CUSTOMCAP icqCustomCap;
+icqCustomCap.cbSize = sizeof(icqCustomCap);
+memcpy(icqCustomCap.caps, icqCustomCapStr, 0x10);
+lstrcpy(icqCustomCap.name, "Custom Name");
+CallProtoService("ICQ", PS_ICQ_ADDCAPABILITY, 0, (LPARAM)&icqCustomCap);
+*/
+
+//check user status via ASD
+//wParam=(WPARAM)hContact;
+
+#define MS_ICQ_GET_USER_STATUS "/IcqGetUserStatus"
+
+
+#endif // M_ICQPLUS_H__ \ No newline at end of file