digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
Loading...
Searching...
No Matches
Digikam::DateAlbumModel Class Reference

A model for date based albums.

+ Inheritance diagram for Digikam::DateAlbumModel:

Public Slots

void setYearMonthMap (const QMap< YearMonth, int > &yearMonthMap)
 
- Public Slots inherited from Digikam::AbstractCountingAlbumModel
void excludeChildrenCount (const QModelIndex &index)
 Displays only the count of the album, without adding child albums' counts.
 
void includeChildrenCount (const QModelIndex &index)
 Displays sum of the count of the album and child albums' counts.
 
void setCountHash (const QHash< int, int > &idCountHash)
 Enable displaying the count.
 
void setShowCount (bool show)
 Call to enable or disable showing the count. Default is false.
 

Public Member Functions

 DateAlbumModel (QObject *const parent=nullptr)
 Constructor.
 
DAlbumdalbumForIndex (const QModelIndex &index) const
 
QModelIndex monthIndexForDate (const QDate &date) const
 Finds an album index based on a date.
 
void setPixmaps (const QPixmap &forYearAlbums, const QPixmap &forMonthAlbums)
 Set pixmaps for the DecorationRole.
 
- Public Member Functions inherited from Digikam::AbstractCountingAlbumModel
 AbstractCountingAlbumModel (Album::Type albumType, Album *const rootAlbum, RootAlbumBehavior rootBehavior=IncludeRootAlbum, QObject *const parent=nullptr)
 Supports displaying a count alongside the album name in DisplayRole.
 
virtual int albumCount (Album *album) const
 Returns the number of included items for this album.
 
bool showCount () const
 
- Public Member Functions inherited from Digikam::AbstractSpecificAlbumModel
 AbstractSpecificAlbumModel (Album::Type albumType, Album *const rootAlbum, RootAlbumBehavior rootBehavior=IncludeRootAlbum, QObject *const parent=nullptr)
 Abstract base class, do not instantiate.
 
- Public Member Functions inherited from Digikam::AbstractAlbumModel
 AbstractAlbumModel (Album::Type albumType, Album *const rootAlbum, RootAlbumBehavior rootBehavior=IncludeRootAlbum, QObject *const parent=nullptr)
 Create an AbstractAlbumModel object for albums with the given type.
 
AlbumalbumForIndex (const QModelIndex &index) const
 Returns the album object associated with the given model index.
 
Album::Type albumType () const
 Returns the Album::Type of the contained albums.
 
int columnCount (const QModelIndex &parent=QModelIndex()) const override
 
QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const override
 
AlbumModelDragDropHandlerdragDropHandler () const
 Returns the drag drop handler, or 0 if none is installed.
 
bool dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override
 
Qt::ItemFlags flags (const QModelIndex &index) const override
 
bool hasChildren (const QModelIndex &parent=QModelIndex()) const override
 
QVariant headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
 
QModelIndex index (int row, int column, const QModelIndex &parent=QModelIndex()) const override
 
QModelIndex indexForAlbum (Album *album) const
 Return the QModelIndex for the given album, or an invalid index if the album is not contained in this model.
 
bool isFaceTagModel () const
 Returns true if the album model a face tag model.
 
QMimeData * mimeData (const QModelIndexList &indexes) const override
 
QStringList mimeTypes () const override
 
QModelIndex parent (const QModelIndex &index) const override
 
AlbumrootAlbum () const
 
RootAlbumBehavior rootAlbumBehavior () const
 Returns the root album behavior set for this model.
 
QModelIndex rootAlbumIndex () const
 Return the index corresponding to the root album.
 
int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
void setDragDropHandler (AlbumModelDragDropHandler *handler)
 Set a drag drop handler.
 
void setDropIndex (const QModelIndex &index)
 Set current index from QDragMoveEvent.
 
Qt::DropActions supportedDropActions () const override
 

Protected Member Functions

AlbumalbumForId (int id) const override
 need to implement in subclass
 
QString albumName (Album *a) const override
 Can reimplement in subclass.
 
QVariant decorationRoleData (Album *a) const override
 For subclassing convenience: A part of the implementation of data()
 
QVariant sortRoleData (Album *a) const override
 For subclassing convenience: A part of the implementation of data()
 
- Protected Member Functions inherited from Digikam::AbstractCountingAlbumModel
void albumCleared (Album *album) override
 Notification when an entry is removed.
 
QVariant albumData (Album *a, int role) const override
 Reimplemented from parent classes.
 
void allAlbumsCleared () override
 Notification when all entries are removed.
 
void setCount (Album *album, int count)
 If you do not use setCountHash, excludeChildrenCount and includeChildrenCount, you can set a count here.
 
void setup ()
 Call this method in children class constructors to init signal/slots connections.
 
- Protected Member Functions inherited from Digikam::AbstractSpecificAlbumModel
QString columnHeader () const override
 For subclassing convenience: A part of the implementation of headerData()
 
void emitDataChangedForChildren (Album *album)
 
virtual void setColumnHeader (const QString &header)
 
void setupThumbnailLoading ()
 You need to call this from your constructor if you intend to load the thumbnail facilities of this class.
 
- Protected Member Functions inherited from Digikam::AbstractAlbumModel
virtual bool filterAlbum (Album *album) const
 Returns true for those and only those albums that shall be contained in this model.
 
virtual QVariant fontRoleData (Album *a) const
 For subclassing convenience: A part of the implementation of data()
 
virtual Qt::ItemFlags itemFlags (Album *album) const
 For subclassing convenience: A part of the implementation of itemFlags()
 
void setEnableDrag (bool enable)
 Switch on drag and drop globally for all items.
 
void setEnableDrop (bool enable)
 
void setFaceTagModel (bool enable)
 

Protected Attributes

QPixmap m_monthPixmap
 
QPixmap m_yearPixmap
 
- Protected Attributes inherited from Digikam::AbstractSpecificAlbumModel
QString m_columnHeader
 

Additional Inherited Members

- Public Types inherited from Digikam::AbstractAlbumModel
enum  AlbumDataRole {
  AlbumTitleRole = Qt::UserRole , AlbumTypeRole = Qt::UserRole + 1 , AlbumPointerRole = Qt::UserRole + 2 , AlbumIdRole = Qt::UserRole + 3 ,
  AlbumGlobalIdRole = Qt::UserRole + 4 , AlbumSortRole = Qt::UserRole + 5
}
 
enum  RootAlbumBehavior { IncludeRootAlbum , IgnoreRootAlbum }
 AbstractAlbumModel is the abstract base class for all models that present Album objects as managed by AlbumManager. More...
 
- Signals inherited from Digikam::AbstractCountingAlbumModel
void signalUpdateAlbumCount (Album *album)
 
- Signals inherited from Digikam::AbstractAlbumModel
void rootAlbumAvailable ()
 This is initialized once after creation, if the root album becomes available, if it was not already available at time of construction.
 
- Static Public Member Functions inherited from Digikam::AbstractAlbumModel
static AlbumretrieveAlbum (const QModelIndex &index)
 Returns the album represented by the index.
 
- Protected Slots inherited from Digikam::AbstractCountingAlbumModel
void slotAlbumMoved (Album *album)
 
- Protected Slots inherited from Digikam::AbstractSpecificAlbumModel
void slotGotThumbnailFromIcon (Album *album, const QPixmap &thumbnail)
 
void slotReloadThumbnails ()
 
void slotThumbnailLost (Album *album)
 
- Protected Slots inherited from Digikam::AbstractAlbumModel
void slotAlbumAboutToBeAdded (Album *album, Album *parent, Album *prev)
 
void slotAlbumAboutToBeDeleted (Album *album)
 
void slotAlbumAdded (Album *)
 
void slotAlbumHasBeenDeleted (Album *album)
 
void slotAlbumIconChanged (Album *album)
 
void slotAlbumRenamed (Album *album)
 
void slotAlbumsCleared ()
 

Constructor & Destructor Documentation

◆ DateAlbumModel()

Digikam::DateAlbumModel::DateAlbumModel ( QObject *const  parent = nullptr)
explicit
Parameters
parentthe parent for Qt's parent child mechanism

Member Function Documentation

◆ albumForId()

Album * Digikam::DateAlbumModel::albumForId ( int  id) const
overrideprotectedvirtual

◆ albumName()

QString Digikam::DateAlbumModel::albumName ( Album a) const
overrideprotectedvirtual

◆ decorationRoleData()

QVariant Digikam::DateAlbumModel::decorationRoleData ( Album a) const
overrideprotectedvirtual

Reimplemented from Digikam::AbstractAlbumModel.

◆ monthIndexForDate()

QModelIndex Digikam::DateAlbumModel::monthIndexForDate ( const QDate &  date) const

The given date is therefore normalized to year-month-form. The day is ignored. This means the returned index always points to a month DAlbum.

Parameters
datethe date to search for (year and month)
Returns
model index corresponding to the album with the given date or an empty index if not found

◆ sortRoleData()

QVariant Digikam::DateAlbumModel::sortRoleData ( Album a) const
overrideprotectedvirtual

Reimplemented from Digikam::AbstractAlbumModel.