mirror of
https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System.git
synced 2024-12-25 23:51:33 +08:00
Removed DockWidget->sideTabWidget()->setProperty("focused", Focused), DockWidget->sideTabWidget()->updateStyle() because it is not required
This commit is contained in:
parent
b70fc7b3e8
commit
ae5a75bc3f
@ -268,6 +268,14 @@ CSideTabBar* CAutoHideDockContainer::sideTabBar() const
|
|||||||
return parentContainer()->sideTabBar(d->SideTabBarArea);
|
return parentContainer()->sideTabBar(d->SideTabBarArea);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//============================================================================
|
||||||
|
CDockWidgetSideTab* CAutoHideDockContainer::sideTab() const
|
||||||
|
{
|
||||||
|
return d->SideTab;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//============================================================================
|
//============================================================================
|
||||||
CDockWidget* CAutoHideDockContainer::dockWidget() const
|
CDockWidget* CAutoHideDockContainer::dockWidget() const
|
||||||
{
|
{
|
||||||
@ -284,13 +292,13 @@ void CAutoHideDockContainer::addDockWidget(CDockWidget* DockWidget)
|
|||||||
}
|
}
|
||||||
|
|
||||||
d->DockWidget = DockWidget;
|
d->DockWidget = DockWidget;
|
||||||
|
d->SideTab = DockWidget->sideTabWidget();
|
||||||
CDockAreaWidget* OldDockArea = DockWidget->dockAreaWidget();
|
CDockAreaWidget* OldDockArea = DockWidget->dockAreaWidget();
|
||||||
if (OldDockArea)
|
if (OldDockArea)
|
||||||
{
|
{
|
||||||
OldDockArea->removeDockWidget(DockWidget);
|
OldDockArea->removeDockWidget(DockWidget);
|
||||||
}
|
}
|
||||||
d->DockArea->addDockWidget(DockWidget);
|
d->DockArea->addDockWidget(DockWidget);
|
||||||
d->DockWidget->sideTabWidget()->updateOrientationAndSpacing(d->SideTabBarArea);
|
|
||||||
|
|
||||||
// Prevent overriding of d->Size parameter when this function is called during
|
// Prevent overriding of d->Size parameter when this function is called during
|
||||||
// state restoring
|
// state restoring
|
||||||
@ -336,9 +344,10 @@ void CAutoHideDockContainer::cleanupAndDelete()
|
|||||||
const auto dockWidget = d->DockWidget;
|
const auto dockWidget = d->DockWidget;
|
||||||
if (dockWidget)
|
if (dockWidget)
|
||||||
{
|
{
|
||||||
dockWidget->sideTabWidget()->removeFromSideTabBar();
|
auto SideTab = d->SideTab;
|
||||||
dockWidget->sideTabWidget()->setParent(dockWidget);
|
SideTab->removeFromSideTabBar();
|
||||||
dockWidget->sideTabWidget()->hide();
|
SideTab->setParent(dockWidget);
|
||||||
|
SideTab->hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
hide();
|
hide();
|
||||||
@ -391,18 +400,16 @@ void CAutoHideDockContainer::toggleView(bool Enable)
|
|||||||
{
|
{
|
||||||
if (Enable)
|
if (Enable)
|
||||||
{
|
{
|
||||||
const auto dockWidget = d->DockWidget;
|
if (d->SideTab)
|
||||||
if (dockWidget)
|
|
||||||
{
|
{
|
||||||
dockWidget->sideTabWidget()->show();
|
d->SideTab->show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
const auto dockWidget = d->DockWidget;
|
if (d->SideTab)
|
||||||
if (dockWidget)
|
|
||||||
{
|
{
|
||||||
dockWidget->sideTabWidget()->hide();
|
d->SideTab->hide();
|
||||||
}
|
}
|
||||||
hide();
|
hide();
|
||||||
qApp->removeEventFilter(this);
|
qApp->removeEventFilter(this);
|
||||||
@ -429,7 +436,7 @@ void CAutoHideDockContainer::collapseView(bool Enable)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ADS_PRINT("CAutoHideDockContainer::collapseView " << Enable);
|
ADS_PRINT("CAutoHideDockContainer::collapseView " << Enable);
|
||||||
d->DockWidget->sideTabWidget()->updateStyle();
|
d->SideTab->updateStyle();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -494,7 +501,7 @@ bool CAutoHideDockContainer::eventFilter(QObject* watched, QEvent* event)
|
|||||||
// because the side tab click handler will call collapseView(). If we
|
// because the side tab click handler will call collapseView(). If we
|
||||||
// do not ignore this here, then we will collapse the container and the side tab
|
// do not ignore this here, then we will collapse the container and the side tab
|
||||||
// click handler will uncollapse it
|
// click handler will uncollapse it
|
||||||
auto SideTab = d->DockWidget->sideTabWidget();
|
auto SideTab = d->SideTab;
|
||||||
pos = SideTab->mapFromGlobal(me->globalPos());
|
pos = SideTab->mapFromGlobal(me->globalPos());
|
||||||
if (SideTab->rect().contains(pos))
|
if (SideTab->rect().contains(pos))
|
||||||
{
|
{
|
||||||
|
@ -89,6 +89,11 @@ public:
|
|||||||
*/
|
*/
|
||||||
CSideTabBar* sideTabBar() const;
|
CSideTabBar* sideTabBar() const;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the side tab
|
||||||
|
*/
|
||||||
|
CDockWidgetSideTab* sideTab() const;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get's the dock widget in this dock container
|
* Get's the dock widget in this dock container
|
||||||
*/
|
*/
|
||||||
|
@ -1546,7 +1546,6 @@ CAutoHideDockContainer* CDockContainerWidget::createAndSetupAutoHideContainer(
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
DockWidget->sideTabWidget()->updateOrientationAndSpacing(area);
|
|
||||||
sideTabBar(area)->insertSideTab(insertOrder == CDockWidget::First ? 0 : -1, DockWidget->sideTabWidget());
|
sideTabBar(area)->insertSideTab(insertOrder == CDockWidget::First ? 0 : -1, DockWidget->sideTabWidget());
|
||||||
DockWidget->sideTabWidget()->show();
|
DockWidget->sideTabWidget()->show();
|
||||||
|
|
||||||
|
@ -70,8 +70,6 @@ static void updateDockWidgetFocusStyle(CDockWidget* DockWidget, bool Focused)
|
|||||||
DockWidget->setProperty("focused", Focused);
|
DockWidget->setProperty("focused", Focused);
|
||||||
DockWidget->tabWidget()->setProperty("focused", Focused);
|
DockWidget->tabWidget()->setProperty("focused", Focused);
|
||||||
DockWidget->tabWidget()->updateStyle();
|
DockWidget->tabWidget()->updateStyle();
|
||||||
DockWidget->sideTabWidget()->setProperty("focused", Focused);
|
|
||||||
DockWidget->sideTabWidget()->updateStyle();
|
|
||||||
internal::repolishStyle(DockWidget);
|
internal::repolishStyle(DockWidget);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -365,7 +365,9 @@ public:
|
|||||||
CDockAreaWidget* dockAreaWidget() const;
|
CDockAreaWidget* dockAreaWidget() const;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the side tab widget for this dock
|
* Returns the side tab widget for this dock, if this dock widget is in
|
||||||
|
* a auto hide container. If it is not in a auto hide container, then this
|
||||||
|
* function returns a nullptr,
|
||||||
*/
|
*/
|
||||||
CDockWidgetSideTab* sideTabWidget() const;
|
CDockWidgetSideTab* sideTabWidget() const;
|
||||||
|
|
||||||
|
@ -142,7 +142,7 @@ Qt::Orientation CDockWidgetSideTab::orientation() const
|
|||||||
|
|
||||||
|
|
||||||
//============================================================================
|
//============================================================================
|
||||||
void CDockWidgetSideTab::updateOrientationAndSpacing(SideBarLocation area)
|
void CDockWidgetSideTab::updateOrientationForArea(SideBarLocation area)
|
||||||
{
|
{
|
||||||
setOrientation((area == Bottom || area == Top) ? Qt::Horizontal : Qt::Vertical);
|
setOrientation((area == Bottom || area == Top) ? Qt::Horizontal : Qt::Vertical);
|
||||||
|
|
||||||
|
@ -106,7 +106,7 @@ public:
|
|||||||
/**
|
/**
|
||||||
* Update the orientation, visibility and spacing based on the area and the config
|
* Update the orientation, visibility and spacing based on the area and the config
|
||||||
*/
|
*/
|
||||||
void updateOrientationAndSpacing(SideBarLocation area);
|
void updateOrientationForArea(SideBarLocation area);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns true, if this is the active tab. The tab is active if the auto hide widget is visible
|
* Returns true, if this is the active tab. The tab is active if the auto hide widget is visible
|
||||||
|
@ -128,6 +128,7 @@ CSideTabBar::~CSideTabBar()
|
|||||||
//============================================================================
|
//============================================================================
|
||||||
void CSideTabBar::insertSideTab(int Index, CDockWidgetSideTab* SideTab)
|
void CSideTabBar::insertSideTab(int Index, CDockWidgetSideTab* SideTab)
|
||||||
{
|
{
|
||||||
|
SideTab->updateOrientationForArea(d->SideTabArea);
|
||||||
SideTab->installEventFilter(this);
|
SideTab->installEventFilter(this);
|
||||||
d->TabsLayout->insertWidget(Index, SideTab);
|
d->TabsLayout->insertWidget(Index, SideTab);
|
||||||
SideTab->setSideTabBar(this);
|
SideTab->setSideTabBar(this);
|
||||||
@ -142,7 +143,7 @@ CAutoHideDockContainer* CSideTabBar::insertDockWidget(int Index, CDockWidget* Do
|
|||||||
auto area = sideTabBarArea();
|
auto area = sideTabBarArea();
|
||||||
qDebug() << "area " << area;
|
qDebug() << "area " << area;
|
||||||
Tab->setSideTabBar(this);
|
Tab->setSideTabBar(this);
|
||||||
Tab->updateOrientationAndSpacing(area);
|
Tab->updateOrientationForArea(area);
|
||||||
d->TabsLayout->insertWidget(Index, Tab);
|
d->TabsLayout->insertWidget(Index, Tab);
|
||||||
Tab->show();
|
Tab->show();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user