digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
Loading...
Searching...
No Matches
Digikam::ItemCategorizedView Class Reference
+ Inheritance diagram for Digikam::ItemCategorizedView:

Public Slots

void hintAt (const ItemInfo &info)
 Does something to gain attention for info, but not changing current selection.
 
void openAlbum (const QList< Album * > &album)
 
void setCurrentInfo (const ItemInfo &info)
 Set as current item the item identified by the imageinfo.
 
void setCurrentUrl (const QUrl &url)
 Set as current item the item identified by its file url.
 
void setCurrentUrlWhenAvailable (const QUrl &url)
 Set as current item when it becomes available, the item identified by its file url.
 
void setCurrentWhenAvailable (qlonglong imageId)
 Scroll the view to the given item when it becomes available.
 
void setSelectedItemInfos (const QList< ItemInfo > &infos)
 Set selected items.
 
void setSelectedUrls (const QList< QUrl > &urlList)
 Set selected items identified by their file urls.
 
void setThumbnailSize (int size)
 
- Public Slots inherited from Digikam::ItemViewCategorized
void copy () override
 
void cut () override
 
void hideIndexNotification ()
 
void paste () override
 
void showIndexNotification (const QModelIndex &index, const QString &message)
 
- Public Slots inherited from Digikam::DCategorizedView
void reset () override
 

Signals

void currentInfoChanged (const ItemInfo &info)
 
void deselected (const QList< ItemInfo > &nowDeselectedInfos)
 Emitted when items are deselected. There may be other selected infos left. This signal is not emitted when the model is reset; then only selectionCleared is emitted.
 
void imageActivated (const ItemInfo &info)
 Emitted when the given image is activated. Info is never null.
 
void modelChanged ()
 Emitted when a new model is set.
 
void selected (const QList< ItemInfo > &newSelectedInfos)
 Emitted when new items are selected. The parameter includes only the newly selected infos, there may be other already selected infos.
 
- Signals inherited from Digikam::ItemViewCategorized
void itemSelectionChanged ()
 Emitted when any item selection change occurs.
 
void keyPressed (QKeyEvent *e)
 Remember you may want to check if the event is accepted or ignored.
 
void selectionCleared ()
 Emitted when the selection is completely cleared.
 
void signalClicked (const QMouseEvent *e, const QModelIndex &index)
 For overlays: Like the respective parent class signals, but with additional info.
 
void signalEntered (const QMouseEvent *e, const QModelIndex &index)
 
void viewportClicked (const QMouseEvent *e)
 While clicked() is emitted with a valid index, this corresponds to clicking on empty space.
 
void zoomInStep ()
 
void zoomOutStep ()
 

Public Member Functions

 ItemCategorizedView (QWidget *const parent=nullptr)
 
void addOverlay (ItemDelegateOverlay *overlay, ItemDelegate *delegate=nullptr)
 Add and remove an overlay. It will as well be removed automatically when destroyed. Unless you pass a different delegate, the current delegate will be used.
 
void addSelectionOverlay (ItemDelegate *delegate=nullptr)
 
AlbumalbumAt (const QPoint &pos) const
 If the model is categorized by an album, returns the album of the category that contains the position.
 
ItemInfoList allItemInfos () const
 
QList< QUrl > allUrls () const
 
AlbumcurrentAlbum () const
 
ItemInfo currentInfo () const
 
QUrl currentUrl () const
 
QItemSelectionModel * getSelectionModel () const
 
QModelIndex indexForInfo (const ItemInfo &info) const
 
ItemAlbumFilterModelitemAlbumFilterModel () const
 
ItemAlbumModelitemAlbumModel () const
 Returns 0 if the ItemModel is not an ItemAlbumModel.
 
ItemDelegateitemDelegate () const
 
ItemFilterModelitemFilterModel () const
 Returns any ItemFilterMode in chain. May not be sourceModel()
 
ItemModelitemModel () const
 
ImageSortFilterModelitemSortFilterModel () const
 
ItemThumbnailModelitemThumbnailModel () const
 Returns 0 if the ItemModel is not an ItemThumbnailModel.
 
ItemInfo nextInfo (const ItemInfo &info)
 
ItemInfo nextInOrder (const ItemInfo &startingPoint, int nth)
 Returns the n-th info after the given one.
 
ItemInfo previousInfo (const ItemInfo &info)
 
void removeOverlay (ItemDelegateOverlay *overlay)
 
ItemInfoList selectedItemInfos () const
 
ItemInfoList selectedItemInfosCurrentFirst () const
 
void setModels (ItemModel *model, ImageSortFilterModel *filterModel)
 
virtual void setThumbnailSize (const ThumbnailSize &size)
 
ThumbnailSize thumbnailSize () const
 
void toIndex (const QUrl &url)
 Selects the index as current and scrolls to it.
 
- Public Member Functions inherited from Digikam::ItemViewCategorized
 ItemViewCategorized (QWidget *const parent=nullptr)
 
void awayFromSelection ()
 
DItemDelegatedelegate () const
 
void invertSelection ()
 
bool isToolTipEnabled () const
 
int numberOfSelectedIndexes () const
 
void scrollTo (const QModelIndex &index, ScrollHint hint=EnsureVisible) override
 
void scrollToRelaxed (const QModelIndex &index, ScrollHint hint=EnsureVisible)
 Like scrollTo, but only scrolls if the index is not visible, regardless of hint.
 
void setInitialSelectedItem (bool enabled)
 Ensure a initial selected item.
 
void setScrollCurrentToCenter (bool enabled)
 Scroll automatically the current index to center of the view.
 
void setScrollStepGranularity (int factor)
 Determine a step size for scrolling: The larger this number, the smaller and more precise is the scrolling.
 
void setSelectedIndexes (const QList< QModelIndex > &indexes)
 
void setSpacing (int spacing)
 Sets the spacing.
 
void setToolTipEnabled (bool enabled)
 
void setUsePointingHandCursor (bool useCursor)
 Set if the PointingHand Cursor should be shown over the activation area.
 
void toFirstIndex ()
 Selects the index as current and scrolls to it.
 
void toIndex (const QModelIndex &index)
 
void toLastIndex ()
 
void toNextIndex ()
 
void toPreviousIndex ()
 
- Public Member Functions inherited from Digikam::DCategorizedView
 DCategorizedView (QWidget *const parent=nullptr)
 
virtual QModelIndexList categorizedIndexesIn (const QRect &rect) const
 This method will return all indexes whose visual rect intersects rect.
 
virtual QModelIndex categoryAt (const QPoint &point) const
 This method will return the first index of the category in the region of which point is found.
 
DCategoryDrawercategoryDrawer () const
 
virtual QItemSelectionRange categoryRange (const QModelIndex &index) const
 This method returns the range of indexes contained in the category in which index is sorted.
 
virtual QRect categoryVisualRect (const QModelIndex &index) const
 This method will return the visual rect of the header of the category in which index is sorted.
 
QModelIndex indexAt (const QPoint &point) const override
 
void setCategoryDrawer (DCategoryDrawer *categoryDrawer)
 
void setDrawDraggedItems (bool drawDraggedItems)
 Switch on drawing of dragged items.
 
void setGridSize (const QSize &size)
 
void setModel (QAbstractItemModel *model) override
 
QRect visualRect (const QModelIndex &index) const override
 
- Public Member Functions inherited from Digikam::DragDropViewImplementation
virtual void copy ()
 
virtual void cut ()
 
virtual void paste ()
 

Protected Slots

void slotCurrentUrlTimer ()
 
void slotItemInfosAdded ()
 
- Protected Slots inherited from Digikam::ItemViewCategorized
void layoutAboutToBeChanged ()
 
void layoutWasChanged ()
 
void slotActivated (const QModelIndex &index)
 
void slotClicked (const QModelIndex &index)
 
void slotEntered (const QModelIndex &index)
 
virtual void slotSetupChanged ()
 
virtual void slotThemeChanged ()
 
- Protected Slots inherited from Digikam::DCategorizedView
void currentChanged (const QModelIndex &current, const QModelIndex &previous) override
 
void rowsInserted (const QModelIndex &parent, int start, int end) override
 
virtual void rowsInsertedArtifficial (const QModelIndex &parent, int start, int end)
 
virtual void slotLayoutChanged ()
 
void updateGeometries () override
 

Protected Member Functions

virtual void activated (const ItemInfo &info, Qt::KeyboardModifiers modifiers)
 Reimplement these in a subclass.
 
void currentChanged (const QModelIndex &index, const QModelIndex &previous) override
 
AbstractItemDragDropHandlerdragDropHandler () const override
 You need to implement these three methods Returns the drag drop handler.
 
QSortFilterProxyModel * filterModel () const override
 
ItemInfo imageInfo (const QModelIndex &index) const
 
ItemInfoList imageInfos (const QList< QModelIndex > &indexes) const
 
void indexActivated (const QModelIndex &index, Qt::KeyboardModifiers modifiers) override
 
void installDefaultModels ()
 install default ItemAlbumModel and filter model, ready for use
 
QModelIndex nextIndexHint (const QModelIndex &indexToAnchor, const QItemSelectionRange &removed) const override
 Assuming the given indexes would be removed (hypothetically!), return the index to be selected instead, starting from anchor.
 
void selectionChanged (const QItemSelection &, const QItemSelection &) override
 
void setItemDelegate (ItemDelegate *delegate)
 
void showContextMenuOnIndex (QContextMenuEvent *event, const QModelIndex &index) override
 Reimplement these in a subclass.
 
virtual void showContextMenuOnInfo (QContextMenuEvent *event, const ItemInfo &info)
 
void updateGeometries () override
 
- Protected Member Functions inherited from Digikam::ItemViewCategorized
void contextMenuEvent (QContextMenuEvent *event) override
 reimplemented from parent class
 
QModelIndex indexForCategoryAt (const QPoint &pos) const
 Returns an index that is representative for the category at position pos.
 
void keyPressEvent (QKeyEvent *event) override
 
void leaveEvent (QEvent *event) override
 
QModelIndex mapIndexForDragDrop (const QModelIndex &index) const override
 Note: pure virtual dragDropHandler() still open from DragDropViewImplementation.
 
void mouseMoveEvent (QMouseEvent *event) override
 
void mousePressEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
QModelIndex moveCursor (CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override
 
QPixmap pixmapForDrag (const QList< QModelIndex > &indexes) const override
 Creates a pixmap for dragging the given indexes.
 
void reset () override
 
void resizeEvent (QResizeEvent *e) override
 
void rowsAboutToBeRemoved (const QModelIndex &parent, int start, int end) override
 
void rowsInserted (const QModelIndex &parent, int start, int end) override
 
void rowsRemoved (const QModelIndex &parent, int start, int end) override
 
void selectionChanged (const QItemSelection &, const QItemSelection &) override
 
void setItemDelegate (DItemDelegate *delegate)
 
void setToolTip (ItemViewToolTip *tip)
 
virtual void showContextMenu (QContextMenuEvent *event)
 
virtual bool showToolTip (const QModelIndex &index, QStyleOptionViewItem &option, QHelpEvent *e=nullptr)
 Provides default behavior, can reimplement in a subclass.
 
void updateDelegateSizes ()
 
void userInteraction ()
 
bool viewportEvent (QEvent *event) override
 
void wheelEvent (QWheelEvent *event) override
 
- Protected Member Functions inherited from Digikam::DCategorizedView
void dragLeaveEvent (QDragLeaveEvent *event) override
 
void dragMoveEvent (QDragMoveEvent *event) override
 
void dropEvent (QDropEvent *event) override
 
void leaveEvent (QEvent *event) override
 
void mouseMoveEvent (QMouseEvent *event) override
 
void mousePressEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
QModelIndex moveCursor (CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override
 
void paintEvent (QPaintEvent *event) override
 
void resizeEvent (QResizeEvent *event) override
 
void setSelection (const QRect &rect, QItemSelectionModel::SelectionFlags flags) override
 
void startDrag (Qt::DropActions supportedActions) override
 
- Protected Member Functions inherited from Digikam::DragDropViewImplementation
virtual QAbstractItemView * asView ()=0
 This one is implemented by DECLARE_VIEW_DRAG_DROP_METHODS.
 
bool decodeIsCutSelection (const QMimeData *mimeData)
 
void dragEnterEvent (QDragEnterEvent *event)
 Implements the relevant QAbstractItemView methods for drag and drop.
 
void dragMoveEvent (QDragMoveEvent *e)
 
void dropEvent (QDropEvent *e)
 
void encodeIsCutSelection (QMimeData *mime, bool isCutSelection)
 
void startDrag (Qt::DropActions supportedActions)
 

Member Function Documentation

◆ activated()

void Digikam::ItemCategorizedView::activated ( const ItemInfo info,
Qt::KeyboardModifiers  modifiers 
)
protectedvirtual

Reimplemented in Digikam::DigikamItemView.

◆ albumAt()

Album * Digikam::ItemCategorizedView::albumAt ( const QPoint &  pos) const

If this is not applicable, return the current album. May return 0.

◆ dragDropHandler()

AbstractItemDragDropHandler * Digikam::ItemCategorizedView::dragDropHandler ( ) const
overrideprotectedvirtual

◆ filterModel()

QSortFilterProxyModel * Digikam::ItemCategorizedView::filterModel ( ) const
overrideprotectedvirtual

◆ indexActivated()

void Digikam::ItemCategorizedView::indexActivated ( const QModelIndex &  index,
Qt::KeyboardModifiers  modifiers 
)
overrideprotectedvirtual

Reimplemented from Digikam::ItemViewCategorized.

◆ nextIndexHint()

QModelIndex Digikam::ItemCategorizedView::nextIndexHint ( const QModelIndex &  indexToAnchor,
const QItemSelectionRange &  removed 
) const
overrideprotectedvirtual

The default implementation returns the next remaining sibling.

Reimplemented from Digikam::ItemViewCategorized.

◆ nextInOrder()

ItemInfo Digikam::ItemCategorizedView::nextInOrder ( const ItemInfo startingPoint,
int  nth 
)

Specifically, return the previous info for nth = -1 and the next info for n = 1. Returns a null info if either startingPoint or the nth info are not contained in the model.

◆ showContextMenuOnIndex()

void Digikam::ItemCategorizedView::showContextMenuOnIndex ( QContextMenuEvent *  event,
const QModelIndex &  index 
)
overrideprotectedvirtual

Reimplemented from Digikam::ItemViewCategorized.