summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2021-12-03 11:48:08 +0100
committerMarc Mutz <marc.mutz@qt.io>2022-01-09 18:13:57 +0000
commit1451c1532c2a5b65b5cbc586adc0cb8dce5bf27a (patch)
treef5815060e53f0f9cbf6565f80c92905c16233cc5
parentd95f6a6b23e3052c39a32f50d6e604cf17e698e3 (diff)
Un-export the value classes
Value classes should not be exported wholesale, because that makes inline function part of the ABI on Windows debug builds, severely restricting what we can do to them going forward (e.g. removing). De-inline the QPdfSearchResult dtor as a drive-by. Fixes: QTBUG-98885 Pick-to: 6.3 Change-Id: If2a2c7bec2b99df7e33dfc008fd07e6edda5413c Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
-rw-r--r--src/pdf/qpdfdestination.h21
-rw-r--r--src/pdf/qpdfsearchresult.cpp2
-rw-r--r--src/pdf/qpdfsearchresult.h14
-rw-r--r--src/pdf/qpdfselection.h27
4 files changed, 34 insertions, 30 deletions
diff --git a/src/pdf/qpdfdestination.h b/src/pdf/qpdfdestination.h
index efc283ade..e445f0e5a 100644
--- a/src/pdf/qpdfdestination.h
+++ b/src/pdf/qpdfdestination.h
@@ -50,27 +50,28 @@ QT_BEGIN_NAMESPACE
class QPdfDestinationPrivate;
-class Q_PDF_EXPORT QPdfDestination
+class QPdfDestination
{
- Q_GADGET
+ Q_GADGET_EXPORT(Q_PDF_EXPORT)
Q_PROPERTY(bool valid READ isValid)
Q_PROPERTY(int page READ page)
Q_PROPERTY(QPointF location READ location)
Q_PROPERTY(qreal zoom READ zoom)
public:
- ~QPdfDestination();
- QPdfDestination(const QPdfDestination &other);
- QPdfDestination &operator=(const QPdfDestination &other);
+ Q_PDF_EXPORT ~QPdfDestination();
+ Q_PDF_EXPORT QPdfDestination(const QPdfDestination &other);
+ Q_PDF_EXPORT QPdfDestination &operator=(const QPdfDestination &other);
- QPdfDestination(QPdfDestination &&other) noexcept;
+ Q_PDF_EXPORT QPdfDestination(QPdfDestination &&other) noexcept;
QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_MOVE_AND_SWAP(QPdfDestination)
void swap(QPdfDestination &other) noexcept { d.swap(other.d); }
- bool isValid() const;
- int page() const;
- QPointF location() const;
- qreal zoom() const;
+
+ Q_PDF_EXPORT bool isValid() const;
+ Q_PDF_EXPORT int page() const;
+ Q_PDF_EXPORT QPointF location() const;
+ Q_PDF_EXPORT qreal zoom() const;
protected:
QPdfDestination();
diff --git a/src/pdf/qpdfsearchresult.cpp b/src/pdf/qpdfsearchresult.cpp
index 026b06dec..7c096868a 100644
--- a/src/pdf/qpdfsearchresult.cpp
+++ b/src/pdf/qpdfsearchresult.cpp
@@ -56,6 +56,8 @@ QPdfSearchResult::QPdfSearchResult(int page, QList<QRectF> rects,
QPdfSearchResult::QPdfSearchResult(QPdfSearchResultPrivate *d) :
QPdfDestination(static_cast<QPdfDestinationPrivate *>(d)) { }
+QPdfSearchResult::~QPdfSearchResult() = default;
+
QString QPdfSearchResult::contextBefore() const
{
return static_cast<QPdfSearchResultPrivate *>(d.data())->contextBefore;
diff --git a/src/pdf/qpdfsearchresult.h b/src/pdf/qpdfsearchresult.h
index 207c67628..f191b0082 100644
--- a/src/pdf/qpdfsearchresult.h
+++ b/src/pdf/qpdfsearchresult.h
@@ -49,20 +49,20 @@ QT_BEGIN_NAMESPACE
class QPdfSearchResultPrivate;
-class Q_PDF_EXPORT QPdfSearchResult : public QPdfDestination
+class QPdfSearchResult : public QPdfDestination
{
- Q_GADGET
+ Q_GADGET_EXPORT(Q_PDF_EXPORT)
Q_PROPERTY(QString contextBefore READ contextBefore)
Q_PROPERTY(QString contextAfter READ contextAfter)
Q_PROPERTY(QList<QRectF> rectangles READ rectangles)
public:
- QPdfSearchResult();
- ~QPdfSearchResult() {}
+ Q_PDF_EXPORT QPdfSearchResult();
+ Q_PDF_EXPORT ~QPdfSearchResult();
- QString contextBefore() const;
- QString contextAfter() const;
- QList<QRectF> rectangles() const;
+ Q_PDF_EXPORT QString contextBefore() const;
+ Q_PDF_EXPORT QString contextAfter() const;
+ Q_PDF_EXPORT QList<QRectF> rectangles() const;
private:
QPdfSearchResult(int page, QList<QRectF> rects, QString contextBefore, QString contextAfter);
diff --git a/src/pdf/qpdfselection.h b/src/pdf/qpdfselection.h
index 248c1e4e3..dbd9dff46 100644
--- a/src/pdf/qpdfselection.h
+++ b/src/pdf/qpdfselection.h
@@ -51,9 +51,9 @@ QT_BEGIN_NAMESPACE
class QPdfSelectionPrivate;
-class Q_PDF_EXPORT QPdfSelection
+class QPdfSelection
{
- Q_GADGET
+ Q_GADGET_EXPORT(Q_PDF_EXPORT)
Q_PROPERTY(bool valid READ isValid)
Q_PROPERTY(QList<QPolygonF> bounds READ bounds)
Q_PROPERTY(QRectF boundingRectangle READ boundingRectangle)
@@ -62,22 +62,23 @@ class Q_PDF_EXPORT QPdfSelection
Q_PROPERTY(int endIndex READ endIndex)
public:
- ~QPdfSelection();
- QPdfSelection(const QPdfSelection &other);
- QPdfSelection &operator=(const QPdfSelection &other);
+ Q_PDF_EXPORT ~QPdfSelection();
+ Q_PDF_EXPORT QPdfSelection(const QPdfSelection &other);
+ Q_PDF_EXPORT QPdfSelection &operator=(const QPdfSelection &other);
- QPdfSelection(QPdfSelection &&other) noexcept;
+ Q_PDF_EXPORT QPdfSelection(QPdfSelection &&other) noexcept;
QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_MOVE_AND_SWAP(QPdfSelection)
void swap(QPdfSelection &other) noexcept { d.swap(other.d); }
- bool isValid() const;
- QList<QPolygonF> bounds() const;
- QString text() const;
- QRectF boundingRectangle() const;
- int startIndex() const;
- int endIndex() const;
+
+ Q_PDF_EXPORT bool isValid() const;
+ Q_PDF_EXPORT QList<QPolygonF> bounds() const;
+ Q_PDF_EXPORT QString text() const;
+ Q_PDF_EXPORT QRectF boundingRectangle() const;
+ Q_PDF_EXPORT int startIndex() const;
+ Q_PDF_EXPORT int endIndex() const;
#if QT_CONFIG(clipboard)
- void copyToClipboard(QClipboard::Mode mode = QClipboard::Clipboard) const;
+ Q_PDF_EXPORT void copyToClipboard(QClipboard::Mode mode = QClipboard::Clipboard) const;
#endif
private: