1 /* 2 aimcontact.h - Oscar Protocol Plugin 3 4 Copyright (c) 2003 by Will Stephenson 5 Copyright (c) 2004 by Matt Rogers <mattr@kde.org> 6 Copyright (c) 2006 by Roman Jarosz <kedgedev@centrum.cz> 7 8 Kopete (c) 2002-2006 by the Kopete developers <kopete-devel@kde.org> 9 10 ************************************************************************* 11 * * 12 * This program is free software; you can redistribute it and/or modify * 13 * it under the terms of the GNU General Public License as published by * 14 * the Free Software Foundation; either version 2 of the License, or * 15 * (at your option) any later version. * 16 * * 17 ************************************************************************* 18 */ 19 20 #ifndef AIMCONTACT_H 21 #define AIMCONTACT_H 22 23 #include "aimcontactbase.h" 24 25 class ICQProtocol; 26 class KToggleAction; 27 28 class AIMContact : public AIMContactBase 29 { 30 Q_OBJECT 31 32 public: 33 AIMContact( Kopete::Account*, const QString&, Kopete::MetaContact*, 34 const QString& icon = QString() ); 35 virtual ~AIMContact(); 36 37 bool isReachable() Q_DECL_OVERRIDE; 38 39 /** 40 * Returns a set of custom menu items for 41 * the context menu 42 */ 43 QList<QAction*> *customContextMenuActions() Q_DECL_OVERRIDE; 44 using AIMContactBase::customContextMenuActions; 45 46 void setSSIItem( const OContact& ssiItem ) Q_DECL_OVERRIDE; 47 48 public Q_SLOTS: 49 void userInfoUpdated( const QString& contact, const UserDetails& details ) Q_DECL_OVERRIDE; 50 void userOnline( const QString& userId ) Q_DECL_OVERRIDE; 51 void userOffline( const QString& userId ) Q_DECL_OVERRIDE; 52 53 private Q_SLOTS: 54 55 void slotIgnore(); 56 void slotVisibleTo(); 57 void slotInvisibleTo(); 58 59 private: 60 ICQProtocol* mProtocol; 61 62 QAction *m_selectEncoding; 63 64 KToggleAction *m_actionIgnore; 65 KToggleAction *m_actionVisibleTo; 66 KToggleAction *m_actionInvisibleTo; 67 68 }; 69 #endif 70