diff options
Diffstat (limited to 'tests/manual/examples/widgets/draganddrop/puzzle/pieceslist.h')
-rw-r--r-- | tests/manual/examples/widgets/draganddrop/puzzle/pieceslist.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/manual/examples/widgets/draganddrop/puzzle/pieceslist.h b/tests/manual/examples/widgets/draganddrop/puzzle/pieceslist.h new file mode 100644 index 0000000000..4c617e7006 --- /dev/null +++ b/tests/manual/examples/widgets/draganddrop/puzzle/pieceslist.h @@ -0,0 +1,28 @@ +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +#ifndef PIECESLIST_H +#define PIECESLIST_H + +#include <QListWidget> + +class PiecesList : public QListWidget +{ + Q_OBJECT + +public: + explicit PiecesList(int pieceSize, QWidget *parent = nullptr); + void addPiece(const QPixmap &pixmap, const QPoint &location); + + static QString puzzleMimeType() { return QStringLiteral("image/x-puzzle-piece"); } + +protected: + void dragEnterEvent(QDragEnterEvent *event) override; + void dragMoveEvent(QDragMoveEvent *event) override; + void dropEvent(QDropEvent *event) override; + void startDrag(Qt::DropActions supportedActions) override; + + int m_PieceSize; +}; + +#endif // PIECESLIST_H |