Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qlayout_p.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
4#ifndef QLAYOUT_P_H
5#define QLAYOUT_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists for the convenience
12// of qlayout*.cpp, and qabstractlayout.cpp. This header
13// file may change from version to version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtWidgets/private/qtwidgetsglobal_p.h>
19#include "private/qobject_p.h"
20#include "qstyle.h"
21#include "qsizepolicy.h"
22
24
25class QWidgetItem;
26class QSpacerItem;
27class QLayoutItem;
28
29class Q_WIDGETS_EXPORT QLayoutPrivate : public QObjectPrivate
30{
31 Q_DECLARE_PUBLIC(QLayout)
32
33public:
34 typedef QWidgetItem * (*QWidgetItemFactoryMethod)(const QLayout *layout, QWidget *widget);
35 typedef QSpacerItem * (*QSpacerItemFactoryMethod)(const QLayout *layout, int w, int h, QSizePolicy::Policy hPolicy, QSizePolicy::Policy);
36
38
39 void getMargin(int *result, int userMargin, QStyle::PixelMetric pm) const;
40 void doResize();
41 void reparentChildWidgets(QWidget *mw);
42 bool checkWidget(QWidget *widget) const;
43 bool checkLayout(QLayout *otherLayout) const;
44
45 static QWidgetItem *createWidgetItem(const QLayout *layout, QWidget *widget);
46 static QSpacerItem *createSpacerItem(const QLayout *layout, int w, int h, QSizePolicy::Policy hPolicy = QSizePolicy::Minimum, QSizePolicy::Policy vPolicy = QSizePolicy::Minimum);
47 virtual QLayoutItem* replaceAt(int, QLayoutItem *) { return nullptr; }
48
49 static QWidgetItemFactoryMethod widgetItemFactoryMethod;
50 static QSpacerItemFactoryMethod spacerItemFactoryMethod;
51
64};
65
67
68#endif // QLAYOUT_P_H
The QLayoutItem class provides an abstract item that a QLayout manipulates.
Definition qlayoutitem.h:25
int userBottomMargin
Definition qlayout_p.h:56
static QWidgetItemFactoryMethod widgetItemFactoryMethod
Definition qlayout_p.h:49
int userRightMargin
Definition qlayout_p.h:55
QLayout::SizeConstraint constraint
Definition qlayout_p.h:61
QWidget * menubar
Definition qlayout_p.h:63
uint autoNewChild
Definition qlayout_p.h:60
static QSpacerItemFactoryMethod spacerItemFactoryMethod
Definition qlayout_p.h:50
virtual QLayoutItem * replaceAt(int, QLayoutItem *)
Definition qlayout_p.h:47
The QLayout class is the base class of geometry managers.
Definition qlayout.h:26
SizeConstraint
The possible values are:
Definition qlayout.h:35
\inmodule QtCore\reentrant
Definition qrect.h:30
Policy
This enum describes the various per-dimension sizing types used when constructing a QSizePolicy.
Definition qsizepolicy.h:29
The QSpacerItem class provides blank space in a layout.
Definition qlayoutitem.h:57
PixelMetric
This enum describes the various available pixel metrics.
Definition qstyle.h:413
The QWidgetItem class is a layout item that represents a widget.
Definition qlayoutitem.h:86
The QWidget class is the base class of all user interface objects.
Definition qwidget.h:99
QOpenGLWidget * widget
[1]
Combined button and popup list for selecting options.
GLfloat GLfloat GLfloat w
[0]
GLfloat GLfloat GLfloat GLfloat h
GLuint64EXT * result
[6]
unsigned int uint
Definition qtypes.h:34
QVBoxLayout * layout