digiKam
|
Public Types | |
enum | ItemModelRoles { ItemModelPointerRole = Qt::UserRole , ItemModelInternalId = Qt::UserRole + 1 , ThumbnailRole = Qt::UserRole + 2 , CreationDateRole = Qt::UserRole + 3 , ExtraDataRole = Qt::UserRole + 5 , ExtraDataDuplicateCount = Qt::UserRole + 6 , LTLeftPanelRole = Qt::UserRole + 50 , LTRightPanelRole = Qt::UserRole + 51 , SubclassRoles = Qt::UserRole + 100 , FilterModelRoles = Qt::UserRole + 500 } |
Public Slots | |
void | openAlbum (const QList< Album * > &albums) |
void | preloadAllThumbnails () |
void | preloadThumbnails (const QList< ItemInfo > &) |
void | preloadThumbnails (const QList< QModelIndex > &) |
void | prepareThumbnails (const QList< QModelIndex > &indexesToPrepare) |
void | prepareThumbnails (const QList< QModelIndex > &indexesToPrepare, const ThumbnailSize &thumbSize) |
void | reAddingFinished () |
void | reAddItemInfos (const QList< ItemInfo > &infos, const QList< QVariant > &extraValues) |
void | refresh () |
void | setListOnlyAvailableImages (bool onlyAvailable) |
void | setRecurseAlbums (bool recursiveListing) |
void | setRecurseTags (bool recursiveListing) |
void | setSpecialTagListing (const QString &specialListing) |
Signals | |
void | allRefreshingFinished () |
void | imageChange (const ImageChangeset &, const QItemSelection &) |
void | imageInfosAboutToBeAdded (const QList< ItemInfo > &infos) |
void | imageInfosAboutToBeRemoved (const QList< ItemInfo > &infos) |
void | imageInfosAdded (const QList< ItemInfo > &infos) |
void | imageInfosRemoved (const QList< ItemInfo > &infos) |
void | imageTagChange (const ImageTagChangeset &, const QItemSelection &) |
void | preprocess (const QList< ItemInfo > &infos, const QList< QVariant > &) |
void | processAdded (const QList< ItemInfo > &infos, const QList< QVariant > &) |
void | readyForIncrementalRefresh () |
void | thumbnailAvailable (const QModelIndex &index, int requestedSize) |
void | thumbnailFailed (const QModelIndex &index, int requestedSize) |
Public Member Functions | |
void | addItemInfo (const ItemInfo &info) |
void | addItemInfos (const QList< ItemInfo > &infos) |
void | addItemInfos (const QList< ItemInfo > &infos, const QList< QVariant > &extraValues) |
void | addItemInfosSynchronously (const QList< ItemInfo > &infos) |
void | addItemInfosSynchronously (const QList< ItemInfo > &infos, const QList< QVariant > &extraValues) |
void | addItemInfoSynchronously (const ItemInfo &info) |
void | clearItemInfos () |
QList< Album * > | currentAlbums () const |
QVariant | data (const QModelIndex &index, int role=Qt::DisplayRole) const override |
virtual Qt::ItemFlags | dragDropFlags (const QModelIndex &index) const |
Qt::ItemFlags | dragDropFlagsV2 (const QModelIndex &index) const |
AbstractItemDragDropHandler * | dragDropHandler () const |
bool | dropMimeData (const QMimeData *, Qt::DropAction, int, int, const QModelIndex &) |
void | ensureHasGroupedImages (const ItemInfo &groupLeader) |
void | ensureHasItemInfo (const ItemInfo &info) |
void | ensureHasItemInfos (const QList< ItemInfo > &infos) |
void | ensureHasItemInfos (const QList< ItemInfo > &infos, const QList< QVariant > &extraValues) |
Qt::ItemFlags | flags (const QModelIndex &index) const override |
bool | hasImage (const ItemInfo &info) const |
bool | hasImage (const ItemInfo &info, const QVariant &extraValue) const |
bool | hasImage (qlonglong id) const |
bool | hasImage (qlonglong id, const QVariant &extraValue) const |
bool | hasScheduledRefresh () const |
QVariant | headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override |
qlonglong | imageId (const QModelIndex &index) const |
qlonglong | imageId (int row) const |
QList< qlonglong > | imageIds () const |
QList< qlonglong > | imageIds (const QList< QModelIndex > &indexes) const |
ItemInfo | imageInfo (const QModelIndex &index) const |
ItemInfo | imageInfo (const QString &filePath) const |
ItemInfo | imageInfo (int row) const |
ItemInfo & | imageInfoRef (const QModelIndex &index) const |
ItemInfo & | imageInfoRef (int row) const |
QList< ItemInfo > | imageInfos () const |
QList< ItemInfo > | imageInfos (const QList< QModelIndex > &indexes) const |
QList< ItemInfo > | imageInfos (const QString &filePath) const |
QModelIndex | index (int row, int column=0, const QModelIndex &parent=QModelIndex()) const override |
QList< QModelIndex > | indexesForImageId (qlonglong id) const |
QList< QModelIndex > | indexesForItemInfo (const ItemInfo &info) const |
QList< QModelIndex > | indexesForPath (const QString &filePath) const |
QModelIndex | indexForImageId (qlonglong id) const |
QModelIndex | indexForImageId (qlonglong id, const QVariant &extraValue) const |
QModelIndex | indexForItemInfo (const ItemInfo &info) const |
QModelIndex | indexForItemInfo (const ItemInfo &info, const QVariant &extraValue) const |
QModelIndex | indexForPath (const QString &filePath) const |
virtual bool | isDragEnabled (const QModelIndex &index) const |
virtual bool | isDropEnabled (const QModelIndex &index) const |
bool | isEmpty () const |
bool | isListingOnlyAvailableImages () const |
bool | isRecursingAlbums () const |
bool | isRecursingTags () const |
bool | isRefreshing () const |
ItemAlbumModel (QObject *const parent=nullptr) | |
int | itemCount () const |
bool | keepsFilePathCache () const |
QMimeData * | mimeData (const QModelIndexList &indexes) const |
QStringList | mimeTypes () const |
int | numberOfIndexesForImageId (qlonglong id) const |
int | numberOfIndexesForItemInfo (const ItemInfo &info) const |
void | removeIndex (const QModelIndex &indexes) |
void | removeIndexes (const QList< QModelIndex > &indexes) |
void | removeItemInfo (const ItemInfo &info) |
void | removeItemInfos (const QList< ItemInfo > &infos) |
void | removeItemInfos (const QList< ItemInfo > &infos, const QList< QVariant > &extraValues) |
int | rowCount (const QModelIndex &parent=QModelIndex()) const override |
bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::DisplayRole) override |
void | setDragDropHandler (AbstractItemDragDropHandler *handler) |
void | setEmitDataChanged (bool emitSignal) |
void | setExifRotate (bool rotate) |
void | setItemInfos (const QList< ItemInfo > &infos) |
void | setKeepsFilePathCache (bool keepCache) |
void | setPreloadThumbnails (bool preload) |
void | setPreloadThumbnailSize (const ThumbnailSize &thumbSize) |
If you want to fix a size for preloading, do it here. More... | |
DECLARE_MODEL_DRAG_DROP_METHODS void | setPreprocessor (QObject *const processor) |
void | setSendRemovalSignals (bool send) |
void | setThumbnailLoadThread (ThumbnailLoadThread *const thread) |
void | setThumbnailSize (const ThumbnailSize &thumbSize) |
Set the thumbnail size to use. More... | |
void | setWatchFlags (const DatabaseFields::Set &set) |
Qt::DropActions | supportedDropActions () const |
ThumbnailLoadThread * | thumbnailLoadThread () const |
ThumbnailSize | thumbnailSize () const |
QList< ItemInfo > | uniqueItemInfos () const |
void | unsetPreprocessor (QObject *const processor) |
~ItemAlbumModel () override | |
Static Public Member Functions | |
static qlonglong | retrieveImageId (const QModelIndex &index) |
static ItemInfo | retrieveItemInfo (const QModelIndex &index) |
Protected Slots | |
void | incrementalRefresh () |
void | scheduleIncrementalRefresh () |
void | scheduleRefresh () |
void | slotAlbumAdded (Album *album) |
void | slotAlbumDeleted (Album *album) |
void | slotAlbumRenamed (Album *album) |
void | slotAlbumsCleared () |
void | slotCollectionImageChange (const CollectionImageChangeset &changeset) |
void | slotData (const QList< ItemListerRecord > &records) |
void | slotImageChange (const ImageChangeset &changeset) override |
void | slotImageTagChange (const ImageTagChangeset &changeset) override |
void | slotNextIncrementalRefresh () |
void | slotNextRefresh () |
void | slotResult () |
void | slotSearchChange (const SearchChangeset &changeset) |
void | slotThumbnailLoaded (const LoadingDescription &loadingDescription, const QPixmap &thumb) |
Protected Member Functions | |
void | emitDataChangedForAll () |
void | emitDataChangedForSelection (const QItemSelection &selection) |
void | finishIncrementalRefresh () |
void | finishRefresh () |
bool | hasIncrementalRefreshPending () const |
virtual void | imageInfosAboutToBeRemoved (int, int) |
void | imageInfosCleared () override |
void | requestIncrementalRefresh () |
void | startIncrementalRefresh () |
void | startListJob (const QList< Album * > &albums) |
void | startRefresh () |
Protected Attributes | |
AbstractItemDragDropHandler * | m_dragDropHandler |
|
inherited |
Enumerator | |
---|---|
ItemModelPointerRole | An ItemModel* pointer to this model |
ItemModelInternalId | |
ThumbnailRole | Returns a thumbnail pixmap. May be implemented by subclasses. Returns either a valid pixmap or a null QVariant. |
CreationDateRole | Returns a QDateTime with the creation date |
ExtraDataRole | Return (optional) extraData field |
ExtraDataDuplicateCount | Returns the number of duplicate indexes for the same image id |
LTLeftPanelRole | Roles which are defined here but not implemented by ItemModel Returns position of item in Left Light Table preview. |
LTRightPanelRole | Returns position of item in Right Light Table preview. |
SubclassRoles | For use by subclasses |
FilterModelRoles | For use by filter models |
|
explicit |
References Digikam::CoreDbAccess::databaseWatch(), incrementalRefresh(), Digikam::AlbumManager::instance(), Digikam::ItemModel::readyForIncrementalRefresh(), setListOnlyAvailableImages(), slotAlbumAdded(), slotAlbumDeleted(), slotAlbumRenamed(), slotAlbumsCleared(), slotCollectionImageChange(), slotNextIncrementalRefresh(), slotNextRefresh(), and slotSearchChange().
|
override |
|
inherited |
Main entry point for subclasses adding image infos to the model. If you list entries not unique per image id, you must add an extraValue so that every entry is unique by imageId and extraValues. Please note that these methods do not prevent addition of duplicate entries.
References Digikam::ItemModel::addItemInfos().
|
inherited |
References Digikam::ItemModel::addItemInfos().
Referenced by Digikam::ItemModel::addItemInfoSynchronously().
|
inherited |
References Digikam::ItemModel::processAdded().
|
inherited |
addItemInfo() is asynchronous if a prepocessor is set. This method first adds the info, synchronously. Only afterwards, the preprocessor will have the opportunity to process it. This method also bypasses any incremental updates. Please note that these methods do not prevent addition of duplicate entries.
References Digikam::ItemModel::addItemInfosSynchronously().
|
signalinherited |
Signals that the model has finished currently with all scheduled refreshing, full or incremental, and all preprocessing. The model is in polished, clean situation right now.
Referenced by Digikam::ItemThumbnailModel::setPreloadThumbnails().
|
inherited |
Clears image infos and resets model.
References Digikam::ItemModel::imageInfosCleared().
Referenced by refresh(), Digikam::ItemModel::setItemInfos(), slotAlbumDeleted(), and slotAlbumsCleared().
|
overrideinherited |
Handles the ThumbnailRole. If the pixmap is available, returns it in the QVariant. If it still needs to be loaded, returns a null QVariant and emits thumbnailAvailable() as soon as it is available.
References Digikam::ItemModel::data(), Digikam::ItemModel::imageInfo(), Digikam::ItemModel::index(), Digikam::ItemInfo::isNull(), Digikam::ItemInfo::thumbnailIdentifier(), and Digikam::ItemModel::ThumbnailRole.
Referenced by startListJob().
|
virtualinherited |
Call from your flags() method, adding the relevant drag drop flags. Default implementation enables both drag and drop on the index if a drag drop handler is set. Reimplement to fine-tune. Note: There is an alternative below.
References Digikam::DragDropModelImplementation::m_dragDropHandler.
Referenced by Digikam::ItemModel::flags(), ShowFoto::ShowfotoItemModel::flags(), and Digikam::ImportItemModel::flags().
|
inherited |
This is an alternative approach to dragDropFlags(). dragDropFlagsV2 calls the virtual methods isDragEnabled() and isDropEnabled() which you then reimplement. Use simple dragDropFlags() if you need not customization, or reimplement dragDropFlags() if you fine-tune it yourself.
References Digikam::DragDropModelImplementation::isDragEnabled(), and Digikam::DragDropModelImplementation::isDropEnabled().
|
inherited |
|
inherited |
|
protectedinherited |
Referenced by slotAlbumDeleted(), and slotAlbumRenamed().
|
protectedinherited |
Referenced by Digikam::ItemModel::slotImageChange(), and Digikam::ItemModel::slotImageTagChange().
|
inherited |
Ensure that all images grouped on the given leader are contained in the model.
References Digikam::ItemModel::ensureHasItemInfos(), and Digikam::ItemInfo::groupedImages().
Referenced by Digikam::DigikamItemView::groupIndicatorClicked().
|
inherited |
Add the given entries. Method returns immediately, the addition may happen later asynchronously. These methods prevent the addition of duplicate entries.
References Digikam::ItemModel::ensureHasItemInfos().
Referenced by Digikam::ItemModel::ensureHasGroupedImages(), and Digikam::ItemModel::ensureHasItemInfo().
|
inherited |
|
protectedinherited |
Referenced by slotResult().
|
protectedinherited |
Referenced by slotResult().
|
overrideinherited |
|
inherited |
References Digikam::ItemInfo::id().
|
inherited |
References Digikam::ItemModel::hasImage(), and Digikam::ItemInfo::id().
|
inherited |
|
inherited |
References Digikam::ItemModel::hasImage().
|
protectedinherited |
Referenced by hasScheduledRefresh().
bool Digikam::ItemAlbumModel::hasScheduledRefresh | ( | ) | const |
References Digikam::ItemModel::hasIncrementalRefreshPending().
Referenced by scheduleIncrementalRefresh(), and slotImageChange().
|
overrideinherited |
|
signalinherited |
If an ImageChangeset affected indexes of this model with changes as set in watchFlags(), this signal contains the changeset and the affected indexes.
Referenced by Digikam::ItemModel::slotImageChange().
|
inherited |
|
inherited |
|
inherited |
|
inherited |
References Digikam::ItemModel::imageId(), and Digikam::ItemModel::index().
|
inherited |
Returns the ItemInfo object, reference or image id from the underlying data pointed to by the index. If the index is not valid, imageInfo will return a null ItemInfo, imageId will return 0, imageInfoRef must not be called with an invalid index.
References Digikam::ItemModel::index().
Referenced by Digikam::ItemThumbnailModel::data(), Digikam::ItemDragDropHandler::dropEvent(), Digikam::ImageSortFilterModel::imageInfo(), Digikam::ImageSortFilterModel::imageInfos(), Digikam::ItemModel::imageInfos(), Digikam::ImageSortFilterModel::imageInfosSorted(), Digikam::TableViewModel::infoFromItem(), and Digikam::ItemModel::retrieveItemInfo().
|
inherited |
References Digikam::ItemInfo::filePath(), and Digikam::ItemModel::index().
|
inherited |
Returns the ItemInfo object, reference or image id from the underlying data of the given row (parent is the invalid QModelIndex, column is 0). Note that imageInfoRef will crash if index is invalid.
|
inherited |
References Digikam::ItemModel::index().
Referenced by Digikam::ItemThumbnailModel::preloadThumbnails(), and Digikam::ItemThumbnailModel::prepareThumbnails().
|
inherited |
Referenced by Digikam::ItemThumbnailModel::preloadAllThumbnails().
|
inherited |
References Digikam::ItemModel::imageInfo(), and Digikam::ItemModel::index().
Referenced by Digikam::ItemDragDropHandler::createMimeData().
References Digikam::ItemInfo::filePath(), and Digikam::ItemModel::index().
|
signalinherited |
Informs that ItemInfos will be added to the model. This signal is sent before the model data is changed and views are informed.
|
signalinherited |
Informs that ItemInfos will be removed from the model. This signal is sent before the model data is changed and views are informed. Note: You need to explicitly enable sending of this signal. It is not sent in clearItemInfos().
|
inlineprotectedvirtualinherited |
Called before rowsAboutToBeRemoved
Informs that ItemInfos have been added to the model. This signal is sent after the model data is changed and views are informed.
|
overrideprotectedvirtualinherited |
Called when the internal storage is cleared
Reimplemented from Digikam::ItemModel.
Referenced by startListJob().
Informs that ItemInfos have been removed from the model. This signal is sent after the model data is changed and views are informed. * Note: You need to explicitly enable sending of this signal. It is not sent in clearItemInfos().
|
signalinherited |
If an ImageTagChangeset affected indexes of this model, this signal contains the changeset and the affected indexes.
Referenced by Digikam::ItemModel::slotImageTagChange().
|
protectedslot |
References Digikam::ItemModel::startIncrementalRefresh(), and startListJob().
Referenced by ItemAlbumModel().
|
overrideinherited |
Referenced by Digikam::ItemModel::data(), Digikam::ItemThumbnailModel::data(), Digikam::ItemModel::flags(), Digikam::ItemModel::imageId(), Digikam::ItemModel::imageIds(), Digikam::ItemModel::imageInfo(), Digikam::ItemModel::imageInfoRef(), Digikam::ItemModel::imageInfos(), Digikam::ItemModel::indexForImageId(), Digikam::ItemThumbnailModel::preloadThumbnails(), Digikam::ItemThumbnailModel::prepareThumbnails(), Digikam::ItemModel::removeIndex(), Digikam::ItemModel::removeIndexes(), Digikam::ItemModel::removeItemInfos(), Digikam::ItemModel::retrieveImageId(), Digikam::ItemModel::retrieveItemInfo(), Digikam::ItemThumbnailModel::setData(), Digikam::ItemModel::slotImageChange(), Digikam::ItemModel::slotImageTagChange(), and Digikam::ItemThumbnailModel::slotThumbnailLoaded().
|
inherited |
|
inherited |
References Digikam::ItemInfo::id(), and Digikam::ItemModel::indexesForImageId().
|
inherited |
References Digikam::ItemModel::indexesForImageId().
Referenced by Digikam::ItemThumbnailModel::slotThumbnailLoaded().
|
inherited |
References Digikam::ItemModel::index().
Referenced by Digikam::ItemModel::indexForImageId(), Digikam::ItemModel::indexForItemInfo(), Digikam::ItemModel::indexForPath(), Digikam::TableViewModel::infoFromItem(), Digikam::ItemModel::removeItemInfos(), Digikam::ItemModel::slotImageChange(), Digikam::ItemModel::slotImageTagChange(), and Digikam::TableViewModel::toItemModelIndex().
|
inherited |
References Digikam::ItemModel::indexForImageId().
|
inherited |
Return the index for the given ItemInfo or id, if contained in this model.
References Digikam::ItemInfo::id(), and Digikam::ItemModel::indexForImageId().
|
inherited |
References Digikam::ItemInfo::id(), and Digikam::ItemModel::indexForImageId().
|
inherited |
Returns the index or ItemInfo object from the underlying data for the given file path. This is fast if keepsFilePathCache is enabled. The file path is as returned by ItemInfo.filePath(). In case of multiple occurrences of the same file, the simpler variants return any one found first, use the QList methods to retrieve all occurrences.
References Digikam::ItemModel::indexForImageId().
|
virtualinherited |
Referenced by Digikam::DragDropModelImplementation::dragDropFlagsV2().
|
virtualinherited |
Referenced by Digikam::DragDropModelImplementation::dragDropFlagsV2().
|
inherited |
Referenced by Digikam::ItemListModel::slotCollectionImageChange().
bool Digikam::ItemAlbumModel::isListingOnlyAvailableImages | ( | ) | const |
bool Digikam::ItemAlbumModel::isRecursingAlbums | ( | ) | const |
bool Digikam::ItemAlbumModel::isRecursingTags | ( | ) | const |
|
inherited |
Returns true if this model is currently refreshing. For a preprocessor this means that, although the preprocessor may currently have processed all it got, more batches are to be expected.
|
inherited |
Referenced by Digikam::ItemIconView::itemCount().
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Referenced by Digikam::ItemModel::data(), and Digikam::ItemModel::numberOfIndexesForItemInfo().
|
inherited |
References Digikam::ItemInfo::id(), and Digikam::ItemModel::numberOfIndexesForImageId().
Call this method to populate the model with data from the given album. If called with 0, the model will be empty. Opening the same album again is a no-op.
Extra safety, ensure that no null pointers are added
References refresh().
Referenced by Digikam::ItemCategorizedView::openAlbum().
|
slotinherited |
References Digikam::ItemModel::imageInfos(), and Digikam::ItemThumbnailModel::preloadThumbnails().
Referenced by Digikam::ItemThumbnailModel::setPreloadThumbnails().
|
slotinherited |
Preload thumbnail for the given infos resp. indexes. Note: Use setPreloadThumbnails to automatically preload all entries in the model. Note: This only ensures thumbnail generation. It is not guaranteed that pixmaps are stored in the cache. For thumbnails that are expect to be drawn immediately, include them in prepareThumbnails(). Note: Stops preloading of previously added thumbnails.
References Digikam::ItemInfo::thumbnailIdentifier().
Referenced by Digikam::ItemThumbnailModel::preloadAllThumbnails().
|
slotinherited |
|
slotinherited |
Prepare the thumbnail loading for the given indexes
|
slotinherited |
|
signalinherited |
Connect to this signal only if you are the current preprocessor.
Referenced by Digikam::ItemModel::unsetPreprocessor().
|
signalinherited |
Referenced by Digikam::ItemModel::addItemInfosSynchronously().
|
slotinherited |
Referenced by Digikam::ItemModel::unsetPreprocessor().
|
slotinherited |
Referenced by Digikam::ItemModel::unsetPreprocessor().
|
signalinherited |
Signals that the model is right now ready to start an incremental refresh. This is guaranteed only for the scope of emitting this signal.
Referenced by ItemAlbumModel(), and Digikam::ItemModel::requestIncrementalRefresh().
|
slot |
Reloads the current album
References Digikam::ItemModel::clearItemInfos(), startListJob(), and Digikam::ItemModel::startRefresh().
Referenced by openAlbum(), setListOnlyAvailableImages(), setRecurseAlbums(), setRecurseTags(), setSpecialTagListing(), and slotNextRefresh().
|
inherited |
Directly remove the given indexes or infos from the model.
References Digikam::ItemModel::index(), and Digikam::ItemModel::removeIndexes().
|
inherited |
|
inherited |
References Digikam::ItemModel::removeItemInfos().
|
protectedinherited |
As soon as the model is ready to start an incremental refresh, the signal readyForIncrementalRefresh() will be emitted. The signal will be emitted inline if the model is ready right now.
References Digikam::ItemModel::readyForIncrementalRefresh().
Referenced by slotNextIncrementalRefresh().
|
staticinherited |
|
staticinherited |
Retrieves the imageInfo object from the data() method of the given index. The index may be from a QSortFilterProxyModel as long as an ItemModel is at the end.
References Digikam::ItemModel::imageInfo(), Digikam::ItemModel::index(), Digikam::ItemModel::ItemModelInternalId, and Digikam::ItemModel::ItemModelPointerRole.
Referenced by Digikam::GroupIndicatorOverlay::checkIndex(), Digikam::ItemCoordinatesOverlay::checkIndex(), Digikam::ItemFullScreenOverlay::checkIndex(), Digikam::ItemRotateOverlay::checkIndex(), Digikam::ShowHideVersionsOverlay::checkIndex(), Digikam::ActionVersionsOverlay::checkIndex(), Digikam::DigikamItemView::confirmFaces(), Digikam::DigikamItemView::ignoreFaces(), Digikam::ItemHistoryGraphModel::imageInfo(), Digikam::ItemHistoryGraphModel::indexForInfo(), Digikam::ItemDelegate::paint(), Digikam::DigikamItemView::rejectFaces(), Digikam::DigikamItemView::removeFaces(), Digikam::ShowHideVersionsOverlay::slotClicked(), Digikam::ActionVersionsOverlay::slotClicked(), Digikam::DigikamItemView::unknownFaces(), Digikam::ShowHideVersionsOverlay::updateButton(), Digikam::AssignNameOverlay::updateFace(), Digikam::ItemRatingOverlay::updateRating(), and Digikam::TagsLineEditOverlay::updateTag().
|
overrideinherited |
Referenced by Digikam::TableViewModel::TableViewModel().
|
protectedslot |
References hasScheduledRefresh().
Referenced by slotCollectionImageChange(), slotImageChange(), slotImageTagChange(), and slotSearchChange().
|
protectedslot |
|
overrideinherited |
You can override the current thumbnail size by giving an integer value for ThumbnailRole. Set a null QVariant to use the thumbnail size set by setThumbnailSize() again. The index given here is ignored for this purpose.
References Digikam::ItemModel::index(), Digikam::ItemModel::ThumbnailRole, and value.
|
inherited |
Set a drag drop handler.
References Digikam::DragDropModelImplementation::m_dragDropHandler.
Referenced by Digikam::DigikamItemView::DigikamItemView(), and Digikam::ImportIconView::ImportIconView().
|
inherited |
Enable emitting dataChanged() when a thumbnail becomes available. The thumbnailAvailable() signal will be emitted in any case. Default is true.
|
inherited |
Clears and adds the infos.
References Digikam::ItemModel::addItemInfos(), and Digikam::ItemModel::clearItemInfos().
Referenced by Digikam::ImageWindow::loadItemInfos().
|
inherited |
If a cache is kept, lookup by file path is fast, without a cache it is O(n). Default is false.
Referenced by Digikam::ItemThumbnailModel::ItemThumbnailModel().
|
slot |
References refresh().
Referenced by ItemAlbumModel().
|
inherited |
Enable preloading of thumbnails: If preloading is enabled, for every entry in the model a thumbnail generation is started. Default: false.
References Digikam::ItemModel::allRefreshingFinished(), and Digikam::ItemThumbnailModel::preloadAllThumbnails().
Referenced by Digikam::DigikamItemView::DigikamItemView().
|
inherited |
If you want to fix a size for preloading, do it here.
Referenced by Digikam::DigikamItemView::setThumbnailSize().
|
inherited |
Install an object as a preprocessor for ItemInfos added to this model. For every QList of ItemInfos added to addItemInfo, the signal preprocess() will be emitted. The preprocessor may process the items and shall then readd them by calling reAddItemInfos(). It may take some time to process. It shall discard any held infos when the modelReset() signal is sent. It shall call readdFinished() when no reset occurred and all infos on the way have been readded. This means that only after calling this method, you shall make three connections (preprocess -> your slot, your signal -> reAddItemInfos, your signal -> reAddingFinished) and make or already hold a connection modelReset() -> your slot. There is only one preprocessor at a time, a previously set object will be disconnected.
References Digikam::ItemModel::unsetPreprocessor().
Referenced by Digikam::ItemFilterModel::setDirectSourceItemModel().
|
slot |
References refresh().
Referenced by Digikam::ItemIconView::setRecurseAlbums().
|
slot |
References refresh().
Referenced by Digikam::ItemIconView::setRecurseTags().
|
inherited |
Enable sending of imageInfosAboutToBeRemoved and imageInfosRemoved signals. Default: false
|
slot |
References refresh().
Referenced by Digikam::DigikamItemView::setFaceMode().
|
inherited |
Enable thumbnail loading and set the thread that shall be used. The thumbnail size of this thread will be adjusted.
References Digikam::ItemThumbnailModel::slotThumbnailLoaded().
Referenced by Digikam::DigikamItemView::DigikamItemView().
|
inherited |
Set the thumbnail size to use.
|
inherited |
Set a set of database fields to watch. If either of these is changed, dataChanged() will be emitted. Default is no flag (no signal will be emitted).
Referenced by Digikam::ItemCategorizedView::installDefaultModels().
|
protectedslot |
Referenced by ItemAlbumModel().
|
protectedslot |
References Digikam::ItemModel::clearItemInfos(), Digikam::ItemModel::emitDataChangedForAll(), Digikam::Album::TAG, and Digikam::Album::type().
Referenced by ItemAlbumModel().
|
protectedslot |
References Digikam::ItemModel::emitDataChangedForAll().
Referenced by ItemAlbumModel().
|
protectedslot |
References Digikam::ItemModel::clearItemInfos().
Referenced by ItemAlbumModel().
|
protectedslot |
References Digikam::CollectionImageChangeset::Added, Digikam::CollectionImageChangeset::albums(), Digikam::CollectionImageChangeset::containsAlbum(), Digikam::CollectionImageChangeset::Deleted, Digikam::AlbumManager::findPAlbum(), Digikam::ItemModel::hasImage(), Digikam::CollectionImageChangeset::ids(), Digikam::AlbumManager::instance(), Digikam::Album::isAncestorOf(), Digikam::CollectionImageChangeset::operation(), Digikam::Album::PHYSICAL, Digikam::CollectionImageChangeset::Removed, Digikam::CollectionImageChangeset::RemovedAll, and scheduleIncrementalRefresh().
Referenced by ItemAlbumModel().
|
protectedslot |
|
overrideprotectedslot |
QList is designed for multiple selection, for now, only tags are supported for SAlbum it will be a list with one element
References Digikam::ImageChangeset::changes(), Digikam::DatabaseFields::CreationDate, Digikam::ItemModel::hasImage(), hasScheduledRefresh(), Digikam::ImageChangeset::ids(), Digikam::SAlbum::isMapSearch(), Digikam::SAlbum::isNormalSearch(), Digikam::SAlbum::isTimelineSearch(), Digikam::DatabaseFields::ItemPositionsAll, scheduleIncrementalRefresh(), Digikam::Album::SEARCH, Digikam::ItemModel::slotImageChange(), and Digikam::DatabaseFields::Status.
|
overrideprotectedslot |
|
protectedslot |
References Digikam::ItemModel::requestIncrementalRefresh().
Referenced by ItemAlbumModel().
|
protectedslot |
References refresh().
Referenced by ItemAlbumModel().
|
protectedslot |
|
protectedslot |
|
protectedslotinherited |
References Digikam::ThumbnailIdentifier::filePath, Digikam::ThumbnailIdentifier::id, Digikam::ItemModel::index(), Digikam::ItemModel::indexesForImageId(), Digikam::ItemModel::indexesForPath(), Digikam::LoadingDescription::previewParameters, Digikam::LoadingDescription::PreviewParameters::size, Digikam::ItemThumbnailModel::thumbnailAvailable(), Digikam::ItemThumbnailModel::thumbnailFailed(), and Digikam::LoadingDescription::thumbnailIdentifier().
Referenced by Digikam::ItemThumbnailModel::setThumbnailLoadThread().
|
protectedinherited |
Starts an incremental refresh operation. You shall only call this method from a slot connected to readyForIncrementalRefresh(). To initiate an incremental refresh, call requestIncrementalRefresh().
Referenced by incrementalRefresh().
References Digikam::CoreDbUrl::album(), Digikam::CoreDbUrl::albumRootId(), Digikam::ItemThumbnailModel::data(), Digikam::Album::DATE, Digikam::CoreDbUrl::endDate(), Digikam::CoreDbUrl::fromTagIds(), Digikam::ItemThumbnailModel::imageInfosCleared(), Digikam::DBJobsManager::instance(), Digikam::Album::PHYSICAL, Digikam::Album::SEARCH, Digikam::AlbumsDBJobInfo::setAlbum(), Digikam::AlbumsDBJobInfo::setAlbumRootId(), Digikam::DatesDBJobInfo::setEndDate(), Digikam::DBJobInfo::setListAvailableImagesOnly(), Digikam::DBJobInfo::setRecursive(), Digikam::TagsDBJobInfo::setSpecialTag(), Digikam::DatesDBJobInfo::setStartDate(), Digikam::TagsDBJobInfo::setTagsIds(), slotData(), slotResult(), Digikam::DBJobsManager::startAlbumsJobThread(), Digikam::CoreDbUrl::startDate(), Digikam::DBJobsManager::startDatesJobThread(), Digikam::DBJobsManager::startSearchesJobThread(), Digikam::DBJobsManager::startTagsJobThread(), and Digikam::Album::TAG.
Referenced by incrementalRefresh(), and refresh().
|
protectedinherited |
Subclasses that add ItemInfos in batches shall call startRefresh() when they start sending batches and finishRefresh() when they have finished. No incremental refreshes will be started while listing. A clearItemInfos() always stops listing, calling finishRefresh() is then not necessary.
Referenced by refresh().
|
inherited |
Implements the relevant QAbstractItemModel methods for drag and drop. All functionality is redirected to the handler. dropMimeData() always returns false, leaving implementation to the view.
References Digikam::CopyAction, and Digikam::MoveAction.
|
signalinherited |
Referenced by Digikam::ItemThumbnailModel::slotThumbnailLoaded().
|
signalinherited |
Referenced by Digikam::ItemThumbnailModel::slotThumbnailLoaded().
|
inherited |
|
inherited |
References Digikam::ItemInfo::id().
|
inherited |
References Digikam::ItemModel::preprocess(), Digikam::ItemModel::reAddingFinished(), and Digikam::ItemModel::reAddItemInfos().
Referenced by Digikam::ItemModel::setPreprocessor().
|
protectedinherited |