2 icqaccount.h - ICQ Account Class Header
4 Copyright (c) 2002 by Chris TenHarmsel <tenharmsel@staticmethod.net>
5 Copyright (c) 2004 by Richard Smith <kde@metafoo.co.uk>
6 Kopete (c) 2002-2004 by the Kopete developers <kopete-devel@kde.org>
8 *************************************************************************
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
15 *************************************************************************
22 #include "oscaraccount.h"
23 #include "oscarmyselfcontact.h"
25 #include "icqpresence.h"
26 #include "oscartypeclasses.h"
29 namespace Kopete
{ class AwayAction
; class StatusMessage
; }
32 class ICQUserInfoWidget
;
35 class ICQMyselfContact
: public OscarMyselfContact
39 ICQMyselfContact( ICQAccount
*acct
);
40 void userInfoUpdated();
43 void receivedShortInfo( const QString
& );
44 void fetchShortInfo();
48 class ICQAccount
: public OscarAccount
53 ICQAccount( Kopete::Protocol
*parent
, QString accountID
);
54 virtual ~ICQAccount();
56 ICQProtocol
*protocol();
58 // Accessor method for the action menu
59 virtual KActionMenu
* actionMenu();
61 /** Reimplementation from Kopete::Account */
62 void setOnlineStatus( const Kopete::OnlineStatus
&, const Kopete::StatusMessage
&reason
= Kopete::StatusMessage() );
63 void setStatusMessage( const Kopete::StatusMessage
& );
65 void connectWithPassword( const QString
&password
);
67 void setUserProfile( const QString
&profile
);
70 virtual OscarContact
*createNewContact( const QString
&contactId
, Kopete::MetaContact
*parentContact
, const OContact
& ssiItem
);
73 virtual void disconnected( DisconnectReason reason
);
77 ICQ::Presence
presence();
79 void setInvisible( ICQ::Presence::Visibility
);
80 void setPresenceType( ICQ::Presence::Type
, const QString
&awayMessage
= QString::null
);
81 void setPresenceTarget( const ICQ::Presence
&presence
, const QString
&message
= QString::null
);
83 //const unsigned long fullStatus( const unsigned long plainStatus );
86 void slotToggleInvisible();
89 void storeUserInfoDialog();
90 void closeUserInfoDialog();
92 void userReadsStatusMessage( const QString
& contact
);
97 QString mInitialStatusMessage
;
98 ICQUserInfoWidget
* mInfoWidget
;
99 ICQContact
* mInfoContact
;
103 //kate: indent-mode csands;