Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/QtWidgets/qgraphicslinearlayout.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // Copyright (C) 2016 The Qt Company Ltd.
0002 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
0003 // Qt-Security score:significant reason:default
0004 
0005 #ifndef QGRAPHICSLINEARLAYOUT_H
0006 #define QGRAPHICSLINEARLAYOUT_H
0007 
0008 #include <QtWidgets/qtwidgetsglobal.h>
0009 #include <QtWidgets/qgraphicsitem.h>
0010 #include <QtWidgets/qgraphicslayout.h>
0011 
0012 QT_REQUIRE_CONFIG(graphicsview);
0013 
0014 QT_BEGIN_NAMESPACE
0015 
0016 class QGraphicsLinearLayoutPrivate;
0017 
0018 class Q_WIDGETS_EXPORT QGraphicsLinearLayout : public QGraphicsLayout
0019 {
0020 public:
0021     QGraphicsLinearLayout(QGraphicsLayoutItem *parent = nullptr);
0022     QGraphicsLinearLayout(Qt::Orientation orientation, QGraphicsLayoutItem *parent = nullptr);
0023     virtual ~QGraphicsLinearLayout();
0024 
0025     void setOrientation(Qt::Orientation orientation);
0026     Qt::Orientation orientation() const;
0027 
0028     inline void addItem(QGraphicsLayoutItem *item) { insertItem(-1, item); }
0029     inline void addStretch(int stretch = 1) { insertStretch(-1, stretch); }
0030 
0031     void insertItem(int index, QGraphicsLayoutItem *item);
0032     void insertStretch(int index, int stretch = 1);
0033 
0034     void removeItem(QGraphicsLayoutItem *item);
0035     void removeAt(int index) override;
0036 
0037     void setSpacing(qreal spacing);
0038     qreal spacing() const;
0039     void setItemSpacing(int index, qreal spacing);
0040     qreal itemSpacing(int index) const;
0041 
0042     void setStretchFactor(QGraphicsLayoutItem *item, int stretch);
0043     int stretchFactor(QGraphicsLayoutItem *item) const;
0044 
0045     void setAlignment(QGraphicsLayoutItem *item, Qt::Alignment alignment);
0046     Qt::Alignment alignment(QGraphicsLayoutItem *item) const;
0047 
0048     void setGeometry(const QRectF &rect) override;
0049 
0050     int count() const override;
0051     QGraphicsLayoutItem *itemAt(int index) const override;
0052 
0053     void invalidate() override;
0054     QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const override;
0055 
0056 #if 0 // ###
0057     Q5SizePolicy::ControlTypes controlTypes(LayoutSide side) const;
0058 #endif
0059 
0060     void dump(int indent = 0) const;
0061 
0062 protected:
0063 #if 0
0064     QSize contentsSizeHint(Qt::SizeHint which, const QSize &constraint = QSize()) const;
0065 #endif
0066 
0067 private:
0068     Q_DISABLE_COPY(QGraphicsLinearLayout)
0069     Q_DECLARE_PRIVATE(QGraphicsLinearLayout)
0070 };
0071 
0072 QT_END_NAMESPACE
0073 
0074 #endif