• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

interfaces

kimiface.h

Go to the documentation of this file.
00001 /*
00002     kimiface.h - KDE Instant Messenger DCOP Interface
00003 
00004     Copyright (c) 2004-5 Will Stephenson   <lists@stevello.free-online.co.uk>
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019     Boston, MA 02110-1301, USA.
00020 */
00021 
00022 #ifndef KIMIFACE_H
00023 #define KIMIFACE_H
00024 
00025 #include <qpixmap.h>
00026 #include <dcopobject.h>
00027 #include <qstringlist.h>
00028 #include <kurl.h>
00029 
00085 class KIMIface : virtual public DCOPObject
00086 {
00087     K_DCOP
00088 
00089 k_dcop:
00090 // ACCESSORS
00091 // contact list
00105     virtual QStringList allContacts() = 0;
00106 
00125     virtual QStringList reachableContacts() = 0;
00126 
00143     virtual QStringList onlineContacts() = 0;
00144 
00168     virtual QStringList fileTransferContacts() = 0;
00169 
00170 // individual
00185     virtual bool isPresent( const QString & uid ) = 0;
00186 
00203     virtual QString displayName( const QString & uid ) = 0;
00204 
00220     virtual QString presenceString( const QString & uid ) = 0;
00221 
00250     virtual int presenceStatus( const QString & uid ) = 0;
00251 
00261     virtual bool canReceiveFiles( const QString & uid ) = 0;
00262 
00279     virtual bool canRespond( const QString & uid ) = 0;
00280 
00296     virtual QString locate( const QString & contactId, const QString & protocol ) = 0;
00297 
00298 // metadata
00315     virtual QPixmap icon( const QString & uid ) = 0;
00316 
00330     virtual QString context( const QString & uid ) = 0;
00331 
00332 // App capabilities
00352     virtual QStringList protocols() = 0;
00353 
00354 // ACTORS
00377     virtual void messageContact( const QString &uid, const QString& message ) = 0;
00378 
00397     virtual void messageNewContact( const QString &contactId, const QString &protocol ) = 0;
00398 
00415     virtual void chatWithContact( const QString &uid ) = 0;
00416 
00441     virtual void sendFile(const QString &uid, const KURL &sourceURL,
00442         const QString &altFileName = QString::null, uint fileSize = 0) = 0;
00443 
00444 // MUTATORS
00445 // Contact list
00463     virtual bool addContact( const QString &contactId, const QString &protocol ) = 0;
00464 
00465 // SIGNALS
00466 k_dcop_signals:
00485     void contactPresenceChanged( QString uid, QCString appId, int presence );
00486 };
00487 
00488 #endif
00489 
00490 
00491 
00492 /*
00493  * Local variables:
00494  * c-indentation-style: k&r
00495  * c-basic-offset: 8
00496  * indent-tabs-mode: t
00497  * End:
00498  */
00499 // vim: set noet ts=4 sts=4 sw=4:
00500 

interfaces

Skip menu "interfaces"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal