diff options
Diffstat (limited to 'src/widgets/doc/snippets')
5 files changed, 22 insertions, 6 deletions
diff --git a/src/widgets/doc/snippets/qlistview-dnd/main.cpp b/src/widgets/doc/snippets/qlistview-dnd/main.cpp index c4a8aebb01..422ce35c6b 100644 --- a/src/widgets/doc/snippets/qlistview-dnd/main.cpp +++ b/src/widgets/doc/snippets/qlistview-dnd/main.cpp @@ -38,7 +38,7 @@ ** ****************************************************************************/ -#include <QtGui> +#include <QtWidgets> #include "mainwindow.h" diff --git a/src/widgets/doc/snippets/qlistview-dnd/mainwindow.cpp b/src/widgets/doc/snippets/qlistview-dnd/mainwindow.cpp index ed06819dd9..3b19295676 100644 --- a/src/widgets/doc/snippets/qlistview-dnd/mainwindow.cpp +++ b/src/widgets/doc/snippets/qlistview-dnd/mainwindow.cpp @@ -38,7 +38,7 @@ ** ****************************************************************************/ -#include <QtGui> +#include <QtWidgets> #include "mainwindow.h" #include "model.h" diff --git a/src/widgets/doc/snippets/qlistview-dnd/model.cpp b/src/widgets/doc/snippets/qlistview-dnd/model.cpp index 6ebeb2eb56..aa12cef3a2 100644 --- a/src/widgets/doc/snippets/qlistview-dnd/model.cpp +++ b/src/widgets/doc/snippets/qlistview-dnd/model.cpp @@ -65,18 +65,31 @@ DragDropListModel::DragDropListModel(const QStringList &strings, } //! [0] -bool DragDropListModel::dropMimeData(const QMimeData *data, +bool DragDropListModel::canDropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) { - if (action == Qt::IgnoreAction) - return true; + Q_UNUSED(action); + Q_UNUSED(row); + Q_UNUSED(parent); if (!data->hasFormat("application/vnd.text.list")) return false; if (column > 0) -//! [0] //! [1] return false; + + return true; +} +//! [0] +//! [1] +bool DragDropListModel::dropMimeData(const QMimeData *data, + Qt::DropAction action, int row, int column, const QModelIndex &parent) +{ + if (!canDropMimeData(data, action, row, column, parent)) + return false; + + if (action == Qt::IgnoreAction) + return true; //! [1] //! [2] diff --git a/src/widgets/doc/snippets/qlistview-dnd/model.h b/src/widgets/doc/snippets/qlistview-dnd/model.h index 9b667ad4a3..9217052971 100644 --- a/src/widgets/doc/snippets/qlistview-dnd/model.h +++ b/src/widgets/doc/snippets/qlistview-dnd/model.h @@ -63,6 +63,8 @@ public: Qt::ItemFlags flags(const QModelIndex &index) const; + bool canDropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent); bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent); QMimeData *mimeData(const QModelIndexList &indexes) const; diff --git a/src/widgets/doc/snippets/qlistview-dnd/qlistview-dnd.pro b/src/widgets/doc/snippets/qlistview-dnd/qlistview-dnd.pro index 71fa273a69..bc2a1f0dce 100644 --- a/src/widgets/doc/snippets/qlistview-dnd/qlistview-dnd.pro +++ b/src/widgets/doc/snippets/qlistview-dnd/qlistview-dnd.pro @@ -3,3 +3,4 @@ SOURCES = main.cpp \ model.cpp HEADERS = mainwindow.h \ model.h +QT += widgets |