From 37eb139a38ce45b41ee219d92dce40bb8d0c85df Mon Sep 17 00:00:00 2001 From: Anton Kudryavtsev Date: Wed, 12 Oct 2016 10:34:03 +0300 Subject: QQuickItemGrabResult: mark saveToFile() as const This method does not modify the object. Can't change the API, so overload and mark the old function for removal in Qt 6. Change-Id: I435af6785b765efb68037dd3fcdc9cbf56aec6da Reviewed-by: Lars Knoll Reviewed-by: Gunnar Sletta --- src/quick/items/qquickitemgrabresult.cpp | 17 +++++++++++++++-- src/quick/items/qquickitemgrabresult.h | 5 ++++- 2 files changed, 19 insertions(+), 3 deletions(-) (limited to 'src/quick') diff --git a/src/quick/items/qquickitemgrabresult.cpp b/src/quick/items/qquickitemgrabresult.cpp index 0db5323863..6865ee2654 100644 --- a/src/quick/items/qquickitemgrabresult.cpp +++ b/src/quick/items/qquickitemgrabresult.cpp @@ -180,13 +180,26 @@ QQuickItemGrabResult::QQuickItemGrabResult(QObject *parent) /*! * Saves the grab result as an image to \a fileName. Returns true * if successful; otherwise returns false. + * + * \note In Qt versions prior to 5.9, this function is marked as non-\c{const}. */ -bool QQuickItemGrabResult::saveToFile(const QString &fileName) +bool QQuickItemGrabResult::saveToFile(const QString &fileName) const { - Q_D(QQuickItemGrabResult); + Q_D(const QQuickItemGrabResult); return d->image.save(fileName); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +/*! + * \overload + * \internal + */ +bool QQuickItemGrabResult::saveToFile(const QString &fileName) +{ + return qAsConst(*this).saveToFile(fileName); +} +#endif // < Qt 6 + QUrl QQuickItemGrabResult::url() const { Q_D(const QQuickItemGrabResult); diff --git a/src/quick/items/qquickitemgrabresult.h b/src/quick/items/qquickitemgrabresult.h index 371bee52bc..30f8f0c2ef 100644 --- a/src/quick/items/qquickitemgrabresult.h +++ b/src/quick/items/qquickitemgrabresult.h @@ -64,7 +64,10 @@ public: QImage image() const; QUrl url() const; - Q_INVOKABLE bool saveToFile(const QString &fileName); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + Q_INVOKABLE bool saveToFile(const QString &fileName); // ### Qt 6: remove +#endif + Q_INVOKABLE bool saveToFile(const QString &fileName) const; protected: bool event(QEvent *) override; -- cgit v1.2.3