23 #include "dndfilesystemlistview.h" 26 #include <QDragEnterEvent> 32 DndFileSystemListView::DndFileSystemListView(QWidget* pParent)
37 void DndFileSystemListView::dragEnterEvent(QDragEnterEvent* pEvent)
39 if (pEvent->mimeData()->hasUrls())
41 pEvent->acceptProposedAction();
45 QListView::dragEnterEvent(pEvent);
49 void DndFileSystemListView::dropEvent(QDropEvent* pEvent)
51 if (pEvent->mimeData()->hasUrls())
53 QList<QUrl> droppedUrls = pEvent->mimeData()->urls();
54 for(
int i = 0; i < droppedUrls.size(); ++i)
56 QString localPath = droppedUrls[i].toLocalFile();
57 QFileInfo fileInfo(localPath);
58 if(!localPath.isEmpty() && fileInfo.exists())
60 emit fileSystemPathDropped(fileInfo.absoluteFilePath());
64 pEvent->acceptProposedAction();
68 QListView::dropEvent(pEvent);