• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdepimlibs-4.8.5 API Reference
  • KDE Home
  • Contact Us
 

KCalCore Library

attendee.h
Go to the documentation of this file.
00001 /*
00002   This file is part of the kcalcore library.
00003 
00004   Copyright (c) 2001-2003 Cornelius Schumacher <schumacher@kde.org>
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 */
00029 #ifndef KCALCORE_ATTENDEE_H
00030 #define KCALCORE_ATTENDEE_H
00031 
00032 #include <QtCore/QMetaType>
00033 
00034 #include "kcalcore_export.h"
00035 #include "customproperties.h"
00036 #include "person.h"
00037 
00038 namespace KCalCore {
00039 
00057 class KCALCORE_EXPORT Attendee : private Person
00058 {
00059   public:
00060     using Person::setEmail;
00061     using Person::email;
00062     using Person::setName;
00063     using Person::name;
00064     using Person::fullName;
00065 
00070     enum PartStat {
00071       NeedsAction,     
00072       Accepted,        
00073       Declined,        
00074       Tentative,       
00075       Delegated,       
00076       Completed,       
00077       InProcess,       
00078       None
00079     };
00080 
00084     enum Role {
00085       ReqParticipant,  
00086       OptParticipant,  
00087       NonParticipant,  
00088       Chair            
00089     };
00090 
00094     typedef QSharedPointer<Attendee> Ptr;
00095 
00099     typedef QVector<Ptr> List;
00100 
00113     Attendee( const QString &name, const QString &email,
00114               bool rsvp = false, PartStat status = None,
00115               Role role = ReqParticipant, const QString &uid = QString() );
00116 
00122     Attendee( const Attendee &attendee );
00123 
00127     ~Attendee();
00128 
00136     void setRole( Role role );
00137 
00143     Role role() const;
00144 
00152     void setUid ( const QString &uid );
00153 
00159     QString uid() const;
00160 
00168     void setStatus( PartStat status );
00169 
00175     PartStat status() const;
00176 
00185     void setRSVP( bool rsvp );
00186 
00192     bool RSVP() const;
00193 
00199     bool operator==( const Attendee &attendee ) const;
00200 
00206     bool operator!=( const Attendee &attendee ) const;
00207 
00214     void setDelegate( const QString &delegate );
00215 
00220     QString delegate() const;
00221 
00228     void setDelegator( const QString &delegator );
00229 
00234     QString delegator() const;
00235 
00241     void setCustomProperty( const QByteArray &xname, const QString &xvalue );
00242 
00246     CustomProperties &customProperties();
00247 
00251     const CustomProperties &customProperties() const;
00252 
00258     Attendee &operator=( const Attendee &attendee );
00259 
00260   private:
00261     //@cond PRIVATE
00262     class Private;
00263     Private *const d;
00264     //@endcond
00265 
00266     friend KCALCORE_EXPORT QDataStream &operator<<( QDataStream &s,
00267                                                     const KCalCore::Attendee::Ptr &attendee );
00268     friend KCALCORE_EXPORT QDataStream &operator>>( QDataStream &s,
00269                                                     KCalCore::Attendee::Ptr &attendee );
00270 };
00271 
00277 KCALCORE_EXPORT QDataStream &operator<<( QDataStream &stream,
00278                                          const KCalCore::Attendee::Ptr &attendee );
00279 
00285 KCALCORE_EXPORT QDataStream &operator>>( QDataStream &stream, KCalCore::Attendee::Ptr &attendee );
00286 }
00287 
00288 //@cond PRIVATE
00289 Q_DECLARE_TYPEINFO( KCalCore::Attendee::Ptr, Q_MOVABLE_TYPE );
00290 Q_DECLARE_METATYPE( KCalCore::Attendee::Ptr )
00291 //@endcond
00292 
00293 #endif
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Thu Aug 2 2012 15:24:11 by doxygen 1.7.5 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KCalCore Library

Skip menu "KCalCore Library"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdepimlibs-4.8.5 API Reference

Skip menu "kdepimlibs-4.8.5 API Reference"
  • akonadi
  •   contact
  •   kmime
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  •   richtextbuilders
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal