Main Page | Alphabetical List | Compound List | File List | Compound Members

albuminfo.h

00001 /* ============================================================
00002  * File  : albuminfo.h
00003  * Author: Renchi Raju <renchi@pooh.tam.uiuc.edu>
00004  * Date  : 2003-01-08
00005  * Description : 
00006  * 
00007  * Copyright 2003 by Renchi Raju
00008 
00009  * This program is free software; you can redistribute it
00010  * and/or modify it under the terms of the GNU General
00011  * Public License as published bythe Free Software Foundation;
00012  * either version 2, or (at your option)
00013  * any later version.
00014  * 
00015  * This program is distributed in the hope that it will be useful,
00016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018  * GNU General Public License for more details.
00019  * 
00020  * ============================================================ */
00021 
00022 #ifndef ALBUMINFO_H
00023 #define ALBUMINFO_H
00024 
00025 #include <qstring.h>
00026 #include <qstringlist.h>
00027 #include <qdatetime.h>
00028 
00029 namespace Digikam
00030 {
00031 
00032 class AlbumManager;
00033 class AlbumXMLEditor;
00034 
00043 class AlbumInfo
00044 {
00045     friend class AlbumManager;
00046     friend class AlbumXMLEditor;
00047     friend class AlbumXMLHandler;
00048     
00049 public:
00050 
00055     AlbumInfo(AlbumManager *parent,
00056               const QString& title);
00057 
00062     ~AlbumInfo();
00063 
00071     void openDB();
00072     
00078     void closeDB();
00079 
00083     QString getTitle() const;
00084 
00088     QString getPath()  const;
00089     
00093     void    setComments(const QString& comments);
00094 
00098     QString getComments() const;
00099 
00103     void    setCollection(const QString& collection);
00104 
00108     QString getCollection() const;
00109 
00113     void    setDate(const QDate& date);
00114 
00118     QDate   getDate() const;
00119 
00130     AlbumInfo* nextAlbum();
00131     
00136     AlbumInfo* prevAlbum();
00137 
00138     
00142     void setItemComments(const QString& name,
00143                          const QString& comments);
00144     
00149     QString getItemComments(const QString& name);
00150 
00154     void deleteItemComments(const QString& name);
00155 
00161     QStringList getAllItems();
00162 
00168     QStringList getSelectedItems();
00169     
00175     QStringList getAllItemsPath();
00176 
00182     QStringList getSelectedItemsPath();
00183 
00188     void    setViewItem(void *viewItem);
00189 
00194     void*   getViewItem();
00195 
00196 private:
00197 
00198     QString          title_;
00199     QString          comments_;
00200     QString          collection_;
00201     QDate            date_;
00202 
00203     void            *viewItem_;
00204     AlbumInfo       *next_;
00205     AlbumInfo       *prev_;
00206     bool             modified_;
00207     bool             hidden_;
00208 
00209     AlbumManager    *parent_;
00210     AlbumXMLEditor  *db_;
00211 };
00212 
00213 }
00214 
00215 #endif /* ALBUMINFO_H */

Generated on Fri Sep 26 16:32:35 2003 for Digikam by doxygen 1.3.2