Subgroup: Custom
Class: QgsCustomDropHandler¶
-
class
qgis.gui.
QgsCustomDropHandler
¶ Bases:
PyQt5.QtCore.QObject
Abstract base class that may be implemented to handle new types of data to be dropped in QGIS.
Implementations have three approaches they can use to handle drops.
1. The simplest approach is to implement handeFileDrop() when they need to handle dropped files (i.e. with mime type “text/uri-list”).
2. Reimplement handleCustomUriDrop() when they want to handle dropped custom QgsMimeDataUtils.Uri entries, for instance handling dropping custom entries from the browser tree (with mime type “application/x-vnd.qgis.qgis.uri”). In this case the implementation’s customUriProviderKey() must match the uri entry’s providerKey.
3. Reimplement handleMimeData() to directly handle dropped QMimeData. Subclasses should take care when overriding this method. When a drop event occurs, Qt will lock the source application of the drag for the duration of the drop event handling via handleMimeData() (e.g. dragging files from explorer to QGIS will lock the explorer window until the drop handling has been complete). Accordingly handleMimeData() implementations must return quickly and defer any intensive or slow processing.
New in version 3.0: Methods
blockSignals
childEvent
children
connectNotify
customEvent
customUriProviderKey
Type of custom URI recognized by the handler. deleteLater
disconnect
disconnectNotify
dumpObjectInfo
dumpObjectTree
dynamicPropertyNames
event
eventFilter
findChild
findChild(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> QObject findChildren
findChildren(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] handleCustomUriDrop
Called from QGIS after a drop event with custom URI known by the handler. handleFileDrop
Called when the specified file
has been dropped onto QGIS.handleMimeData
Called when the specified mime data
has been dropped onto QGIS.inherits
installEventFilter
isSignalConnected
isWidgetType
isWindowType
killTimer
metaObject
moveToThread
objectName
parent
property
pyqtConfigure
Each keyword argument is either the name of a Qt property or a Qt signal. receivers
removeEventFilter
sender
senderSignalIndex
setObjectName
setParent
setProperty
signalsBlocked
startTimer
thread
timerEvent
tr
Attributes
destroyed
destroyed(self, QObject = None) [signal] objectNameChanged
objectNameChanged(self, str) [signal] staticMetaObject
-
childEvent
()¶
-
connectNotify
()¶
-
customEvent
()¶
-
customUriProviderKey
(self) → str¶ Type of custom URI recognized by the handler. This must match the URI entry’s providerKey in order for handleCustomUriDrop() to be called.
See also
-
disconnectNotify
()¶
-
handleCustomUriDrop
(self, uri: QgsMimeDataUtils.Uri)¶ Called from QGIS after a drop event with custom URI known by the handler.
In order for handleCustomUriDrop() to be called, subclasses must also implement customUriProviderKey() to indicate the providerKey value which the handler accepts.
See also
-
handleFileDrop
(self, file: str) → bool¶ Called when the specified
file
has been dropped onto QGIS. If true is returned, then the handler has accepted this file and it should not be further processed (e.g. by other QgsCustomDropHandlers).The base class implementation does nothing.
This method is not called directly while drop handling is occurring, so the limitations described in handleMimeData() about returning quickly do not apply.
-
handleMimeData
(self, data: QMimeData)¶ Called when the specified mime
data
has been dropped onto QGIS.The base class implementation does nothing.
Subclasses should take care when overriding this method. When a drop event occurs, Qt will lock the source application of the drag for the duration of the drop event handling (e.g. dragging files from explorer to QGIS will lock the explorer window until the drop handling has been complete).
Accordingly, only implementations must be lightweight and return ASAP. (For instance by copying the relevant parts of
data
and then handling the data after a short timeout).
-
isSignalConnected
()¶
-
receivers
()¶
-
sender
()¶
-
senderSignalIndex
()¶
-
timerEvent
()¶
-