40 if (!ia) {
return false; }
62 Q_ASSERT(!parentInfoAreas.
isEmpty());
63 if (parentInfoAreas.
isEmpty())
return;
70 parentInfoAreas.
first()->addToContextMenu(contextMenu);
74 if (parentInfoAreas.
size() < 2) {
return; }
76 for (
int i = 1; i < parentInfoAreas.
size(); i++)
94 Q_ASSERT_X(dwia, Q_FUNC_INFO,
"Missing info area");
95 dwia->setParentDockWidgetInfoArea(
this);
109 if (dwc) { widgetsWithDockWidgetInfoAreaComponent.
append(dwc); }
112 if (nestedInfoAreas.
isEmpty())
return widgetsWithDockWidgetInfoAreaComponent;
118 ia->findEmbeddedDockWidgetInfoAreaComponents();
119 if (nestedInfoAreaComponents.
isEmpty()) {
continue; }
120 for (CEnableForDockWidgetInfoArea *iac : nestedInfoAreaComponents)
122 const bool r = widgetsWithDockWidgetInfoAreaComponent.
removeOne(iac);
127 return widgetsWithDockWidgetInfoAreaComponent;
134 return nestedInfoAreas;
141 while (currentWidget)
143 const CInfoArea *ia = qobject_cast<CInfoArea *>(currentWidget);
144 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