![]() |
digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
|
Public Member Functions | |
DragDropModelImplementation ()=default | |
A class providing a sample implementation for a QAbstractItemModel redirecting drag-and-drop support to a handler. | |
virtual Qt::ItemFlags | dragDropFlags (const QModelIndex &index) const |
Call from your flags() method, adding the relevant drag drop flags. | |
Qt::ItemFlags | dragDropFlagsV2 (const QModelIndex &index) const |
This is an alternative approach to dragDropFlags(). | |
AbstractItemDragDropHandler * | dragDropHandler () const |
bool | dropMimeData (const QMimeData *, Qt::DropAction, int, int, const QModelIndex &) |
virtual bool | isDragEnabled (const QModelIndex &index) const |
virtual bool | isDropEnabled (const QModelIndex &index) const |
QMimeData * | mimeData (const QModelIndexList &indexes) const |
QStringList | mimeTypes () const |
void | setDragDropHandler (AbstractItemDragDropHandler *handler) |
Set a drag drop handler. | |
Qt::DropActions | supportedDropActions () const |
Implements the relevant QAbstractItemModel methods for drag and drop. | |
Protected Attributes | |
AbstractItemDragDropHandler * | m_dragDropHandler = nullptr |
|
default |
Include the macro DECLARE_Model_DRAG_DROP_METHODS in your derived QAbstractItemModel class.
|
virtual |
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.
Qt::ItemFlags Digikam::DragDropModelImplementation::dragDropFlagsV2 | ( | const QModelIndex & | index | ) | const |
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.
Qt::DropActions Digikam::DragDropModelImplementation::supportedDropActions | ( | ) | const |
All functionality is redirected to the handler. dropMimeData() always returns false, leaving implementation to the view.