From 5a5af904fbe02f84dcc7bc8542ffa2f1ca178c99 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Thu, 12 Jun 2014 20:19:24 +0000 Subject: one more header moved git-svn-id: http://svn.miranda-ng.org/main/trunk@9444 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/!Deprecated/ExternalAPI/m_mucc.h | 189 +++++++++++++++++++++++++++++++ 1 file changed, 189 insertions(+) create mode 100644 plugins/!Deprecated/ExternalAPI/m_mucc.h (limited to 'plugins/!Deprecated') diff --git a/plugins/!Deprecated/ExternalAPI/m_mucc.h b/plugins/!Deprecated/ExternalAPI/m_mucc.h new file mode 100644 index 0000000000..44fc7dd2f1 --- /dev/null +++ b/plugins/!Deprecated/ExternalAPI/m_mucc.h @@ -0,0 +1,189 @@ +/* + +MUCC Group Chat GUI Plugin for Miranda IM +Copyright (C) 2004 Piotr Piastucki + +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_MUCC_INCLUDED +#define M_MUCC_INCLUDED + +#define MUCC_WINDOW_CHATROOM 1 +#define MUCC_WINDOW_CHATLIST 2 + +#define MUCC_WF_BOLD 0x0001 //enable the 'bold' button +#define MUCC_WF_ITALIC 0x0002 //enable the 'italics' button +#define MUCC_WF_UNDERLINE 0x0004 //enable the 'underline' button +#define MUCC_WF_COLOR 0x0008 //enable the 'foreground color' button +#define MUCC_WF_BKGCOLOR 0x0010 //enable the 'background color' button +#define MUCC_WF_TYPNOTIF 0x0020 //enable typing notifications + +typedef struct { + int cbSize; + int iType; //Window type, MUCW_CHATROOM or MUCW_CHATLIST + DWORD dwFlags; //Window look & feel flags + const char *pszModule; //Identifier of the module owning the window + const char *pszModuleName; //Name of the module as displayed to the user + const char *pszID; //Unique identifier of the chat room + const char *pszName; //Name of the chat room + const char *pszUID; //Identifier of the user + const char *pszNick; //Nick name used by the user in the chat room + const char *pszStatusbarText; //Optional text to set in the statusbar +} MUCCWINDOW; + +#define MS_MUCC_NEW_WINDOW "MUCC/NewWindow" + +typedef struct { + const char *pszID; //Unique identifier of the group or the chat room + const char *pszName; //Name of the group or the chat room + const char *pszNick; //Name of the user + const char *pszText; //Text, usage depends on type of event + int iCount; //Number of users in the chat room + DWORD dwFlags; //Item flags +} MUCCQUERYITEM; + +typedef struct { + int cbSize; + int iType; //Query type, one of MUCC_EVENT_QUERY_* values + const char *pszModule; //Name of the module + const char *pszParent; //Parent of groups or the group chat rooms belong to + int iItemsNum; //Number of items pItems iws pointing to + MUCCQUERYITEM *pItems; //Pointer to array of result items + DWORD dwFlags; //Item flags + int iPage; //Number of page in room list + int iLastPage; //1 if the group has any child or there is a next page in room list, 0 otherwise +} MUCCQUERYRESULT; + +#define MS_MUCC_QUERY_RESULT "MUCC/QueryResult" + +/* + * The following fields must be set for all events: + * cbSize - size of the structure + * pszModule - module name + * iType - event type (id) + */ +/* + * Incoming messages + */ +#define MUCC_EVENT_MESSAGE 0x0001 +/* pszID - room ID + * pszUID - user UID (login etc.) + * pszNick - user nick (i.e. the name to be displayed) + * pszText - message + * iFont - font index + * iFontSize - font size + * color - text color + * dwFlags - flags + * time - time + * bIsMe - TRUE if this is an outgoing message, FALSE otherwise + */ +#define MUCC_EVENT_STATUS 0x0002 +/* pszID - room ID + * pszUID - user UID (login etc.) + * pszNick - user nick (i.e. the name to be displayed) + * pszText - unused + * dwData - status + * dwFlags + * bIsMe + */ +#define MUCC_EVENT_INVITATION 0x0003 +/* +*/ +#define MUCC_EVENT_ERROR 0x0004 + +#define MUCC_EVENT_TOPIC 0x0005 +/* pszID + * pszText + */ +#define MUCC_EVENT_ROOM_INFO 0x0006 + +/* + * Incoming & outgoing messages + */ +#define MUCC_EVENT_JOIN 0x0080 +#define MUCC_EVENT_LEAVE 0x0081 +/* + * Outgoing messages + */ +#define MUCC_EVENT_INVITE 0x0102 +#define MUCC_EVENT_START_PRIV 0x0103 +#define MUCC_EVENT_REGISTER_NICK 0x0105 +#define MUCC_EVENT_REMOVE_NICK 0x0106 +#define MUCC_EVENT_REGISTER_ROOM 0x0107 +#define MUCC_EVENT_REMOVE_ROOM 0x0108 +#define MUCC_EVENT_KICK_BAN 0x0109 +#define MUCC_EVENT_SET_USER_ROLE 0x010A +#define MUCC_EVENT_UNBAN 0x010B +/* + * Queries + */ +#define MUCC_EVENT_QUERY_GROUPS 0x0120 +#define MUCC_EVENT_QUERY_ROOMS 0x0121 +#define MUCC_EVENT_QUERY_USER_ROOMS 0x0122 +#define MUCC_EVENT_QUERY_USER_NICKS 0x0123 +#define MUCC_EVENT_QUERY_SEARCH 0x0124 +#define MUCC_EVENT_QUERY_CONTACTS 0x0130 +#define MUCC_EVENT_QUERY_USERS 0x0131 +/* + Event flags +*/ +#define MUCC_EF_FONT_BOLD 0x000100 // Bold font flag (MUCC_EVENT_MESSAGE) +#define MUCC_EF_FONT_ITALIC 0x000200 // Italic font flag (MUCC_EVENT_MESSAGE) +#define MUCC_EF_FONT_UNDERLINE 0x000400 // Underlined font flags (MUCC_EVENT_MESSAGE) +/* +#define MUCC_EF_FONT_NAME 0x000800 +#define MUCC_EF_FONT_SIZE 0x001000 +#define MUCC_EF_FONT_COLOR 0x002000 +*/ +#define MUCC_EF_ROOM_PUBLIC 0x000001 +#define MUCC_EF_ROOM_NICKNAMES 0x000002 +#define MUCC_EF_ROOM_PERMANENT 0x000004 +#define MUCC_EF_ROOM_MEMBERS_ONLY 0x000008 +#define MUCC_EF_ROOM_MODERATED 0x000020 +#define MUCC_EF_ROOM_OFFICIAL 0x000040 +#define MUCC_EF_ROOM_NAME 0x100000 + +#define MUCC_EF_USER_OWNER 0x000001 +#define MUCC_EF_USER_ADMIN 0x000002 +#define MUCC_EF_USER_REGISTERED 0x000004 +#define MUCC_EF_USER_MEMBER 0x000008 +#define MUCC_EF_USER_MODERATOR 0x000010 +#define MUCC_EF_USER_BANNED 0x000020 +#define MUCC_EF_USER_GLOBALOWNER 0x000040 + +typedef struct { + int cbSize; + int iType; // Event type, one of MUCC_EVENT_* values + DWORD dwFlags; // Event flags - MUCC_EF_* + int iFont; // Text font index + int iFontSize; // Text font size + COLORREF color; // Text color + const char *pszModule; // Name of the module + const char *pszID; // Unique identifier of the chat room corresponding to the event, + const char *pszName; // Name of the chat room visible to the user + const char *pszUID; // User identifier, usage depends on type of event + const char *pszNick; // Nick, usage depends on type of event + const char *pszText; // Text, usage depends on type of event + DWORD dwData; // DWORD data e.g. status + BOOL bIsMe; // TRUE if the event is related to the user + time_t time; // Time of the event +} MUCCEVENT; + +#define MS_MUCC_EVENT "MUCC/Event" +#define ME_MUCC_EVENT "MUCC/OutgoingEvent" + +#endif + -- cgit v1.2.3