KIO
kfilemetainfoitem.h
Go to the documentation of this file.00001 /* This file is part of the KDE libraries 00002 00003 Copyright (c) 2001,2002 Carsten Pfeiffer <pfeiffer@kde.org> 00004 2007 Jos van den Oever <jos@vandenoever.info> 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 (LGPL) 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 #ifndef KFILEMETAINFOITEM_H 00022 #define KFILEMETAINFOITEM_H 00023 00024 #include <kio/kio_export.h> 00025 #include <QtCore/QSharedData> 00026 00027 class KFileWritePlugin; 00028 class QVariant; 00029 class PredicateProperties; 00030 00031 class KFileMetaInfoItemPrivate; 00032 class KIO_EXPORT KFileMetaInfoItem { 00033 friend class KFileMetaInfo; 00034 friend class KFileMetaInfoPrivate; 00035 friend class KMetaInfoWriter; 00036 public: 00040 KFileMetaInfoItem(); 00044 KFileMetaInfoItem(const KFileMetaInfoItem& item); 00048 ~KFileMetaInfoItem(); 00052 const KFileMetaInfoItem& operator=(const KFileMetaInfoItem& item); 00056 bool isEditable() const; 00060 bool isRemoved() const; 00064 bool isModified() const; 00068 bool isSkipped() const; 00072 const QVariant& value() const; 00076 bool setValue(const QVariant& value); 00080 bool addValue(const QVariant&); 00084 bool isValid() const; 00088 const PredicateProperties& properties() const; 00093 const QString& name() const; 00100 QString suffix() const; 00107 QString prefix() const; 00108 private: 00109 QSharedDataPointer<KFileMetaInfoItemPrivate> p; 00110 00111 KFileMetaInfoItem(const PredicateProperties& p, 00112 const QVariant& v, KFileWritePlugin* w, bool e); 00113 }; 00114 00115 #endif