Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
default_container.cpp
Go to the documentation of this file.
1
// Copyright (C) 2016 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
3
// Qt-Security score:significant reason:default
4
5
#
include
"default_container.h"
6
#
include
<
QtCore
/
qdebug
.
h
>
7
8
QT_BEGIN_NAMESPACE
9
10
using
namespace
Qt::StringLiterals;
11
12
template
<
class
Container>
13
static
inline
void
setCurrentContainerIndex
(
int
index, Container *container)
14
{
15
const
bool
blocked = container->signalsBlocked();
16
container->blockSignals(
true
);
17
container->setCurrentIndex(index);
18
container->blockSignals(blocked);
19
}
20
21
static
inline
void
ensureNoParent
(QWidget *widget)
22
{
23
if
(widget->parentWidget())
24
widget->setParent(
nullptr
);
25
}
26
27
static
constexpr
auto
PageLabel
=
"Page"_L1
;
28
29
namespace
qdesigner_internal
{
30
31
// --------- QStackedWidgetContainer
32
QStackedWidgetContainer
::QStackedWidgetContainer(QStackedWidget *widget, QObject *parent) :
33
QObject(parent),
34
m_widget(widget)
35
{
36
}
37
38
void
QStackedWidgetContainer
::
setCurrentIndex
(
int
index)
39
{
40
setCurrentContainerIndex(index, m_widget);
41
}
42
43
void
QStackedWidgetContainer
::
addWidget
(QWidget *widget)
44
{
45
ensureNoParent(widget);
46
m_widget->addWidget(widget);
47
}
48
49
void
QStackedWidgetContainer
::
insertWidget
(
int
index, QWidget *widget)
50
{
51
ensureNoParent(widget);
52
m_widget->insertWidget(index, widget);
53
}
54
55
void
QStackedWidgetContainer
::
remove
(
int
index)
56
{
57
m_widget->removeWidget(widget(index));
58
}
59
60
// --------- QTabWidgetContainer
61
QTabWidgetContainer
::QTabWidgetContainer(QTabWidget *widget, QObject *parent) :
62
QObject(parent),
63
m_widget(widget)
64
{
65
}
66
67
void
QTabWidgetContainer
::
setCurrentIndex
(
int
index)
68
{
69
setCurrentContainerIndex(index, m_widget);
70
}
71
72
void
QTabWidgetContainer
::
addWidget
(QWidget *widget)
73
{
74
ensureNoParent(widget);
75
m_widget->addTab(widget, QString::fromUtf8(PageLabel));
76
}
77
78
void
QTabWidgetContainer
::
insertWidget
(
int
index, QWidget *widget)
79
{
80
ensureNoParent(widget);
81
m_widget->insertTab(index, widget, QString::fromUtf8(PageLabel));
82
}
83
84
void
QTabWidgetContainer
::
remove
(
int
index)
85
{
86
m_widget->removeTab(index);
87
}
88
89
// ------------------- QToolBoxContainer
90
QToolBoxContainer
::QToolBoxContainer(QToolBox *widget, QObject *parent) :
91
QObject(parent),
92
m_widget(widget)
93
{
94
}
95
96
void
QToolBoxContainer
::
setCurrentIndex
(
int
index)
97
{
98
setCurrentContainerIndex(index, m_widget);
99
}
100
101
void
QToolBoxContainer
::
addWidget
(QWidget *widget)
102
{
103
ensureNoParent(widget);
104
m_widget->addItem(widget, QString::fromUtf8(PageLabel));
105
}
106
107
void
QToolBoxContainer
::
insertWidget
(
int
index, QWidget *widget)
108
{
109
ensureNoParent(widget);
110
m_widget->insertItem(index, widget, QString::fromUtf8(PageLabel));
111
}
112
113
void
QToolBoxContainer
::
remove
(
int
index)
114
{
115
m_widget->removeItem(index);
116
}
117
118
// ------------------- QScrollAreaContainer
119
// We pass on active=true only if there are no children yet.
120
// If there are children, it is a legacy custom widget QScrollArea that has an internal,
121
// unmanaged child, in which case we deactivate the extension (otherwise we crash).
122
// The child will then not show up in the task menu
123
124
QScrollAreaContainer
::QScrollAreaContainer(QScrollArea *widget, QObject *parent) :
125
QObject(parent),
126
SingleChildContainer<QScrollArea>(widget, widget->widget() ==
nullptr
)
127
{
128
}
129
// ------------------- QDockWidgetContainer
130
QDockWidgetContainer
::QDockWidgetContainer(QDockWidget *widget, QObject *parent) :
131
QObject(parent),
132
SingleChildContainer<QDockWidget>(widget)
133
{
134
}
135
136
}
137
138
QT_END_NAMESPACE
qdesigner_internal::QDockWidgetContainer
Definition
default_container.h:169
qdesigner_internal::QScrollAreaContainer
Definition
default_container.h:160
qdesigner_internal::QStackedWidgetContainer
Definition
default_container.h:24
qdesigner_internal::QStackedWidgetContainer::setCurrentIndex
void setCurrentIndex(int index) override
Definition
default_container.cpp:38
qdesigner_internal::QStackedWidgetContainer::insertWidget
void insertWidget(int index, QWidget *widget) override
Definition
default_container.cpp:49
qdesigner_internal::QStackedWidgetContainer::addWidget
void addWidget(QWidget *widget) override
Definition
default_container.cpp:43
qdesigner_internal::QStackedWidgetContainer::remove
void remove(int index) override
Definition
default_container.cpp:55
qdesigner_internal::QTabWidgetContainer
Definition
default_container.h:48
qdesigner_internal::QTabWidgetContainer::remove
void remove(int index) override
Definition
default_container.cpp:84
qdesigner_internal::QTabWidgetContainer::addWidget
void addWidget(QWidget *widget) override
Definition
default_container.cpp:72
qdesigner_internal::QTabWidgetContainer::insertWidget
void insertWidget(int index, QWidget *widget) override
Definition
default_container.cpp:78
qdesigner_internal::QTabWidgetContainer::setCurrentIndex
void setCurrentIndex(int index) override
Definition
default_container.cpp:67
qdesigner_internal::QToolBoxContainer
Definition
default_container.h:72
qdesigner_internal::QToolBoxContainer::insertWidget
void insertWidget(int index, QWidget *widget) override
Definition
default_container.cpp:107
qdesigner_internal::QToolBoxContainer::setCurrentIndex
void setCurrentIndex(int index) override
Definition
default_container.cpp:96
qdesigner_internal::QToolBoxContainer::remove
void remove(int index) override
Definition
default_container.cpp:113
qdesigner_internal::QToolBoxContainer::addWidget
void addWidget(QWidget *widget) override
Definition
default_container.cpp:101
setCurrentContainerIndex
static void setCurrentContainerIndex(int index, Container *container)
Definition
default_container.cpp:13
PageLabel
static constexpr auto PageLabel
Definition
default_container.cpp:27
ensureNoParent
static void ensureNoParent(QWidget *widget)
Definition
default_container.cpp:21
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
qdesigner_internal
Auxiliary methods to store/retrieve settings.
Definition
buddyeditor.cpp:67
qttools
src
designer
src
components
formeditor
default_container.cpp
Generated on
for Qt by
1.18.0