23 #include "dndfilesystemlistview.h" 26 #include <QDragEnterEvent> 32 DndFileSystemListView::DndFileSystemListView(QWidget *pParent)
37 void DndFileSystemListView::dragEnterEvent(QDragEnterEvent *pEvent)
39 if (pEvent->mimeData()->hasUrls())
40 pEvent->acceptProposedAction();
42 QListView::dragEnterEvent(pEvent);
45 void DndFileSystemListView::dropEvent(QDropEvent *pEvent)
47 if (pEvent->mimeData()->hasUrls())
49 QList<QUrl> droppedUrls = pEvent->mimeData()->urls();
50 for (
const auto &droppedUrl : droppedUrls)
52 QString localPath = droppedUrl.toLocalFile();
53 QFileInfo fileInfo(localPath);
54 if (!localPath.isEmpty() && fileInfo.exists())
55 emit fileSystemPathDropped(fileInfo.absoluteFilePath());
58 pEvent->acceptProposedAction();
61 QListView::dropEvent(pEvent);