00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00028 #ifndef KIPI_IMAGEINFO_H
00029 #define KIPI_IMAGEINFO_H
00030
00031
00032
00033 #include <qstring.h>
00034 #include <qdatetime.h>
00035 #include <qmap.h>
00036 #include <qvariant.h>
00037
00038
00039
00040 #include <kurl.h>
00041
00042
00043
00044 #include "libkipi/libkipi_export.h"
00045
00046 namespace KIPI
00047 {
00048 class ImageInfoShared;
00049 enum TimeSpec { FromInfo, ToInfo };
00050
00054 class LIBKIPI_EXPORT ImageInfo
00055 {
00056
00057 public:
00058
00059 QString title() const;
00060 void setTitle( const QString& name );
00061
00062 QString description() const;
00063 void setDescription( const QString& description);
00064
00065 QMap<QString,QVariant> attributes() const;
00066 void clearAttributes();
00067 void addAttributes( const QMap<QString,QVariant>& );
00068
00069 KURL path() const;
00070 QDateTime time( TimeSpec spec = FromInfo ) const;
00071 void setTime( const QDateTime& time, TimeSpec spec = FromInfo );
00072 bool isTimeExact() const;
00073 int size() const;
00074
00075 int angle() const;
00076 void setAngle( int );
00077
00078 QString toString( const QVariant& ) const;
00079
00080 void cloneData( const ImageInfo& other );
00081
00085 ImageInfo( ImageInfoShared* );
00086 ImageInfo( const ImageInfo& );
00087 ~ImageInfo();
00088
00089 private:
00090
00091 ImageInfo() {}
00092 ImageInfo& operator=( const ImageInfo& ) { return *this; }
00093 mutable KIPI::ImageInfoShared* _data;
00094 };
00095 }
00096
00097 #endif
00098