Serializes and deserializes FloatingWidgets.

This commit is contained in:
mfreiholz
2016-02-17 09:59:11 +01:00
parent 5a17a88146
commit f0b1ea4735
7 changed files with 109 additions and 73 deletions

View File

@@ -26,6 +26,7 @@ ADS_NAMESPACE_BEGIN
int SectionWidget::NextUid = 1;
QHash<int, SectionWidget*> SectionWidget::LookupMap;
QHash<ContainerWidget*, QHash<int, SectionWidget*> > SectionWidget::LookupMapByContainer;
SectionWidget::SectionWidget(ContainerWidget* parent) :
QFrame(parent),
@@ -56,14 +57,16 @@ SectionWidget::SectionWidget(ContainerWidget* parent) :
#endif
LookupMap.insert(_uid, this);
_container->_sections.append(this);
LookupMapByContainer[_container].insert(_uid, this);
// _container->_sections.append(this);
}
SectionWidget::~SectionWidget()
{
qDebug() << Q_FUNC_INFO;
LookupMap.remove(_uid);
_container->_sections.removeAll(this);
LookupMapByContainer[_container].remove(_uid);
_container->_sections.removeAll(this); // Note: I don't like this here, but we have to remove it from list...
// Delete empty QSplitter.
QSplitter* splitter = findParentSplitter(this);
@@ -79,6 +82,11 @@ int SectionWidget::uid() const
return _uid;
}
ContainerWidget* SectionWidget::containerWidget() const
{
return _container;
}
QRect SectionWidget::titleAreaGeometry() const
{
return _tabsLayout->geometry();