#2798 Dock Widgets : Improve menus and handling of tabbed dock widgets

Create dock widgets based on static names
Build Windows menu based on static names
Wire up toggleView actions to RiuDockWidgetTools
Change dock widget visibility based on view
This commit is contained in:
Magne Sjaastad
2018-04-26 20:05:42 +02:00
parent 014944b4c0
commit 132db2bb1e
5 changed files with 141 additions and 152 deletions

View File

@@ -20,9 +20,13 @@
#include "RiaVersionInfo.h"
#include <QSettings>
#include "cafPdmUiTreeView.h"
#include "RiuDockWidgetTools.h"
#include "cafPdmObject.h"
#include "cafPdmUiTreeView.h"
#include <QSettings>
#include <QDockWidget>
//--------------------------------------------------------------------------------------------------
///
@@ -118,3 +122,24 @@ void RiuMainWindowBase::setExpanded(const caf::PdmUiItem* uiItem, bool expanded)
{
m_projectTreeView->setExpanded(uiItem, expanded);
}
//--------------------------------------------------------------------------------------------------
///
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindowBase::slotDockWidgetToggleViewActionTriggered()
{
if (!sender()) return;
auto dockWidget = dynamic_cast<QDockWidget*>(sender()->parent());
if (dockWidget)
{
if (dockWidget->isVisible())
{
// Raise the dock widget to make it visible if the widget is part of a tab widget
dockWidget->raise();
}
RiuDockWidgetTools::instance()->setDockWidgetVisibility(dockWidget->objectName(), dockWidget->isVisible());
}
}