KCalCore Library
customproperties.h
Go to the documentation of this file.
00001 /* 00002 This file is part of the kcalcore library. 00003 00004 Copyright (c) 2002,2006,2010 David Jarvie <djarvie@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_CUSTOMPROPERTIES_H 00030 #define KCALCORE_CUSTOMPROPERTIES_H 00031 00032 #include "kcalcore_export.h" 00033 00034 #include <QtCore/QMap> 00035 #include <QtCore/QString> 00036 00037 namespace KCalCore { 00038 00051 class KCALCORE_EXPORT CustomProperties 00052 { 00053 friend KCALCORE_EXPORT QDataStream &operator<<( QDataStream &s, 00054 const KCalCore::CustomProperties &properties ); 00055 friend KCALCORE_EXPORT QDataStream &operator>>( QDataStream &s, 00056 KCalCore::CustomProperties &properties ); 00057 public: 00061 CustomProperties(); 00062 00067 CustomProperties( const CustomProperties &other ); 00068 00072 virtual ~CustomProperties(); 00073 00079 bool operator==( const CustomProperties &properties ) const; 00080 00090 void setCustomProperty( const QByteArray &app, const QByteArray &key, 00091 const QString &value ); 00092 00100 void removeCustomProperty( const QByteArray &app, const QByteArray &key ); 00101 00110 QString customProperty( const QByteArray &app, const QByteArray &key ) const; 00111 00120 static QByteArray customPropertyName( const QByteArray &app, const QByteArray &key ); 00121 00134 void setNonKDECustomProperty( const QByteArray &name, const QString &value, 00135 const QString ¶meters = QString() ); 00136 00143 void removeNonKDECustomProperty( const QByteArray &name ); 00144 00152 QString nonKDECustomProperty( const QByteArray &name ) const; 00153 00162 QString nonKDECustomPropertyParameters( const QByteArray &name ) const; 00163 00170 void setCustomProperties( const QMap<QByteArray, QString> &properties ); 00171 00176 QMap<QByteArray, QString> customProperties() const; 00177 00183 CustomProperties &operator=( const CustomProperties &other ); 00184 00185 protected: 00191 virtual void customPropertyUpdate(); 00192 00198 virtual void customPropertyUpdated(); 00199 00204 virtual void virtual_hook( int id, void *data ); 00205 00206 private: 00207 //@cond PRIVATE 00208 class Private; 00209 Private *const d; 00210 //@endcond 00211 }; 00212 00216 KCALCORE_EXPORT QDataStream &operator<<( QDataStream &stream, 00217 const KCalCore::CustomProperties &properties ); 00218 00222 KCALCORE_EXPORT QDataStream &operator>>( QDataStream &stream, 00223 KCalCore::CustomProperties &properties ); 00224 00225 } 00226 00227 #endif
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Thu May 10 2012 22:16:56 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2012 The KDE developers.
Generated on Thu May 10 2012 22:16:56 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.