AlbumShaper 1.0a3
album.h
Go to the documentation of this file.
1//Added by qt3to4:
2#include <QPixmap>
3//==============================================
4// copyright : (C) 2003-2005 by Will Stokes
5//==============================================
6// This program is free software; you can redistribute it
7// and/or modify it under the terms of the GNU General
8// Public License as published by the Free Software
9// Foundation; either version 2 of the License, or
10// (at your option) any later version.
11//==============================================
12
13#ifndef BACKEND_ALBUM_H
14#define BACKEND_ALBUM_H
15
16//representative image sizes
17#define SMALL 1
18#define MEDIUM 2
19#define LARGE 3
20
21//define loading success values
22#define ALBUM_LOADED 1
23#define ALBUM_READ_ERROR 2
24#define ALBUM_XML_ERROR 3
25#define ALBUM_EXPORTED 1
26#define ALBUM_ERROR_OPEN_FILE 2
27//--------------------
28//forward declarations
29class QString;
30class QPixmap;
31class Subalbum;
33class StatusWidget;
34class QStringList;
35//--------------------
36
37//=====================================
50//=====================================
51
52class Album
53{
54//------------------------------------------------------
55public:
56
58 Album( QString tmpDir, bool createSubalbum = true );
59
61 ~Album();
62
64 void setName(QString val);
65
67 QString getName();
68
70 void setDescription(QString val);
71
73 QString getDescription();
74
76 void setAuthor(QString val);
77
79 QString getAuthor();
80
82 void setRepresentativeImages(QString imageFilename);
83
85 QPixmap* getRepresentativeImage(int size);
86
89
92
94 void appendSubalbum(Subalbum* val);
95
97 void removeSubalbum(Subalbum* val);
98
101
104
106 int getModificationDay();
107
109 int getCreationYear();
110
112 int getCreationMonth();
113
115 int getCreationDay();
116
118 void updateCreationDate();
119
122
124 int importFromDisk(StatusWidget* status, QString fileName, bool disableCheckPhotoMods);
125
127 int exportToDisk(StatusWidget* status, QString dirName, QString themeName);
128
131 int exportToDisk(StatusWidget* status, bool forceSave=false);
132
135 QString exportLocation,
136 QString exportMessage);
137
140 int exportLargeImages(StatusWidget* status, QString exportPath, QString exportMessage);
141
143 bool prevSave();
144
146 bool albumModified();
147
149 void setModified(bool val=true);
150
153
155 QString getSaveLocation();
156
158 int getNumPhotos();
159
161 int getNumSubalbums();
162
164 QString getTheme();
165
167 QString getTmpDir();
168
171
173 QStringList getThumbnailFilenames();
174//------------------------------------------------------
175private:
177 int exportToXML(StatusWidget* status, QString exportPath);
178
181
183 void exportSubalbumImages(StatusWidget* status, bool forceSave);
184
188
191
194
196 void exportThemeResources( QString theme );
197
199 QString name;
200
202 QString description;
203
205 QString author;
206
210
213
216
219
222
225
228
231
234
237
240
243
246
247 //Last directory album was saved to
249
251 QString theme;
252
255
257 QString tmpDir;
258
263//------------------------------------------------------
264};
265
266#endif //BACKEND_ALBUM_H
An album contains Subalbums.
Definition album.h:53
bool modified
Modification status of the album.
Definition album.h:254
int getModificationDay()
Returns the last modified day.
Definition album.cpp:118
QPixmap * largeRepresentativeImage
Definition album.h:209
void exportSubalbumImages(StatusWidget *status, bool forceSave)
Exports subalbum images.
Definition album.cpp:889
QString author
Album Creator.
Definition album.h:205
Subalbum * getFirstSubalbum()
Returns a pointer to the first Subalbum.
Definition album.cpp:135
void updateModificationDate()
Updates the modification date to today's date.
Definition album.cpp:286
void setRepresentativeImages(QString imageFilename)
Sets the representative image.
Definition album.cpp:186
int creationDay
Creation day.
Definition album.h:233
QString description
Longer description of album.
Definition album.h:202
int nextUniqueID
Next Unique ID for new photos.
Definition album.h:262
void appendSubalbum(Subalbum *val)
Appends subalbum to end of linked list.
Definition album.cpp:234
void setAuthor(QString val)
Sets the album author.
Definition album.cpp:177
int getCreationDay()
Returnst he creation day.
Definition album.cpp:122
QString theme
Theme to save album with.
Definition album.h:251
int getModificationYear()
Returns the last modified year.
Definition album.cpp:116
void removeStagnantOrigFiles(StatusWidget *status)
Removes any _orig images for photos which have been recently reverted to their original form (and hen...
Definition album.cpp:1093
~Album()
Frees Subalbums.
Definition album.cpp:84
int importFromDisk(StatusWidget *status, QString fileName, bool disableCheckPhotoMods)
Imports album from XML format, returning int indicates success or not.
Definition album.cpp:295
QString getDescription()
Gets the album description.
Definition album.cpp:125
Album(QString tmpDir, bool createSubalbum=true)
Sets default information and create temporary directory as necessary.
Definition album.cpp:41
int getNextUniquePhotoID()
Returns the next unique photo id.
Definition album.cpp:1420
QString oldSaveLocation
Definition album.h:248
void reorderSubalbumImages(StatusWidget *status)
Checks if images need to be moved and does so if necessary.
Definition album.cpp:1126
QString saveLocation
Directory album saved to.
Definition album.h:245
int getNumSubalbums()
Returns number of subalbums.
Definition album.cpp:144
int exportLargeImages(StatusWidget *status, QString exportPath, QString exportMessage)
Export fullsize images (excludes slideshow and thumbnail images, album and collection iamges,...
Definition album.cpp:726
void exportTopLevelImages()
Exports top level images.
Definition album.cpp:853
void removeSubalbum(Subalbum *val)
Removes a subalbum.
Definition album.cpp:257
int exportToDisk(StatusWidget *status, QString dirName, QString themeName)
Exports album in XML and HTML format, along with resized images.
Definition album.cpp:452
int creationMonth
Creation month.
Definition album.h:230
QString name
Short name for album.
Definition album.h:199
void setName(QString val)
Sets the album name.
Definition album.cpp:159
int numLoadedSubalbums
Number of loaded subalbums.
Definition album.h:239
int exportCompressedWebAlbum(StatusWidget *status, QString exportLocation, QString exportMessage)
Export a compressed web album (excludes full size images and xml data)
Definition album.cpp:616
int exportToXML(StatusWidget *status, QString exportPath)
Exports album to XML.
Definition album.cpp:801
QPixmap * smallRepresentativeImage
Representative images.
Definition album.h:208
void setModified(bool val=true)
Sets the album as modified.
Definition album.cpp:1418
int getModificationMonth()
Returns the last modified month.
Definition album.cpp:117
QString getTmpDir()
Returns the temporary directory for use when modifying and adding new images.
Definition album.cpp:142
int getCreationMonth()
Returns the creation month.
Definition album.cpp:121
bool savedToDisk
Set if album was loaded/has been saved to disk.
Definition album.h:242
Subalbum * lastSubalbum
Pointer to last Subalbum.
Definition album.h:215
int modificationMonth
Last modification month.
Definition album.h:221
void syncSubalbumList(SubalbumPreviewWidget *item)
Syncs subalbum ordering with front end gui ordering.
Definition album.cpp:1369
int getNumPhotos()
Returns the number of photos.
Definition album.cpp:146
QString getTheme()
Returns currently selected theme.
Definition album.cpp:143
void exportThemeResources(QString theme)
Removes previously saved resources, copies over new resources.
Definition album.cpp:1322
QString getAuthor()
Gets the album author.
Definition album.cpp:126
int modificationDay
Last modification day.
Definition album.h:224
void setDescription(QString val)
Sets the album description.
Definition album.cpp:168
void removeStagnantImages()
Removes old stagnant images caused when photos are removed from album or moved from one subalbum to a...
Definition album.cpp:1244
QString getSaveLocation()
Returns the current save location of all images.
Definition album.cpp:141
Subalbum * getLastSubalbum()
Returns a pointer to the last Subalbum.
Definition album.cpp:136
bool prevSave()
Returns true if album previously saved to disk.
Definition album.cpp:138
int numSubalbums
Number of subalbums.
Definition album.h:236
int getCreationYear()
Returns the creation year.
Definition album.cpp:120
int modificationYear
Last modification year.
Definition album.h:218
QStringList getThumbnailFilenames()
Returns a list of the most up to date thumbnail filesnames.
Definition album.cpp:1426
bool albumModified()
Returns true if album has been modified since the last save operation.
Definition album.cpp:139
int creationYear
Creation year.
Definition album.h:227
Subalbum * firstSubalbum
Pointer to first Subalbum.
Definition album.h:212
QString tmpDir
Temporary directory for placing modified or new images before saving takes place.
Definition album.h:257
QString getName()
Gets the album name.
Definition album.cpp:124
void updateCreationDate()
Updates the creation date to today's date.
Definition album.cpp:277
QPixmap * getRepresentativeImage(int size)
Returns the representative image.
Definition album.cpp:128
Displays subalbum icon and name.
A subalbum contains photos.
Definition subalbum.h:49
StatusWidget * status