27#include <QReadWriteLock>
72 Album* parent()
const;
77 Album* firstChild()
const;
82 Album* lastChild()
const;
101 Album* childAtRow(
int row)
const;
106 AlbumList childAlbums(
bool recursive =
false);
111 QList<int> childAlbumIds(
bool recursive =
false);
147 int globalID()
const;
152 int childCount()
const;
157 int rowFromAlbum()
const;
162 QString title()
const;
180 bool isAncestorOf(
Album*
const album)
const;
186 bool isUsedByLabelsTree()
const;
192 bool isTrashAlbum()
const;
223 void setExtraData(
const void*
const key,
void*
const value);
232 void removeExtraData(
const void*
const key);
241 void* extraData(
const void*
const key)
const;
249 void setUsedByLabelsTree(
bool isUsed);
257 static int globalID(
Type type,
int id);
263 void prepareForDeletion();
291 void setTitle(
const QString& title);
300 void setParent(
Album*
const parent);
309 void insertChild(
Album*
const child);
318 void removeChild(
Album*
const child);
326 Q_DISABLE_COPY(
Album)
330 mutable QReadWriteLock m_cacheLock;
333 bool m_usedByLabelsTree =
false;
340 QMap<const void*, void*> m_extraMap;
342 QList<Album*> m_childCache;
344 Type m_type = PHYSICAL;
346 Album* m_parent =
nullptr;
361 explicit PAlbum(
const QString& title);
364 PAlbum(
int albumRoot,
const QString& label);
367 PAlbum(
int albumRoot,
const QString& parentPath,
const QString& title,
int id);
370 PAlbum(
const QString& parentPath,
int albumRoot);
373 void setCaption(
const QString& caption);
374 void setCategory(
const QString& category);
375 void setDate(
const QDate& date);
377 QString albumRootPath()
const;
378 QString albumRootLabel()
const;
379 int albumRootId()
const;
380 QString caption()
const;
381 QString category()
const;
383 QString albumPath()
const;
384 QString prettyUrl()
const;
385 QString folderPath()
const;
387 QUrl fileUrl()
const;
388 qlonglong iconId()
const;
389 bool isAlbumRoot()
const;
397 static int m_uniqueTrashId;
399 bool m_isAlbumRootAlbum =
false;
401 int m_albumRootId = -1;
404 QString m_parentPath = QLatin1String(
"/");
408 qlonglong m_iconId = 0;
424 TAlbum(
const QString& title,
int id,
bool root =
false);
432 QString tagPath(
bool leadingSlash =
true)
const;
433 QString standardIconName()
const;
435 QString prettyUrl()
const;
436 QString icon()
const;
437 qlonglong iconId()
const;
438 QList<int> tagIDs()
const;
440 bool isInternalTag()
const;
441 bool hasProperty(
const QString& key)
const;
442 QString property(
const QString& key)
const;
443 QMap<QString, QString> properties()
const;
450 qlonglong m_iconId = 0;
472 explicit DAlbum(
const QDate& date,
bool root =
false, Range range = Month);
481 static int m_uniqueID;
483 Range m_range = Month;
497 SAlbum(
const QString& title,
int id,
bool root =
false);
501 QString query()
const;
503 bool isNormalSearch()
const;
504 bool isAdvancedSearch()
const;
505 bool isKeywordSearch()
const;
506 bool isTimelineSearch()
const;
507 bool isHaarSearch()
const;
508 bool isMapSearch()
const;
509 bool isDuplicatesSearch()
const;
516 bool isTemporarySearch()
const;
518 QString displayTitle()
const;
581 Album* current()
const;
592 Album* m_current =
nullptr;
593 Album* m_root =
nullptr;
599Q_DECLARE_METATYPE(QList<Digikam::TAlbum*>)
Definition albummanager.h:63
Abstract base class for all album types.
Definition album.h:57
Type
Definition album.h:61
@ DATE
A date album type.
Definition album.h:64
@ SEARCH
A search album type.
Definition album.h:65
@ TAG
A tag album type.
Definition album.h:63
virtual CoreDbUrl databaseUrl() const =0
Definition coredburl.h:33
~DAlbum() override=default
Range
Definition album.h:465
~PAlbum() override=default
~SAlbum() override=default
~TAlbum() override=default
qulonglong value
Definition itemviewutilities.cpp:585
@ Album
Definition coredbfields.h:48
HaarSearchType
Definition coredbconstants.h:46
Type
Definition coredbconstants.h:34
Definition datefolderview.cpp:34
QList< Album * > AlbumList
Definition album.h:41
PointTransformAffine operator*(const PointTransformAffine &lhs, const PointTransformAffine &rhs)
Definition pointtransformaffine.cpp:76
bool operator==(const SearchTextSettings &a, const SearchTextSettings &b)
Definition searchtextbar.cpp:40
Type
Definition gpsitemcontainer.h:36