25 const auto *ia = qobject_cast<const CInfoArea *>(this->
parent());
32 auto *ia = qobject_cast<CInfoArea *>(this->
parent());
40 if (!ia) {
return false; }
58 Q_ASSERT(!parentInfoAreas.
isEmpty());
59 if (parentInfoAreas.
isEmpty())
return;
66 parentInfoAreas.
first()->addToContextMenu(contextMenu);
70 if (parentInfoAreas.
size() < 2) {
return; }
72 for (
int i = 1; i < parentInfoAreas.
size(); i++)
90 Q_ASSERT_X(dwia, Q_FUNC_INFO,
"Missing info area");
91 dwia->setParentDockWidgetInfoArea(
this);
105 if (dwc) { widgetsWithDockWidgetInfoAreaComponent.
append(dwc); }
108 if (nestedInfoAreas.
isEmpty())
return widgetsWithDockWidgetInfoAreaComponent;
114 ia->findEmbeddedDockWidgetInfoAreaComponents();
115 if (nestedInfoAreaComponents.
isEmpty()) {
continue; }
116 for (CEnableForDockWidgetInfoArea *iac : nestedInfoAreaComponents)
118 const bool r = widgetsWithDockWidgetInfoAreaComponent.
removeOne(iac);
123 return widgetsWithDockWidgetInfoAreaComponent;
130 return nestedInfoAreas;
137 while (currentWidget)
139 const CInfoArea *ia = qobject_cast<CInfoArea *>(currentWidget);
140 if (ia) { parents.
append(ia); }
Info area, hosting dockable widgets.
void addToContextMenu(QMenu *menu) const
Add items to context menu.
bool isSelectedDockWidgetInfoArea(const CDockWidgetInfoArea *infoArea) const
Is given widget selected. Means it is not floating, and the one selected.
High level reusable GUI components.
void append(QList< T > &&value)
QList< T >::const_reference at(qsizetype i) const const
bool isEmpty() const const
bool removeOne(const AT &t)
qsizetype size() const const
QObject * parent() const const
bool isEmpty() const const