From ca0c9f82cbf7c8c37acdcbdfdc3fa0c5fc138059 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Fri, 24 May 2019 21:41:17 +0200 Subject: QGraphicsWidget: overload two margins-setters with actual QMarginsF overloads MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace manual memory management with unique_ptr and manual re-implementations of QMarginsF with The Real Thing™. The only noticeable difference should be that the checks for 0 now use qFuzzyCompare() (by way of QMarginsF::isNull() and its operator==). [ChangeLog][QtWidgets][QGraphicsWidget] Added QMarginsF overloads of setContentsMargins() and setWindowFrameMargins(). Change-Id: I6b3bb87015fa52fdde245b7528cca4b8f9ce41e1 Reviewed-by: Mårten Nordheim Reviewed-by: Richard Moe Gustavsen --- src/widgets/graphicsview/qgraphicswidget_p.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/widgets/graphicsview/qgraphicswidget_p.h') diff --git a/src/widgets/graphicsview/qgraphicswidget_p.h b/src/widgets/graphicsview/qgraphicswidget_p.h index 821f8c73f1..5e0fdb693b 100644 --- a/src/widgets/graphicsview/qgraphicswidget_p.h +++ b/src/widgets/graphicsview/qgraphicswidget_p.h @@ -60,6 +60,8 @@ #include #include +#include + QT_REQUIRE_CONFIG(graphicsview); QT_BEGIN_NAMESPACE @@ -78,8 +80,7 @@ public: qreal titleBarHeight(const QStyleOptionTitleBar &options) const; // Margins - enum {Left, Top, Right, Bottom}; - mutable qreal *margins; + mutable std::unique_ptr margins; void ensureMargins() const; void fixFocusChainBeforeReparenting(QGraphicsWidget *newParent, QGraphicsScene *oldScene, QGraphicsScene *newScene = nullptr); @@ -193,7 +194,7 @@ public: void ensureWindowData(); bool setWindowFrameMargins; - mutable qreal *windowFrameMargins; + mutable std::unique_ptr windowFrameMargins; void ensureWindowFrameMargins() const; #ifndef QT_NO_ACTION -- cgit v1.2.3