From cb4a46e7fbe62d788e66ed6121c717a2d22a4d7c Mon Sep 17 00:00:00 2001 From: watcherhd Date: Thu, 21 Apr 2011 14:14:52 +0000 Subject: svn.miranda.im is moving to a new home! git-svn-id: http://miranda-plugins.googlecode.com/svn/trunk@7 e753b5eb-9565-29b2-b5c5-2cc6f99dfbcb --- bancontrol/inc/IcoLib.inc | 51 ++++++++++ bancontrol/inc/m_clc.inc | 203 ++++++++++++++++++++++++++++++++++++++ bancontrol/inc/m_clist.inc | 33 +++++++ bancontrol/inc/m_database.inc | 60 +++++++++++ bancontrol/inc/m_langpack.inc | 30 ++++++ bancontrol/inc/m_metacontacts.inc | 149 ++++++++++++++++++++++++++++ bancontrol/inc/m_options.inc | 36 +++++++ bancontrol/inc/m_protocols.inc | 14 +++ bancontrol/inc/m_protosvc.inc | 18 ++++ bancontrol/inc/m_updater.inc | 29 ++++++ bancontrol/inc/newpluginapi.inc | 44 +++++++++ bancontrol/inc/statusmodes.inc | 26 +++++ 12 files changed, 693 insertions(+) create mode 100644 bancontrol/inc/IcoLib.inc create mode 100644 bancontrol/inc/m_clc.inc create mode 100644 bancontrol/inc/m_clist.inc create mode 100644 bancontrol/inc/m_database.inc create mode 100644 bancontrol/inc/m_langpack.inc create mode 100644 bancontrol/inc/m_metacontacts.inc create mode 100644 bancontrol/inc/m_options.inc create mode 100644 bancontrol/inc/m_protocols.inc create mode 100644 bancontrol/inc/m_protosvc.inc create mode 100644 bancontrol/inc/m_updater.inc create mode 100644 bancontrol/inc/newpluginapi.inc create mode 100644 bancontrol/inc/statusmodes.inc (limited to 'bancontrol/inc') diff --git a/bancontrol/inc/IcoLib.inc b/bancontrol/inc/IcoLib.inc new file mode 100644 index 0000000..022dfb6 --- /dev/null +++ b/bancontrol/inc/IcoLib.inc @@ -0,0 +1,51 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +SKINICONDESC struct + cbSize dd ? + pszSection dd ?;section name used to group icons + pszDescription dd ?;description for options dialog + pszName dd ?;name to refer to icon when playing and in db + ;this name is miranda-wide. so use prefixes of your plugin + ;e.g: "isee_connect", "clist_delete", etc + pszDefaultFile dd ?;default icon file to use + iDefaultIndex dd ? +SKINICONDESC ends + +SKINICONDESC2 struct + cbSize dd ? + pszSection dd ?;section name used to group icons + pszDescription dd ?;description for options dialog + pszName dd ?;name to refer to icon when playing and in db + pszDefaultFile dd ? + iDefaultIndex dd ? + hDefaultIcon dd ? +SKINICONDESC2 ends + +; +; Add a icon into options UI +; +; wParam = (WPARAM)0 +; lParam = (LPARAM)(SKINICONDESC*)sid; +; +;MS_SKIN2_ADDICON db "Skin2/Icons/AddIcon",0 +; +; Retrieve HICON with name specified in lParam +; Returned HICON SHOULDN'T be destroyed, it managed by IcoLib +; +;MS_SKIN2_GETICON "Skin2/Icons/GetIcon",0 +; +; Icons change notification +; +;ME_SKIN2_ICONSCHANGED "Skin2/IconsChanged",0 \ No newline at end of file diff --git a/bancontrol/inc/m_clc.inc b/bancontrol/inc/m_clc.inc new file mode 100644 index 0000000..12c13ee --- /dev/null +++ b/bancontrol/inc/m_clc.inc @@ -0,0 +1,203 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +CLS_MANUALUPDATE equ 0001h ;todo +CLS_SHOWHIDDEN equ 0002h +CLS_HIDEOFFLINE equ 0004h ;hides all offline users +CLS_CHECKBOXES equ 0008h +CLS_MULTICOLUMN equ 0010h ;not true multi-column, just for ignore/vis options +CLS_HIDEEMPTYGROUPS equ 0020h ;note: this flag will be spontaneously removed if the 'new subgroup' menu item is clicked, for obvious reasons +CLS_USEGROUPS equ 0040h +CLS_NOHIDEOFFLINE equ 0080h ;overrides CLS_HIDEOFFLINE and the per-group hideoffline setting +CLS_GREYALTERNATE equ 0100h ;make every other line slightly grey +CLS_GROUPCHECKBOXES equ 0200h ;put checkboxes on groups too (managed by CLC) +CLS_CONTACTLIST equ 0400h ;this control will be the main contact list (v. 0.3.4.3+ 2004/11/02) + +CLS_EX_DISABLEDRAGDROP equ 00000001h +CLS_EX_EDITLABELS equ 00000002h +CLS_EX_SHOWSELALWAYS equ 00000004h +CLS_EX_TRACKSELECT equ 00000008h +CLS_EX_SHOWGROUPCOUNTS equ 00000010h +CLS_EX_DIVIDERONOFF equ 00000020h +CLS_EX_HIDECOUNTSWHENEMPTY equ 00000040h +CLS_EX_NOTRANSLUCENTSEL equ 00000080h +CLS_EX_LINEWITHGROUPS equ 00000100h +CLS_EX_QUICKSEARCHVISONLY equ 00000200h +CLS_EX_SORTGROUPSALPHA equ 00000400h +CLS_EX_NOSMOOTHSCROLLING equ 00000800h + + +CLM_FIRST equ 1000h ;this is the same as LVM_FIRST +CLM_LAST equ 1100h + +;messages, compare with equivalent TVM_s in the MSDN +CLM_ADDCONTACT equ (CLM_FIRST+0) ;wParam=hContact +CLM_ADDGROUP equ (CLM_FIRST+1) ;wParam=hGroup +CLM_AUTOREBUILD equ (CLM_FIRST+2) +CLM_DELETEITEM equ (CLM_FIRST+3) ;wParam=hItem +CLM_EDITLABEL equ (CLM_FIRST+4) ;wParam=hItem +CLM_ENDEDITLABELNOW equ (CLM_FIRST+5) ;wParam=cancel, 0 to save +CLM_ENSUREVISIBLE equ (CLM_FIRST+6) ;wParam=hItem, lParam=partialOk +CLE_TOGGLE equ -1 +CLE_COLLAPSE equ 0 +CLE_EXPAND equ 1 +CLE_INVALID equ FFFFh +CLM_EXPAND equ (CLM_FIRST+7) ;wParam=hItem, lParam=CLE_ +CLM_FINDCONTACT equ (CLM_FIRST+8) ;wParam=hContact, returns an hItem +CLM_FINDGROUP equ (CLM_FIRST+9) ;wParam=hGroup, returns an hItem +CLM_GETBKCOLOR equ (CLM_FIRST+10) ;returns a COLORREF +CLM_GETCHECKMARK equ (CLM_FIRST+11) ;wParam=hItem, returns 1 or 0 +CLM_GETCOUNT equ (CLM_FIRST+12) ;returns the total number of items +CLM_GETEDITCONTROL equ (CLM_FIRST+13) ;returns the HWND, or NULL +CLM_GETEXPAND equ (CLM_FIRST+14) ;wParam=hItem, returns a CLE_, CLE_INVALID if not a group +CLM_GETEXTRACOLUMNS equ (CLM_FIRST+15) ;returns number of extra columns +CLM_GETEXTRAIMAGE equ (CLM_FIRST+16) ;wParam=hItem, lParam=MAKELPARAM(iColumn (0 based),0), returns iImage or 0xFF +CLM_GETEXTRAIMAGELIST equ (CLM_FIRST+17) ;returns HIMAGELIST +CLM_GETFONT equ (CLM_FIRST+18) ;wParam=fontId, see clm_setfont. returns hFont. +CLM_GETINDENT equ (CLM_FIRST+19) ;wParam=new group indent +CLM_GETISEARCHSTRING equ (CLM_FIRST+20) ;lParam=(char*)pszStr, max 120 bytes, returns number of chars in string +CLM_GETITEMTEXT equ (CLM_FIRST+21) ;wParam=hItem, lParam=(char*)pszStr, max 120 bytes +CLM_GETSCROLLTIME equ (CLM_FIRST+22) ;returns time in ms +CLM_GETSELECTION equ (CLM_FIRST+23) ;returns hItem +CLCHT_ABOVE equ 0001h ;above client area +CLCHT_BELOW equ 0002h ;below client area +CLCHT_TOLEFT equ 0004h ;left of client area +CLCHT_TORIGHT equ 0008h ;right of client area +CLCHT_NOWHERE equ 0010h ;in client area, not on an item +CLCHT_ONITEMICON equ 0020h +CLCHT_ONITEMCHECK equ 0040h +CLCHT_ONITEMLABEL equ 0080h +CLCHT_ONITEMINDENT equ 0100h ;to the left of an item icon +CLCHT_ONITEMEXTRA equ 0200h ;on an extra icon, HIBYTE(HIWORD()) says which +CLCHT_ONITEM equ 03E0h +CLCHT_INLEFTMARGIN equ 0400h +CLCHT_BELOWITEMS equ 0800h ;in client area but below last item +CLM_HITTEST equ (CLM_FIRST+25) ;lParam=MAKELPARAM(x,y) (relative to control), wParam=(PDWORD)&hitTest (see encoding of HitTest() in clc.h, can be NULL) returns hItem or NULL +CLM_SELECTITEM equ (CLM_FIRST+26) ;wParam=hItem +CLB_TOPLEFT equ 0 +CLB_STRETCHV equ 1 +CLB_STRETCHH equ 2 ;and tile vertically +CLB_STRETCH equ 3 +CLBM_TYPE equ 00FFh +CLBF_TILEH equ 1000h +CLBF_TILEV equ 2000h +CLBF_PROPORTIONAL equ 4000h +CLBF_SCROLL equ 8000h +CLM_SETBKBITMAP equ (CLM_FIRST+27) ;wParam=mode, lParam=hBitmap (don't delete it), NULL for none +CLM_SETBKCOLOR equ (CLM_FIRST+28) ;wParam=a COLORREF, default is GetSysColor(COLOR_3DFACE) +CLM_SETCHECKMARK equ (CLM_FIRST+29) ;wParam=hItem, lParam=1 or 0 +CLM_SETEXTRACOLUMNS equ (CLM_FIRST+30) ;wParam=number of extra columns (zero to MAXEXTRACOLUMNS from clc.h, currently 16) +CLM_SETEXTRAIMAGE equ (CLM_FIRST+31) ;wParam=hItem, lParam=MAKELPARAM(iColumn (0 based),iImage). iImage=0xFF is a blank +CLM_SETEXTRAIMAGELIST equ (CLM_FIRST+32) ;lParam=HIMAGELIST + +FONTID_CONTACTS equ 0 +FONTID_INVIS equ 1 +FONTID_OFFLINE equ 2 +FONTID_NOTONLIST equ 3 +FONTID_GROUPS equ 4 +FONTID_GROUPCOUNTS equ 5 +FONTID_DIVIDER equ 6 +FONTID_OFFINVIS equ 7 +FONTID_STATUSMSG equ 8 +FONTID_GROUPSCLOSED equ 9 +FONTID_CONTACTSHOVER equ 10 +FONTID_MAX equ 18 + +CLM_SETFONT equ (CLM_FIRST+33) ;wParam=hFont, lParam=MAKELPARAM(fRedraw,fontId) +CLM_SETINDENT equ (CLM_FIRST+34) ;wParam=new indent, default is 3 pixels +CLM_SETITEMTEXT equ (CLM_FIRST+35) ;wParam=hItem, lParam=(char*)pszNewText +CLM_SETSCROLLTIME equ (CLM_FIRST+36) ;wParam=time in ms, default 200 + +CLM_SETHIDEEMPTYGROUPS equ (CLM_FIRST+38) ;wParam=TRUE/FALSE +GREYF_UNFOCUS equ 80000000h +MODEF_OFFLINE equ 40000000h + +;and use the PF2_ #defines from m_protosvc.h +CLM_SETGREYOUTFLAGS equ (CLM_FIRST+39) ;wParam=new flags +CLM_GETHIDEOFFLINEROOT equ (CLM_FIRST+40) ;returns TRUE/FALSE +CLM_SETHIDEOFFLINEROOT equ (CLM_FIRST+41) ;wParam=TRUE/FALSE +CLM_SETUSEGROUPS equ (CLM_FIRST+42) ;wParam=TRUE/FALSE +CLM_SETOFFLINEMODES equ (CLM_FIRST+43) ;for 'hide offline', wParam=PF2_ flags and MODEF_OFFLINE +CLM_GETEXSTYLE equ (CLM_FIRST+44) ;returns CLS_EX_ flags +CLM_SETEXSTYLE equ (CLM_FIRST+45) ;wParam=CLS_EX_ flags +CLM_GETLEFTMARGIN equ (CLM_FIRST+46) ;returns count of pixels +CLM_SETLEFTMARGIN equ (CLM_FIRST+47) ;wParam=pixels + +CLCINFOITEM struct + cbSize dd ? + pszText dd ? + hParentGroup dd ? + flags dd ? + hIcon dd ? +CLCINFOITEM ends + +CLCIIF_BELOWGROUPS equ 1 ;put it between groups and contacts, default is at top +CLCIIF_BELOWCONTACTS equ 2 ;put it at the bottom +CLCIIF_CHECKBOX equ 40h ;give this item a check box +CLCIIF_GROUPFONT equ 80h ;draw the item using FONTID_GROUPS + +CLM_ADDINFOITEMA equ (CLM_FIRST+48) ;lParam=&cii, returns hItem +CLM_ADDINFOITEMW equ (CLM_FIRST+53) ;lParam=&cii, returns hItem +IFDEF _UNICODE + CLM_ADDINFOITEM equ CLM_ADDINFOITEMW +ELSE + CLM_ADDINFOITEM equ CLM_ADDINFOITEMA +ENDIF + +CLCIT_INVALID equ -1 +CLCIT_GROUP equ 0 +CLCIT_CONTACT equ 1 +CLCIT_DIVIDER equ 2 +CLCIT_INFO equ 3 +CLM_GETITEMTYPE equ (CLM_FIRST+49) ;wParam=hItem, returns a CLCIT_ +CLGN_ROOT equ 0 +CLGN_CHILD equ 1 +CLGN_PARENT equ 2 +CLGN_NEXT equ 3 +CLGN_PREVIOUS equ 4 +CLGN_NEXTCONTACT equ 5 +CLGN_PREVIOUSCONTACT equ 6 +CLGN_NEXTGROUP equ 7 +CLGN_PREVIOUSGROUP equ 8 +CLM_GETNEXTITEM equ (CLM_FIRST+50) ;wParam=flag, lParam=hItem, returns an hItem +CLM_GETTEXTCOLOR equ (CLM_FIRST+51) ;wParam=FONTID_, returns COLORREF +CLM_SETTEXTCOLOR equ (CLM_FIRST+52) ;wParam=FONTID_, lParam=COLORREF + +;notifications (most are omitted because the control processes everything) +CLNF_ISGROUP equ 1 +CLNF_ISINFO equ 2 + +NMCLISTCONTROL struct + hdr NMHDR <> + hItem dd ? + action dd ? + iColumn dd ? ;-1 if not on an extra column + flags dd ? + pt POINT <> +NMCLISTCONTROL ends + +CLN_FIRST equ (0-100) +CLN_EXPANDED equ (CLN_FIRST-0) ;hItem=hGroup, action=CLE_* +CLN_LISTREBUILT equ (CLN_FIRST-1) +CLN_ITEMCHECKED equ (CLN_FIRST-2) ;todo //hItem,action,flags valid +CLN_DRAGGING equ (CLN_FIRST-3) ;hItem,pt,flags valid. only sent when cursor outside window, return nonzero if processed +CLN_DROPPED equ (CLN_FIRST-4) ;hItem,pt,flags valid. only sent when cursor outside window, return nonzero if processed +CLN_LISTSIZECHANGE equ (CLN_FIRST-5) ;pt.y valid. the vertical height of the visible items in the list has changed. +CLN_OPTIONSCHANGED equ (CLN_FIRST-6) ;nothing valid. If you set some extended options they have been overwritten and should be re-set +CLN_DRAGSTOP equ (CLN_FIRST-7) ;hItem,flags valid. sent when cursor goes back in to the window having been outside, return nonzero if processed +CLN_NEWCONTACT equ (CLN_FIRST-8) ;hItem,flags valid. sent when a new contact is added without a full list rebuild +CLN_CONTACTMOVED equ (CLN_FIRST-9) ;hItem,flags valid. sent when contact is moved without a full list rebuild +CLN_CHECKCHANGED equ (CLN_FIRST-10) ;hItem,flags valid. sent when any check mark is changed, but only for one change if there are many +;NM_CLICK //hItem,iColumn,pt,flags valid +;NM_KEYDOWN //NMKEY structure, only sent when key is not already processed, return nonzero to prevent further processing \ No newline at end of file diff --git a/bancontrol/inc/m_clist.inc b/bancontrol/inc/m_clist.inc new file mode 100644 index 0000000..e277e99 --- /dev/null +++ b/bancontrol/inc/m_clist.inc @@ -0,0 +1,33 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +CLISTMENUITEM struc + cbSize dd ? + UNION NONUNIQUE + pszName dd ? + ptszName dd ? + ENDS + flags dd ? + position dd ? + hIcon HICON ? + pszService dd ? + ;UNION NONUNIQUE + pszPopupName dd ? + ; ptszPopupName dd ? + ; ENDS + popupPosition dd ? + hotKey dd ? + pszContactOwner dd ? +CLISTMENUITEM ends + diff --git a/bancontrol/inc/m_database.inc b/bancontrol/inc/m_database.inc new file mode 100644 index 0000000..b5cd683 --- /dev/null +++ b/bancontrol/inc/m_database.inc @@ -0,0 +1,60 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +DBCONTACTGETSETTING struct + szModule dd ? + szSetting dd ? + pValue dd ? +DBCONTACTGETSETTING ends + +DBCONTACTWRITESETTING struct + szModule dd ? + szSetting dd ? + VAR1 dd ? + VAR2 dd ? + VAR3 dd ? +DBCONTACTWRITESETTING ends + +DBVT_DELETED equ 0 ;this setting just got deleted, no other values are valid +DBVT_BYTE equ 1 ;bVal and cVal are valid +DBVT_WORD equ 2 ;wVal and sVal are valid +DBVT_DWORD equ 4 ;dVal and lVal are valid +DBVT_ASCIIZ equ 255 ;pszVal is valid +DBVT_BLOB equ 254 ;cpbVal and pbVal are valid +DBVT_UTF8 equ 253 ;pszVal is valid +DBVT_WCHAR equ 252 ;pszVal is valid +DBVTF_VARIABLELENGTH equ 80h + +DBVARIANT struct + VAR1 dd ? + VAR2 dd ? + VAR3 dd ? +DBVARIANT ends + +DBEVENTINFO struct + cbSize dd ? + szModule dd ? + timestamp dd ? + flags dd ? + eventType dd ? + cbBlob dd ? + pBlob dd ? +DBEVENTINFO ends + +EVENTTYPE_MESSAGE equ 0 +EVENTTYPE_URL equ 1 +EVENTTYPE_CONTACTS equ 2 ;v0.1.2.2+ +EVENTTYPE_ADDED equ 1000 ;v0.1.1.0+: these used to be module- +EVENTTYPE_AUTHREQUEST equ 1001 ;specific codes, hence the module- +EVENTTYPE_FILE equ 1002 ;specific limit has been raised to 2000 \ No newline at end of file diff --git a/bancontrol/inc/m_langpack.inc b/bancontrol/inc/m_langpack.inc new file mode 100644 index 0000000..ffe77f5 --- /dev/null +++ b/bancontrol/inc/m_langpack.inc @@ -0,0 +1,30 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +IFDEF _UNICODE + LANG_UNICODE equ 1000h +ELSE + LANG_UNICODE equ 0 +ENDIF + +LANGPACKTRANSLATEDIALOG struct + cbSize dd ? + flags dd ? + hwndDlg dd ? + ignoreControls dd ? +LANGPACKTRANSLATEDIALOG ends + +LPTDF_NOIGNOREEDIT equ 1 ;translate all edit controls. By default + ;non-read-only edit controls are not translated +LPTDF_NOTITLE equ 2 ;do not translate the title of the dialog diff --git a/bancontrol/inc/m_metacontacts.inc b/bancontrol/inc/m_metacontacts.inc new file mode 100644 index 0000000..3294ff2 --- /dev/null +++ b/bancontrol/inc/m_metacontacts.inc @@ -0,0 +1,149 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +;get the handle for a contact's parent metacontact +;wParam=(HANDLE)hSubContact +;lParam=0 +;returns a handle to the parent metacontact, or null if this contact is not a subcontact +;MS_MC_GETMETACONTACT "MetaContacts/GetMeta" + +;gets the handle for the default contact +;wParam=(HANDLE)hMetaContact +;lParam=0 +;returns a handle to the default contact, or null on failure +;MS_MC_GETDEFAULTCONTACT "MetaContacts/GetDefault" + +;gets the contact number for the default contact +;wParam=(HANDLE)hMetaContact +;lParam=0 +;returns a DWORD contact number, or -1 on failure +;MS_MC_GETDEFAULTCONTACTNUM "MetaContacts/GetDefaultNum" + +;gets the handle for the 'most online' contact +;wParam=(HANDLE)hMetaContact +;lParam=0 +;returns a handle to the 'most online' contact +;MS_MC_GETMOSTONLINECONTACT "MetaContacts/GetMostOnline" + +;gets the number of subcontacts for a metacontact +;wParam=(HANDLE)hMetaContact +;lParam=0 +;returns a DWORD representing the number of subcontacts for the given metacontact +;MS_MC_GETNUMCONTACTS "MetaContacts/GetNumContacts" + +;gets the handle of a subcontact, using the subcontact's number +;wParam=(HANDLE)hMetaContact +;lParam=(DWORD)contact number +;returns a handle to the specified subcontact +;MS_MC_GETSUBCONTACT "MetaContacts/GetSubContact" + +;sets the default contact, using the subcontact's contact number +;wParam=(HANDLE)hMetaContact +;lParam=(DWORD)contact number +;returns 0 on success +;MS_MC_SETDEFAULTCONTACTNUM "MetaContacts/SetDefault" + +;sets the default contact, using the subcontact's handle +;wParam=(HANDLE)hMetaContact +;lParam=(HANDLE)hSubcontact +;returns 0 on success +;MS_MC_SETDEFAULTCONTACT "MetaContacts/SetDefaultByHandle" + +;forces the metacontact to send using a specific subcontact, using the subcontact's contact number +;wParam=(HANDLE)hMetaContact +;lParam=(DWORD)contact number +;returns 0 on success +;MS_MC_FORCESENDCONTACTNUM "MetaContacts/ForceSendContact" + +;forces the metacontact to send using a specific subcontact, using the subcontact's handle +;wParam=(HANDLE)hMetaContact +;lParam=(HANDLE)hSubcontact +;returns 0 on success (will fail if 'force default' is in effect) +;MS_MC_FORCESENDCONTACT "MetaContacts/ForceSendContactByHandle" + +;'unforces' the metacontact to send using a specific subcontact +;wParam=(HANDLE)hMetaContact +;lParam=0 +;returns 0 on success (will fail if 'force default' is in effect) +;MS_MC_UNFORCESENDCONTACT "MetaContacts/UnforceSendContact" + +;'forces' or 'unforces' (i.e. toggles) the metacontact to send using it's default contact +; overrides (and clears) 'force send' above, and will even force use of offline contacts +; will send ME_MC_FORCESEND or ME_MC_UNFORCESEND event +;wParam=(HANDLE)hMetaContact +;lParam=0 +;returns 1(true) or 0(false) representing new state of 'force default' +;MS_MC_FORCEDEFAULT "MetaContacts/ForceSendDefault" + +; method to get state of 'force' for a metacontact +; wParam=(HANDLE)hMetaContact +; lParam= (DWORD)&contact_number or NULL +; +; if lparam supplied, the contact_number of the contatct 'in force' will be copied to the address it points to, +; or if none is in force, the value (DWORD)-1 will be copied +; (v0.8.0.8+ returns 1 if 'force default' is true with *lParam == default contact number, else returns 0 with *lParam as above) +;MS_MC_GETFORCESTATE "MetaContacts/GetForceState" + +; fired when a metacontact's default contact changes (fired upon creation of metacontact also, when default is initially set) +; wParam=(HANDLE)hMetaContact +; lParam=(HANDLE)hDefaultContact +;ME_MC_DEFAULTTCHANGED "MetaContacts/DefaultChanged" + +; fired when a metacontact's subcontacts change (fired upon creation of metacontact, when contacts are added or removed, and when +; contacts are reordered) - a signal to re-read metacontact data +; wParam=(HANDLE)hMetaContact +; lParam=0 +;ME_MC_SUBCONTACTSCHANGED "MetaContacts/SubcontactsChanged" + +; fired when a metacontact is forced to send using a specific subcontact +; wParam=(HANDLE)hMetaContact +; lParam=(HANDLE)hForceContact +;ME_MC_FORCESEND "MetaContacts/ForceSend" + +; fired when a metacontact is 'unforced' to send using a specific subcontact +; wParam=(HANDLE)hMetaContact +; lParam=0 +;ME_MC_UNFORCESEND "MetaContacts/UnforceSend" + +; method to get protocol name - used to be sure you're dealing with a "real" metacontacts plugin :) +; wParam=lParam=0 +;MS_MC_GETPROTOCOLNAME "MetaContacts/GetProtoName" + + +; added 0.9.5.0 (22/3/05) +; wParam=(HANDLE)hContact +; lParam=0 +; convert a given contact into a metacontact +;MS_MC_CONVERTTOMETA "MetaContacts/ConvertToMetacontact" + +; added 0.9.5.0 (22/3/05) +; wParam=(HANDLE)hContact +; lParam=(HANDLE)hMeta +; add an existing contact to a metacontact +;MS_MC_ADDTOMETA "MetaContacts/AddToMetacontact" + +; added 0.9.5.0 (22/3/05) +; wParam=0 +; lParam=(HANDLE)hContact +; remove a contact from a metacontact +;MS_MC_REMOVEFROMMETA "MetaContacts/RemoveFromMetacontact" + + +; added 0.9.13.2 (6/10/05) +; wParam=(BOOL)disable +; lParam=0 +; enable/disable the 'hidden group hack' - for clists that support subcontact hiding using 'IsSubcontact' setting +; should be called once in the clist 'onmodulesloaded' event handler (which, since it's loaded after the db, will be called +; before the metacontact onmodulesloaded handler where the subcontact hiding is usually done) +;MS_MC_DISABLEHIDDENGROUP "MetaContacts/DisableHiddenGroup" diff --git a/bancontrol/inc/m_options.inc b/bancontrol/inc/m_options.inc new file mode 100644 index 0000000..cfbf539 --- /dev/null +++ b/bancontrol/inc/m_options.inc @@ -0,0 +1,36 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +OPTIONSDIALOGPAGE struct + cbSize dd ? ;cbSize + position dd ? ;position + pszTitle dd ? ;*pszTitle + pfnDlgProc dd ? ;pfnDlgProc + pszTemplate dd ? ;*pszTemplate + hInstance dd ? ;hInstance + hIcon dd ? ;hIcon + pszGroup dd ? ;*pszGroup + groupPosition dd ? ;groupPosition + hGroupIcon dd ? ;hGroupIcon + flags dd ? ;flags + nIDBottomSimpleControl dd ? ;nIDBottomSimpleControl + nIDRightSimpleControl dd ? ;nIDRightSimpleControl + expertOnlyControls dd ? ;*expertOnlyControls + nExpertOnlyControls dd ? ;nExpertOnlyControls +OPTIONSDIALOGPAGE ends + +ODPF_SIMPLEONLY equ 1 ; page is only shown when in simple mode +ODPF_EXPERTONLY equ 2 ; " expert mode +ODPF_BOLDGROUPS equ 4 ; give group box titles a bold font +ODPF_UNICODE equ 8 ; string fields in OPTIONSDIALOGPAGE are WCHAR* diff --git a/bancontrol/inc/m_protocols.inc b/bancontrol/inc/m_protocols.inc new file mode 100644 index 0000000..bbe3542 --- /dev/null +++ b/bancontrol/inc/m_protocols.inc @@ -0,0 +1,14 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + diff --git a/bancontrol/inc/m_protosvc.inc b/bancontrol/inc/m_protosvc.inc new file mode 100644 index 0000000..15cbb10 --- /dev/null +++ b/bancontrol/inc/m_protosvc.inc @@ -0,0 +1,18 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +PFLAGNUM_1 equ 1 +PF1_IMSEND equ 00000001h ;supports IM sending +PF1_IMRECV equ 00000002h ;supports IM receiving +PF1_IM equ (PF1_IMSEND or PF1_IMRECV) \ No newline at end of file diff --git a/bancontrol/inc/m_updater.inc b/bancontrol/inc/m_updater.inc new file mode 100644 index 0000000..a10d992 --- /dev/null +++ b/bancontrol/inc/m_updater.inc @@ -0,0 +1,29 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +UPDATE struct + cbSize dd ? + szComponentName dd ? + szVersionURL dd ? + pbVersionPrefix dd ? + cpbVersionPrefix dd ? + szUpdateURL dd ? + szBetaVersionURL dd ? + pbBetaVersionPrefix dd ? + cpbBetaVersionPrefix dd ? + szBetaUpdateURL dd ? + pbVersion dd ? + cpbVersion dd ? + szBetaChangelogURL dd ? +UPDATE ends \ No newline at end of file diff --git a/bancontrol/inc/newpluginapi.inc b/bancontrol/inc/newpluginapi.inc new file mode 100644 index 0000000..398d4cd --- /dev/null +++ b/bancontrol/inc/newpluginapi.inc @@ -0,0 +1,44 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +PLUGININFO struc + cbSize dd ? + shortName dd ? + version dd ? + description dd ? + author dd ? + authorEmail dd ? + copyright dd ? + homepage dd ? + isTransient dd ? + replacesDefaultModule dd ? +PLUGININFO ends + +PLUGINLINK struc + lpCreateHookableEvent dd ? ;(const char *); + lpDestroyHookableEvent dd ? ;(HANDLE); + lpNotifyEventHooks dd ? ;(HANDLE,WPARAM,LPARAM); + lpHookEvent dd ? ;(const char *,MIRANDAHOOK); + lpHookEventMessage dd ? ;(const char *,HWND,UINT); + lpUnhookEvent dd ? ;(HANDLE); + lpCreateServiceFunction dd ? ;(const char *,MIRANDASERVICE) + lpCreateTransientServiceFunction dd ? ;(const char *,MIRANDASERVICE) + lpDestroyServiceFunction dd ? ;(HANDLE) + lpCallService dd ? ;(const char *,WPARAM,LPARAM) + lpServiceExists dd ? ;(const char *); //v0.1.0.1+ + lpCallServiceSync dd ? ;(const char *,WPARAM,LPARAM); //v0.3.3+ + lpCallFunctionAsync dd ? ;(void (__stdcall *)(void *), void *); //v0.3.4+ + lpSetHookDefaultForHookableEvent dd ? ;(HANDLE, MIRANDAHOOK); // v0.3.4 (2004/09/15) +PLUGINLINK ends + diff --git a/bancontrol/inc/statusmodes.inc b/bancontrol/inc/statusmodes.inc new file mode 100644 index 0000000..609084e --- /dev/null +++ b/bancontrol/inc/statusmodes.inc @@ -0,0 +1,26 @@ +;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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +MAX_CONNECT_RETRIES equ 10000 +ID_STATUS_OFFLINE equ 40071 +ID_STATUS_ONLINE equ 40072 +ID_STATUS_AWAY equ 40073 +ID_STATUS_DND equ 40074 +ID_STATUS_NA equ 40075 +ID_STATUS_OCCUPIED equ 40076 +ID_STATUS_FREECHAT equ 40077 +ID_STATUS_INVISIBLE equ 40078 +ID_STATUS_ONTHEPHONE equ 40079 +ID_STATUS_OUTTOLUNCH equ 40080 +ID_STATUS_IDLE equ 40081 ;do not use as a status \ No newline at end of file -- cgit v1.2.3