diff options
Diffstat (limited to 'kopete/protocols/msn/msnprotocol.h')
-rw-r--r-- | kopete/protocols/msn/msnprotocol.h | 188 |
1 files changed, 0 insertions, 188 deletions
diff --git a/kopete/protocols/msn/msnprotocol.h b/kopete/protocols/msn/msnprotocol.h deleted file mode 100644 index 52fb2800..00000000 --- a/kopete/protocols/msn/msnprotocol.h +++ /dev/null @@ -1,188 +0,0 @@ -/* - msnprotocol.h - Kopete MSN Protocol Plugin - - Copyright (c) 2002 by Duncan Mac-Vicar Prett <[email protected]> - Copyright (c) 2002-2003 by Martijn Klingens <[email protected]> - Copyright (c) 2002-2003 by Olivier Goffart <ogoffart @ kde.org> - Copyright (c) 2005 by Michaƫl Larouche <[email protected]> - - Kopete (c) 2002-2003 by the Kopete developers <[email protected]> - - ************************************************************************* - * * - * 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. * - * * - ************************************************************************* -*/ - -#ifndef __msnprotocol_h__ -#define __msnprotocol_h__ - -#include <tqmap.h> -#include <tqstringlist.h> - -#include "kopeteprotocol.h" -#include "kopeteonlinestatus.h" -#include "kopetecontactproperty.h" - -#include "msnsocket.h" - - -class TQImage; - -class TDEAction; -class TDEActionMenu; - -class MSNContact; -class MSNAccount; -class MSNNotifySocket; -class MSNSwitchBoardSocket; -class MSNChatSession; -class MSNInvitation; -namespace Kopete { class ChatSession; } -namespace Kopete { class MetaContact; } -namespace Kopete { class Contact; } -namespace Kopete { class Message; } -namespace Kopete { class Group; } - -/** - * @author duncan - * @author Martijn Klingens <[email protected]> - * @author Olivier Goffart <ogoffart @ kde.org> - */ -class KOPETE_EXPORT MSNProtocol : public Kopete::Protocol -{ - Q_OBJECT - - -public: - MSNProtocol( TQObject *parent, const char *name, const TQStringList &args ); - - /** - * SyncMode indicates whether settings differing between client and - * server should be propagated to keep them in sync. - * SyncToServer - Ignore the server setting when sent. Instead, push - * the local setting to the server. Used when changing - * settings offline. - * SyncFromServer - Update locally stored settings with the value sent - * by the server. Used when connecting to the server if - * no offline changes are pending to force a sync. - * SyncBoth - Changes are updated both ways. This is truly a - * 'first come, first serve' scenario, which breaks if - * the 'old' value is sent by one peer before the other - * end is able to push the new value. An example of this - * is changing the MSN nickname offline - the server can - * only be updated after it has sent the old value to - * the client during connect, destroying the new setting. - * Once connected this is often the most useful setting. - * DontSync - Do not sync values at all. This is used if settings - * are overridden locally, but should not be sent to the - * server, nor should the client update server-pushed - * values. This can be useful for e.g. contact lists. - */ - enum SyncMode - { - DontSync = 0x00, - SyncToServer = 0x01, - SyncFromServer = 0x02, - SyncBoth = 0x03 - }; - - /** - * The possible MSN online statuses - */ - const Kopete::OnlineStatus NLN; //online - const Kopete::OnlineStatus BSY; //busy - const Kopete::OnlineStatus BRB; //be right back - const Kopete::OnlineStatus AWY; //away - const Kopete::OnlineStatus PHN; //on the phone - const Kopete::OnlineStatus LUN; //out to lunch - const Kopete::OnlineStatus FLN; //offline - const Kopete::OnlineStatus HDN; //invisible - const Kopete::OnlineStatus IDL; //idle - const Kopete::OnlineStatus UNK; //inknown (internal) - const Kopete::OnlineStatus CNT; //connecting (internal) - - const Kopete::ContactPropertyTmpl propEmail; - const Kopete::ContactPropertyTmpl propPhoneHome; - const Kopete::ContactPropertyTmpl propPhoneWork; - const Kopete::ContactPropertyTmpl propPhoneMobile; - const Kopete::ContactPropertyTmpl propClient; - const Kopete::ContactPropertyTmpl propGuid; - const Kopete::ContactPropertyTmpl propPersonalMessage; // it's the equivalent of away message. - - enum List - { - FL, // forward - AL, // allow - BL, // blocked - RL, // reverse - PL // pending - }; - - // Enums used to build the Kopete's MSN ClientId. - enum MSNClientInformationFields - { - WindowsMobile = 0x1, - InkFormatGIF = 0x04, - InkFormatISF = 0x08, - SupportWebcam = 0x10, - SupportMultiPacketMessaging = 0x20, - MSNMobileDevice = 0x40, - MSNDirectDevice = 0x80, - WebMessenger = 0x100, - SupportDirectIM = 0x4000, - SupportWinks = 0x8000, - MSNC1 = 0x10000000, - MSNC2 = 0x20000000, - MSNC3 = 0x30000000, - MSNC4 = 0x40000000 - }; - - enum PersonalMessageType - { - PersonalMessageNormal, - PersonalMessageMusic, - PersonalMessageGame, - PersonalMessageOffice - }; - - virtual Kopete::Contact *deserializeContact( Kopete::MetaContact *metaContact, - const TQMap<TQString, TQString> &serializedData, const TQMap<TQString, TQString> &addressBookData ); - - virtual AddContactPage *createAddContactWidget( TQWidget *parent , Kopete::Account *i); - virtual KopeteEditAccountWidget *createEditAccountWidget(Kopete::Account *account, TQWidget *parent); - virtual Kopete::Account *createNewAccount(const TQString &accountId); - - static MSNProtocol* protocol(); - static bool validContactId(const TQString&); - TQImage scalePicture(const TQImage &picture); - -private slots: - void slotSyncContactList(); - -private: - - static MSNProtocol *s_protocol; - -signals: - /** - * A new msn invitation has been arrived. plugins can connect this signal to handle invitations. - * if the invitationID match to their internal id. they can create a new MSNInvitation and pass it via invitation - * - * @param invitation should be set by the plugin to the new invitaiton. plugin should check it is equal to 0L before - * @param bodyMSG is the whole invitation message - * @param cookie is the invitation cookie - * @param msnMM is the message manager - * @param c is the contact - */ - void invitation(MSNInvitation*& invitation, const TQString &bodyMSG , long unsigned int cookie , MSNChatSession* msnMM , MSNContact* c ); -}; - -#endif - -// vim: set noet ts=4 sts=4 sw=4: - |