summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Wicking <[email protected]>2020-08-29 07:11:10 +0200
committerPaul Wicking <[email protected]>2020-09-01 06:13:09 +0200
commit03887ab8a3fb81fb7059ad1d9e3d9cac224e53e7 (patch)
tree8ed186448623ab66cabf13d44832c32d0f36faa3
parente596f15a4576999f91dd18c31a29ac1eaac581d0 (diff)
Doc: Compile droparea snippet
droparea.h has been removed. Remove all code that depends on that header except the one snippet that is still used. Add minimal code to allow the snippet to be compiled. Done-with: Nico Vertriest <[email protected]> Task-number: QTBUG-81486 Change-Id: I58c80d3527c82389ccff97567f4c75c33aec0f5e Reviewed-by: Topi Reiniƶ <[email protected]>
-rw-r--r--src/gui/doc/snippets/droparea/droparea.cpp (renamed from src/gui/doc/snippets/droparea.cpp)95
-rw-r--r--src/gui/doc/snippets/droparea/droparea.pro6
-rw-r--r--src/gui/doc/snippets/snippets.pro1
-rw-r--r--src/gui/kernel/qclipboard.cpp2
4 files changed, 22 insertions, 82 deletions
diff --git a/src/gui/doc/snippets/droparea.cpp b/src/gui/doc/snippets/droparea/droparea.cpp
index c0fdbf96171..b66cf0c0311 100644
--- a/src/gui/doc/snippets/droparea.cpp
+++ b/src/gui/doc/snippets/droparea/droparea.cpp
@@ -47,55 +47,18 @@
** $QT_END_LICENSE$
**
****************************************************************************/
-
-#include <QtGui>
-
-#include "droparea.h"
-
-DropArea::DropArea(QWidget *parent)
- : QLabel(parent)
-{
- setMinimumSize(200, 200);
- setFrameStyle(QFrame::Sunken | QFrame::StyledPanel);
- setAlignment(Qt::AlignCenter);
- setAcceptDrops(true);
- setAutoFillBackground(true);
- clear();
-}
-
-void DropArea::dragEnterEvent(QDragEnterEvent *event)
-{
- setText(tr("<drop content>"));
- setBackgroundRole(QPalette::Highlight);
-
- event->acceptProposedAction();
- emit changed(event->mimeData());
-}
-
-void DropArea::dragMoveEvent(QDragMoveEvent *event)
-{
- event->acceptProposedAction();
-}
-
-void DropArea::dropEvent(QDropEvent *event)
-{
- const QMimeData *mimeData = event->mimeData();
-
- if (mimeData->hasImage()) {
- setPixmap(qvariant_cast<QPixmap>(mimeData->imageData()));
- } else if (mimeData->hasHtml()) {
- setText(mimeData->html());
- setTextFormat(Qt::RichText);
- } else if (mimeData->hasText()) {
- setText(mimeData->text());
- setTextFormat(Qt::PlainText);
- } else {
- setText(tr("Cannot display data"));
- }
-
- setBackgroundRole(QPalette::Dark);
- event->acceptProposedAction();
-}
+#include <QApplication>
+#include <QClipboard>
+#include <QMimeData>
+#include <QWidget>
+
+namespace droparea {
+struct DropArea : public QWidget {
+ void paste();
+ void setPixmap(QPixmap);
+ void setText(QString);
+ void setTextFormat(Qt::TextFormat);
+};
//![0]
void DropArea::paste()
@@ -114,37 +77,7 @@ void DropArea::paste()
} else {
setText(tr("Cannot display data"));
}
-//![0]
-
- emit changed(mimeData);
- setBackgroundRole(QPalette::Dark);
- //event->acceptProposedAction();
}
+//![0]
-void DropArea::dragLeaveEvent(QDragLeaveEvent *event)
-{
- clear();
- event->accept();
-}
-
-void DropArea::clear()
-{
- setText(tr("<drop content>"));
- setBackgroundRole(QPalette::Dark);
-
- emit changed();
-}
-
-QPixmap DropArea::extractPixmap(const QByteArray &data, const QString &format)
-{
- const QList<QByteArray> imageFormats = QImageReader::supportedImageFormats();
- QPixmap pixmap;
-
- for (const QByteArray &imageFormat : imageFormats) {
- if (format.mid(6) == QString(imageFormat)) {
- pixmap.loadFromData(data, imageFormat);
- break;
- }
- }
- return pixmap;
-}
+} // droparea
diff --git a/src/gui/doc/snippets/droparea/droparea.pro b/src/gui/doc/snippets/droparea/droparea.pro
new file mode 100644
index 00000000000..33318618e4f
--- /dev/null
+++ b/src/gui/doc/snippets/droparea/droparea.pro
@@ -0,0 +1,6 @@
+TEMPLATE = lib
+TARGET = droparea_snippets
+QT += core gui widgets
+
+SOURCES = \
+ droparea.cpp
diff --git a/src/gui/doc/snippets/snippets.pro b/src/gui/doc/snippets/snippets.pro
index 39ce594c57c..6ede3d94edf 100644
--- a/src/gui/doc/snippets/snippets.pro
+++ b/src/gui/doc/snippets/snippets.pro
@@ -7,6 +7,7 @@ contains(QT_BUILD_PARTS, tests) {
clipboard \
code \
draganddrop \
+ droparea \
qfontdatabase \
textdocument-blocks \
textdocument-charformats \
diff --git a/src/gui/kernel/qclipboard.cpp b/src/gui/kernel/qclipboard.cpp
index d51c356970d..5e93fe80615 100644
--- a/src/gui/kernel/qclipboard.cpp
+++ b/src/gui/kernel/qclipboard.cpp
@@ -83,7 +83,7 @@ QT_BEGIN_NAMESPACE
A typical example of the use of these functions follows:
- \snippet droparea.cpp 0
+ \snippet droparea/droparea.cpp 0
\section1 Notes for X11 Users