2
testbedprotocol.h - Kopete Testbed Protocol
4
Copyright (c) 2003 by Will Stephenson <will@stevello.free-online.co.uk>
5
Kopete (c) 2002-2003 by the Kopete developers <kopete-devel@kde.org>
7
*************************************************************************
9
* This library is free software; you can redistribute it and/or *
10
* modify it under the terms of the GNU General Public *
11
* License as published by the Free Software Foundation; either *
12
* version 2 of the License, or (at your option) any later version. *
14
*************************************************************************
17
#ifndef TESTBEDPROTOCOL_H
18
#define TESTBEDPROTOCOL_H
20
#include <kopeteprotocol.h>
26
* Encapsulates the generic actions associated with this protocol
27
* @author Will Stephenson
29
class TestbedProtocol : public Kopete::Protocol
33
TestbedProtocol(QObject *parent, const QVariantList &args);
36
* Convert the serialised data back into a TestbedContact and add this
37
* to its Kopete::MetaContact
39
virtual Kopete::Contact *deserializeContact(
40
Kopete::MetaContact *metaContact,
41
const QMap< QString, QString > & serializedData,
42
const QMap< QString, QString > & addressBookData
45
* Generate the widget needed to add TestbedContacts
47
virtual AddContactPage * createAddContactWidget( QWidget *parent, Kopete::Account *account );
49
* Generate the widget needed to add/edit accounts for this protocol
51
virtual KopeteEditAccountWidget * createEditAccountWidget( Kopete::Account *account, QWidget *parent );
53
* Generate a TestbedAccount
55
virtual Kopete::Account * createNewAccount( const QString &accountId );
57
* Access the instance of this protocol
59
static TestbedProtocol *protocol();
61
* Represents contacts that are Online
63
const Kopete::OnlineStatus testbedOnline;
65
* Represents contacts that are Away
67
const Kopete::OnlineStatus testbedAway;
69
* Represents contacts that are Busy
71
const Kopete::OnlineStatus testbedBusy;
73
* Represents contacts that are Offline
75
const Kopete::OnlineStatus testbedOffline;
77
static TestbedProtocol *s_protocol;