diff options
Diffstat (limited to 'tests/manual/examples/widgets/touch/fingerpaint/scribblearea.h')
-rw-r--r-- | tests/manual/examples/widgets/touch/fingerpaint/scribblearea.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/manual/examples/widgets/touch/fingerpaint/scribblearea.h b/tests/manual/examples/widgets/touch/fingerpaint/scribblearea.h new file mode 100644 index 0000000000..624f07074a --- /dev/null +++ b/tests/manual/examples/widgets/touch/fingerpaint/scribblearea.h @@ -0,0 +1,43 @@ +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +#ifndef SCRIBBLEAREA_H +#define SCRIBBLEAREA_H + +#include <QColor> +#include <QImage> +#include <QPoint> +#include <QWidget> + +//! [0] +class ScribbleArea : public QWidget +{ + Q_OBJECT + +public: + ScribbleArea(QWidget *parent = nullptr); + + bool openImage(const QString &fileName); + bool saveImage(const QString &fileName, const char *fileFormat); + + bool isModified() const { return modified; } + +public slots: + void clearImage(); + void print(); + +protected: + void paintEvent(QPaintEvent *event) override; + void resizeEvent(QResizeEvent *event) override; + bool event(QEvent *event) override; + +private: + void resizeImage(QImage *image, const QSize &newSize); + + bool modified; + QList<QColor> myPenColors; + QImage image; +}; +//! [0] + +#endif |