diff options
author | Eike Ziller <eike.ziller@digia.com> | 2014-09-08 12:26:12 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@digia.com> | 2014-09-11 17:54:02 +0200 |
commit | f9aa95ce173489e374c2a36b567c7d459eff2e98 (patch) | |
tree | 848d4a5b5f11b5b556598b84cb1461bdb355025f /src/plugins | |
parent | 686bce166389120afa0db28c7059906e36c8c9dd (diff) | |
download | qt-creator-f9aa95ce173489e374c2a36b567c7d459eff2e98.tar.gz |
Editors: Support dragging from file system view to splits
Change-Id: I17d08fa3cf018f036f88f6be027e4c3740e90f74
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/projectexplorer/foldernavigationwidget.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/plugins/projectexplorer/foldernavigationwidget.cpp b/src/plugins/projectexplorer/foldernavigationwidget.cpp index a68a83b963..ced1e17cc6 100644 --- a/src/plugins/projectexplorer/foldernavigationwidget.cpp +++ b/src/plugins/projectexplorer/foldernavigationwidget.cpp @@ -75,6 +75,7 @@ public: explicit DotRemovalFilter(QObject *parent = 0); protected: virtual bool filterAcceptsRow(int source_row, const QModelIndex &parent) const; + Qt::DropActions supportedDragActions() const; }; DotRemovalFilter::DotRemovalFilter(QObject *parent) : QSortFilterProxyModel(parent) @@ -90,12 +91,18 @@ bool DotRemovalFilter::filterAcceptsRow(int source_row, const QModelIndex &paren return fileName != QLatin1String("."); } +Qt::DropActions DotRemovalFilter::supportedDragActions() const +{ + return sourceModel()->supportedDragActions(); +} + // FolderNavigationModel: Shows path as tooltip. class FolderNavigationModel : public QFileSystemModel { public: explicit FolderNavigationModel(QObject *parent = 0); QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; + Qt::DropActions supportedDragActions() const; }; FolderNavigationModel::FolderNavigationModel(QObject *parent) : @@ -111,6 +118,11 @@ QVariant FolderNavigationModel::data(const QModelIndex &index, int role) const return QFileSystemModel::data(index, role); } +Qt::DropActions FolderNavigationModel::supportedDragActions() const +{ + return Qt::MoveAction; +} + /*! \class FolderNavigationWidget @@ -141,6 +153,8 @@ FolderNavigationWidget::FolderNavigationWidget(QWidget *parent) m_listView->setModel(m_filterModel); m_listView->setFrameStyle(QFrame::NoFrame); m_listView->setAttribute(Qt::WA_MacShowFocusRect, false); + m_listView->setDragEnabled(true); + m_listView->setDragDropMode(QAbstractItemView::DragOnly); setFocusProxy(m_listView); QVBoxLayout *layout = new QVBoxLayout(); |