lib Library API Documentation

koPictureCollection.h

00001 /* This file is part of the KDE project
00002    Copyright (C) 1998, 1999 Reginald Stadlbauer <reggie@kde.org>
00003    Copyright (c) 2001 David Faure <faure@kde.org>
00004    Copyright (C) 2002 Nicolas GOUTTE <goutte@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., 59 Temple Place - Suite 330,
00019    Boston, MA 02111-1307, USA.
00020 */
00021 
00022 #ifndef koPictureCollection_h
00023 #define koPictureCollection_h
00024 
00025 #include <qmap.h>
00026 #include <qdom.h>
00027 #include <qvaluelist.h>
00028 
00029 #include "koPicture.h"
00030 
00031 class KURL;
00032 
00033 class KoStore;
00034 
00035 
00040 class KoPictureCollection : public QMap<KoPictureKey, KoPicture>
00041 {
00042 public:
00043     enum Type {
00045         CollectionPicture=0,
00047         CollectionImage,
00049         CollectionClipart
00050     };
00051 
00055     KoPicture findPicture( const KoPictureKey &key ) const;
00056 
00060     KoPicture insertPicture( const KoPictureKey& key, const KoPicture& picture );
00061 
00066     KoPicture insertPicture( const KoPicture& picture );
00067 
00073     KoPicture downloadPicture(const KURL& url);
00074 
00081     KoPicture loadPicture( const QString &fileName );
00082 
00091     bool saveToStore(const Type pictureType, KoStore * store, QValueList<KoPictureKey> keys );
00092 
00100     bool saveToStoreAsKOffice1Dot1(const Type pictureType, KoStore * store, QValueList<KoPictureKey> keys );
00101 
00110     QDomElement saveXML(const Type pictureType, QDomDocument &doc,
00111         QValueList<KoPictureKey> keys );
00112 
00113     void saveXMLAsKOffice1Dot1(QDomDocument &doc, QDomElement& parent, QValueList<KoPictureKey> keys);
00114 
00115     typedef QMap<KoPictureKey, QString> StoreMap;
00123     StoreMap readXML( QDomElement &pixmapsElem );
00124 
00128     void readXML( QDomElement& pixmapsElem, QMap <KoPictureKey, QString>& map );
00129 
00135     void readFromStore( KoStore * store, const StoreMap & storeMap );
00136 
00147     KoPicture findOrLoad(const QString& fileName, const QDateTime& dateTime);
00148 
00149 private:
00153     QString getFileName(const Type pictureType, KoPicture& picture, int& counter);
00154 
00158     QString getFileNameAsKOffice1Dot1(const Type pictureType, KoPicture& picture, int& counter);
00159 
00163     bool saveToStoreInternal(const Type pictureType, KoStore *store,
00164                              QValueList<KoPictureKey>& keys, const bool koffice11);
00165 
00166     class Private;
00167     Private* d;
00168 };
00169 
00170 #endif /* __koPictureCollection_h_- */
KDE Logo
This file is part of the documentation for lib Library Version 1.3.5.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sun Mar 20 14:25:26 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003