Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qgraphicslayout.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QGRAPHICSLAYOUT_H
6#define QGRAPHICSLAYOUT_H
7
8#include <QtWidgets/qtwidgetsglobal.h>
9#include <QtWidgets/qgraphicslayoutitem.h>
10
12
13QT_BEGIN_NAMESPACE
14
15class QGraphicsLayoutPrivate;
16class QGraphicsLayoutItem;
17class QGraphicsWidget;
18
19class Q_WIDGETS_EXPORT QGraphicsLayout : public QGraphicsLayoutItem
20{
21public:
22 QGraphicsLayout(QGraphicsLayoutItem *parent = nullptr);
23 ~QGraphicsLayout();
24
25 void setContentsMargins(qreal left, qreal top, qreal right, qreal bottom);
26 void getContentsMargins(qreal *left, qreal *top, qreal *right, qreal *bottom) const override;
27
28 void activate();
29 bool isActivated() const;
30 virtual void invalidate();
31 virtual void updateGeometry() override;
32
33 virtual void widgetEvent(QEvent *e);
34
35 virtual int count() const = 0;
36 virtual QGraphicsLayoutItem *itemAt(int i) const = 0;
37 virtual void removeAt(int index) = 0;
38
39 static void setInstantInvalidatePropagation(bool enable);
40 static bool instantInvalidatePropagation();
41protected:
42 QGraphicsLayout(QGraphicsLayoutPrivate &, QGraphicsLayoutItem *);
43 void addChildLayoutItem(QGraphicsLayoutItem *layoutItem);
44
45private:
46 Q_DISABLE_COPY(QGraphicsLayout)
47 Q_DECLARE_PRIVATE(QGraphicsLayout)
48 friend class QGraphicsWidget;
49};
50
51#ifndef Q_QDOC
52Q_DECLARE_INTERFACE(QGraphicsLayout, "org.qt-project.Qt.QGraphicsLayout")
53#endif
54
55QT_END_NAMESPACE
56
57#endif
void setSizePolicy(QSizePolicy::Policy policy)
static QGraphicsAnchorPrivate * get(QGraphicsAnchor *q)
QGraphicsAnchorLayoutPrivate * layoutPrivate
The QGraphicsLayout class provides the base class for all layouts in Graphics View.
void setDefaultSpacing(Qt::Orientation o, qreal spacing)
bool operator==(const QLayoutStyleInfo &other) const
bool operator!=(const QLayoutStyleInfo &other) const
qreal perItemSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation) const
qreal defaultSpacing(Qt::Orientation o) const
QWidget * widget() const
QStyle * style() const
QLayoutStyleInfo(QStyle *style, QWidget *widget)
QSimplexConstraint * constraint(const GraphPath &path) const
QT_REQUIRE_CONFIG(animation)
Q_DECLARE_TYPEINFO(GraphPath, Q_RELOCATABLE_TYPE)
QT_REQUIRE_CONFIG(graphicsview)
Q_DECLARE_INTERFACE(QNetworkAccessBackendFactory, QNetworkAccessBackendFactory_iid)
void refreshSizeHints(const QLayoutStyleInfo *styleInfo=nullptr)
AnchorVertexPair(AnchorVertex *v1, AnchorVertex *v2, AnchorData *data)
AnchorVertex(QGraphicsLayoutItem *item, Qt::AnchorPoint edge)
ParallelAnchorData(AnchorData *first, AnchorData *second)
SequentialAnchorData(const QList< AnchorVertex * > &vertices, const QList< AnchorData * > &edges)