def mimeData(self, indexes): lst = QgsMimeDataUtils.UriList for index in indexes: if index.isValid(): if index.type() == QgsDataItem.Project: mimeData = QMimeData() url = QUrl.fromLocalFile(index.path()) mimeData.setUrls([url]) return mimeData if index.type() == QgsDataItem.Layer: lst.append(QgsMimeDataUtils.Uri(index)) return QgsMimeDataUtils.encodeUriList(lst)
def mimeData(self, indexes): """ Used to serialize data """ if not indexes: return items = [self.itemFromIndex(idx) for idx in indexes] if not items: return if not all(it.data() for it in items): return # reencode items mimedata = QgsMimeDataUtils.encodeUriList([item.data() for item in items]) return mimedata