mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-11 07:56:08 -06:00
#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:
parent
014944b4c0
commit
132db2bb1e
@ -72,6 +72,7 @@
|
|||||||
#include "RimWellPltPlot.h"
|
#include "RimWellPltPlot.h"
|
||||||
#include "RimWellRftPlot.h"
|
#include "RimWellRftPlot.h"
|
||||||
|
|
||||||
|
#include "RiuDockWidgetTools.h"
|
||||||
#include "RiuMainPlotWindow.h"
|
#include "RiuMainPlotWindow.h"
|
||||||
#include "RiuMainWindow.h"
|
#include "RiuMainWindow.h"
|
||||||
#include "RiuProcessMonitor.h"
|
#include "RiuProcessMonitor.h"
|
||||||
@ -195,12 +196,13 @@ RiaApplication::RiaApplication(int& argc, char** argv)
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RiaApplication::~RiaApplication()
|
RiaApplication::~RiaApplication()
|
||||||
{
|
{
|
||||||
|
RiuDockWidgetTools::instance()->saveDockWidgetsState();
|
||||||
|
|
||||||
deleteMainPlotWindow();
|
deleteMainPlotWindow();
|
||||||
|
|
||||||
delete m_preferences;
|
delete m_preferences;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -209,7 +211,6 @@ RiaApplication* RiaApplication::instance()
|
|||||||
return static_cast<RiaApplication*>qApp;
|
return static_cast<RiaApplication*>qApp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
/// Return -1 if unit test is not executed, returns 0 if test passed, returns 1 if tests failed
|
/// Return -1 if unit test is not executed, returns 0 if test passed, returns 1 if tests failed
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -1074,8 +1075,6 @@ bool RiaApplication::openOdbCaseFromFile(const QString& fileName)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -1167,6 +1166,8 @@ RimViewWindow* RiaApplication::activePlotWindow() const
|
|||||||
void RiaApplication::setActiveReservoirView(Rim3dView* rv)
|
void RiaApplication::setActiveReservoirView(Rim3dView* rv)
|
||||||
{
|
{
|
||||||
m_activeReservoirView = rv;
|
m_activeReservoirView = rv;
|
||||||
|
|
||||||
|
RiuDockWidgetTools::instance()->changeDockWidgetVisibilityBasedOnView(rv);
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
@ -394,6 +394,12 @@ void RiuMainPlotWindow::createDockPanels()
|
|||||||
|
|
||||||
setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
|
setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
|
||||||
setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);
|
setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);
|
||||||
|
|
||||||
|
QList<QDockWidget*> dockWidgets = findChildren<QDockWidget*>();
|
||||||
|
for (QDockWidget* dock : dockWidgets)
|
||||||
|
{
|
||||||
|
connect(dock->toggleViewAction(), SIGNAL(triggered()), SLOT(slotDockWidgetToggleViewActionTriggered()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -596,17 +602,9 @@ void RiuMainPlotWindow::slotBuildWindowActions()
|
|||||||
m_windowMenu->clear();
|
m_windowMenu->clear();
|
||||||
|
|
||||||
QList<QDockWidget*> dockWidgets = findChildren<QDockWidget*>();
|
QList<QDockWidget*> dockWidgets = findChildren<QDockWidget*>();
|
||||||
|
for (QDockWidget* dock : dockWidgets)
|
||||||
int i = 0;
|
|
||||||
foreach (QDockWidget* dock, dockWidgets)
|
|
||||||
{
|
{
|
||||||
if (dock)
|
m_windowMenu->addAction(dock->toggleViewAction());
|
||||||
{
|
|
||||||
if (i == 4)
|
|
||||||
m_windowMenu->addSeparator();
|
|
||||||
m_windowMenu->addAction(dock->toggleViewAction());
|
|
||||||
++i;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_windowMenu->addSeparator();
|
m_windowMenu->addSeparator();
|
||||||
|
@ -84,10 +84,7 @@
|
|||||||
#include <QToolBar>
|
#include <QToolBar>
|
||||||
#include <QTreeView>
|
#include <QTreeView>
|
||||||
#include <QUndoStack>
|
#include <QUndoStack>
|
||||||
|
#include "RiuDockWidgetTools.h"
|
||||||
|
|
||||||
#define DOCK_PANEL_NAME_PROCESS_MONITOR "dockProcessMonitor"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//==================================================================================================
|
//==================================================================================================
|
||||||
@ -367,39 +364,30 @@ void RiuMainWindow::createMenus()
|
|||||||
|
|
||||||
|
|
||||||
QMenu* importMenu = fileMenu->addMenu("&Import");
|
QMenu* importMenu = fileMenu->addMenu("&Import");
|
||||||
|
importMenu->addAction(cmdFeatureMgr->action("RicImportEclipseCaseFeature"));
|
||||||
QMenu* importEclipseMenu = importMenu->addMenu(QIcon(":/Case48x48.png"), "Eclipse Cases");
|
importMenu->addAction(cmdFeatureMgr->action("RicImportEclipseCasesFeature"));
|
||||||
importEclipseMenu->addAction(cmdFeatureMgr->action("RicImportEclipseCaseFeature"));
|
importMenu->addAction(cmdFeatureMgr->action("RicImportEclipseCaseTimeStepFilterFeature"));
|
||||||
importEclipseMenu->addAction(cmdFeatureMgr->action("RicImportEclipseCasesFeature"));
|
importMenu->addAction(cmdFeatureMgr->action("RicImportInputEclipseCaseFeature"));
|
||||||
importEclipseMenu->addAction(cmdFeatureMgr->action("RicImportEclipseCaseTimeStepFilterFeature"));
|
importMenu->addAction(cmdFeatureMgr->action("RicCreateGridCaseGroupFeature"));
|
||||||
importEclipseMenu->addAction(cmdFeatureMgr->action("RicImportInputEclipseCaseFeature"));
|
importMenu->addAction(cmdFeatureMgr->action("RicCreateGridCaseGroupFromFilesFeature"));
|
||||||
importEclipseMenu->addAction(cmdFeatureMgr->action("RicCreateGridCaseGroupFeature"));
|
importMenu->addSeparator();
|
||||||
importEclipseMenu->addAction(cmdFeatureMgr->action("RicCreateGridCaseGroupFromFilesFeature"));
|
|
||||||
|
|
||||||
#ifdef USE_ODB_API
|
#ifdef USE_ODB_API
|
||||||
|
importMenu->addAction(cmdFeatureMgr->action("RicImportGeoMechCaseFeature"));
|
||||||
|
importMenu->addAction(cmdFeatureMgr->action("RicImportElementPropertyFeature"));
|
||||||
importMenu->addSeparator();
|
importMenu->addSeparator();
|
||||||
QMenu* importGeoMechMenu = importMenu->addMenu(QIcon(":/GeoMechCase48x48.png"), "Geo Mechanical Cases");
|
|
||||||
importGeoMechMenu->addAction(cmdFeatureMgr->action("RicImportGeoMechCaseFeature"));
|
|
||||||
importGeoMechMenu->addAction(cmdFeatureMgr->action("RicImportElementPropertyFeature"));
|
|
||||||
#endif
|
#endif
|
||||||
|
importMenu->addAction(cmdFeatureMgr->action("RicImportSummaryCaseFeature"));
|
||||||
|
importMenu->addAction(cmdFeatureMgr->action("RicImportSummaryCasesFeature"));
|
||||||
|
importMenu->addAction(cmdFeatureMgr->action("RicImportEnsembleFeature"));
|
||||||
|
importMenu->addAction(cmdFeatureMgr->action("RicImportObservedDataInMenuFeature"));
|
||||||
|
|
||||||
importMenu->addSeparator();
|
importMenu->addSeparator();
|
||||||
QMenu* importSummaryMenu = importMenu->addMenu(QIcon(":/SummaryCase48x48.png"), "Summary Cases");
|
importMenu->addAction(cmdFeatureMgr->action("RicWellPathsImportFileFeature"));
|
||||||
importSummaryMenu->addAction(cmdFeatureMgr->action("RicImportSummaryCaseFeature"));
|
importMenu->addAction(cmdFeatureMgr->action("RicWellPathsImportSsihubFeature"));
|
||||||
importSummaryMenu->addAction(cmdFeatureMgr->action("RicImportSummaryCasesFeature"));
|
importMenu->addAction(cmdFeatureMgr->action("RicWellLogsImportFileFeature"));
|
||||||
importSummaryMenu->addAction(cmdFeatureMgr->action("RicImportEnsembleFeature"));
|
|
||||||
importSummaryMenu->addAction(cmdFeatureMgr->action("RicImportObservedDataInMenuFeature"));
|
|
||||||
|
|
||||||
importMenu->addSeparator();
|
importMenu->addSeparator();
|
||||||
QMenu* importWellMenu = importMenu->addMenu(QIcon(":/Well.png"), "Wells");
|
importMenu->addAction(cmdFeatureMgr->action("RicImportFormationNamesFeature"));
|
||||||
importWellMenu->addAction(cmdFeatureMgr->action("RicWellPathsImportFileFeature"));
|
importMenu->addAction(cmdFeatureMgr->action("RicWellPathFormationsImportFileFeature"));
|
||||||
importWellMenu->addAction(cmdFeatureMgr->action("RicWellPathsImportSsihubFeature"));
|
|
||||||
importWellMenu->addAction(cmdFeatureMgr->action("RicWellLogsImportFileFeature"));
|
|
||||||
|
|
||||||
importMenu->addSeparator();
|
|
||||||
QMenu* importFormationsMenu = importMenu->addMenu(QIcon(":/FormationCollection16x16.png"), "Formations");
|
|
||||||
importFormationsMenu->addAction(cmdFeatureMgr->action("RicImportFormationNamesFeature"));
|
|
||||||
importFormationsMenu->addAction(cmdFeatureMgr->action("RicWellPathFormationsImportFileFeature"));
|
|
||||||
|
|
||||||
QMenu* exportMenu = fileMenu->addMenu("&Export");
|
QMenu* exportMenu = fileMenu->addMenu("&Export");
|
||||||
exportMenu->addAction(cmdFeatureMgr->action("RicSnapshotViewToFileFeature"));
|
exportMenu->addAction(cmdFeatureMgr->action("RicSnapshotViewToFileFeature"));
|
||||||
@ -575,9 +563,11 @@ void RiuMainWindow::createToolBars()
|
|||||||
|
|
||||||
void RiuMainWindow::createDockPanels()
|
void RiuMainWindow::createDockPanels()
|
||||||
{
|
{
|
||||||
|
auto dwt = RiuDockWidgetTools::instance();
|
||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockWidget = new QDockWidget("Project Tree", this);
|
QDockWidget* dockWidget = new QDockWidget("Project Tree", this);
|
||||||
dockWidget->setObjectName("dockWidget");
|
dockWidget->setObjectName(dwt->projectTreeName());
|
||||||
dockWidget->setAllowedAreas(Qt::AllDockWidgetAreas);
|
dockWidget->setAllowedAreas(Qt::AllDockWidgetAreas);
|
||||||
|
|
||||||
m_projectTreeView = new caf::PdmUiTreeView(this);
|
m_projectTreeView = new caf::PdmUiTreeView(this);
|
||||||
@ -615,7 +605,7 @@ void RiuMainWindow::createDockPanels()
|
|||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockWidget = new QDockWidget("Property Editor", this);
|
QDockWidget* dockWidget = new QDockWidget("Property Editor", this);
|
||||||
dockWidget->setObjectName("dockWidget");
|
dockWidget->setObjectName(dwt->propertyEditorName());
|
||||||
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
|
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
|
||||||
|
|
||||||
m_pdmUiPropertyView = new caf::PdmUiPropertyView(dockWidget);
|
m_pdmUiPropertyView = new caf::PdmUiPropertyView(dockWidget);
|
||||||
@ -625,84 +615,84 @@ void RiuMainWindow::createDockPanels()
|
|||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockPanel = new QDockWidget("Result Info", this);
|
QDockWidget* dockWidget = new QDockWidget("Result Info", this);
|
||||||
dockPanel->setObjectName("dockResultInfoPanel");
|
dockWidget->setObjectName(dwt->resultInfoName());
|
||||||
dockPanel->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
||||||
m_resultInfoPanel = new RiuResultInfoPanel(dockPanel);
|
m_resultInfoPanel = new RiuResultInfoPanel(dockWidget);
|
||||||
dockPanel->setWidget(m_resultInfoPanel);
|
dockWidget->setWidget(m_resultInfoPanel);
|
||||||
|
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, dockPanel);
|
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockPanel = new QDockWidget("Process Monitor", this);
|
QDockWidget* dockWidget = new QDockWidget("Process Monitor", this);
|
||||||
dockPanel->setObjectName(DOCK_PANEL_NAME_PROCESS_MONITOR);
|
dockWidget->setObjectName(dwt->processMonitorName());
|
||||||
dockPanel->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
||||||
m_processMonitor = new RiuProcessMonitor(dockPanel);
|
m_processMonitor = new RiuProcessMonitor(dockWidget);
|
||||||
dockPanel->setWidget(m_processMonitor);
|
dockWidget->setWidget(m_processMonitor);
|
||||||
|
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, dockPanel);
|
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||||
dockPanel->hide();
|
dockWidget->hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockPanel = new QDockWidget("Result Plot", this);
|
QDockWidget* dockWidget = new QDockWidget("Result Plot", this);
|
||||||
dockPanel->setObjectName("dockTimeHistoryPanel");
|
dockWidget->setObjectName(dwt->resultPlotName());
|
||||||
dockPanel->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
||||||
m_resultQwtPlot = new RiuResultQwtPlot(dockPanel);
|
m_resultQwtPlot = new RiuResultQwtPlot(dockWidget);
|
||||||
dockPanel->setWidget(m_resultQwtPlot);
|
dockWidget->setWidget(m_resultQwtPlot);
|
||||||
|
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, dockPanel);
|
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||||
resultPlotDock = dockPanel;
|
resultPlotDock = dockWidget;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef USE_ODB_API
|
#ifdef USE_ODB_API
|
||||||
{
|
{
|
||||||
QDockWidget* dockPanel = new QDockWidget("Mohr's Circle Plot", this);
|
QDockWidget* dockWidget = new QDockWidget("Mohr's Circle Plot", this);
|
||||||
dockPanel->setObjectName("dockTimeHistoryPanel");
|
dockWidget->setObjectName(dwt->mohrsCirclePlotName());
|
||||||
dockPanel->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
||||||
m_mohrsCirclePlot = new RiuMohrsCirclePlot(dockPanel);
|
m_mohrsCirclePlot = new RiuMohrsCirclePlot(dockWidget);
|
||||||
dockPanel->setWidget(m_mohrsCirclePlot);
|
dockWidget->setWidget(m_mohrsCirclePlot);
|
||||||
|
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, dockPanel);
|
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||||
mohrsCirclePlotDock = dockPanel;
|
mohrsCirclePlotDock = dockWidget;
|
||||||
|
|
||||||
dockPanel->hide();
|
dockWidget->hide();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockPanel = new QDockWidget("Relative Permeability Plot", this);
|
QDockWidget* dockWidget = new QDockWidget("Relative Permeability Plot", this);
|
||||||
dockPanel->setObjectName("dockRelativePermeabilityPlotPanel");
|
dockWidget->setObjectName(dwt->relPermPlotName());
|
||||||
dockPanel->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
||||||
m_relPermPlotPanel = new RiuRelativePermeabilityPlotPanel(dockPanel);
|
m_relPermPlotPanel = new RiuRelativePermeabilityPlotPanel(dockWidget);
|
||||||
dockPanel->setWidget(m_relPermPlotPanel);
|
dockWidget->setWidget(m_relPermPlotPanel);
|
||||||
|
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, dockPanel);
|
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||||
relPermPlotDock = dockPanel;
|
relPermPlotDock = dockWidget;
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockPanel = new QDockWidget("PVT Plot", this);
|
QDockWidget* dockWidget = new QDockWidget("PVT Plot", this);
|
||||||
dockPanel->setObjectName("dockPvtPlotPanel");
|
dockWidget->setObjectName(dwt->pvtPlotName());
|
||||||
dockPanel->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | Qt::BottomDockWidgetArea);
|
||||||
m_pvtPlotPanel = new RiuPvtPlotPanel(dockPanel);
|
m_pvtPlotPanel = new RiuPvtPlotPanel(dockWidget);
|
||||||
dockPanel->setWidget(m_pvtPlotPanel);
|
dockWidget->setWidget(m_pvtPlotPanel);
|
||||||
|
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, dockPanel);
|
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||||
pvtPlotDock = dockPanel;
|
pvtPlotDock = dockWidget;
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QDockWidget* dockWidget = new QDockWidget("Messages", this);
|
QDockWidget* dockWidget = new QDockWidget("Messages", this);
|
||||||
dockWidget->setObjectName("dockMessages");
|
dockWidget->setObjectName(dwt->messagesName());
|
||||||
m_messagePanel = new RiuMessagePanel(dockWidget);
|
m_messagePanel = new RiuMessagePanel(dockWidget);
|
||||||
dockWidget->setWidget(m_messagePanel);
|
dockWidget->setWidget(m_messagePanel);
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||||
dockWidget->hide();
|
dockWidget->hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
|
setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
|
||||||
setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);
|
setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);
|
||||||
|
|
||||||
// Tabify docks
|
// Tabify docks
|
||||||
@ -714,6 +704,11 @@ void RiuMainWindow::createDockPanels()
|
|||||||
tabifyDockWidget(relPermPlotDock, resultPlotDock);
|
tabifyDockWidget(relPermPlotDock, resultPlotDock);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
QList<QDockWidget*> dockWidgets = findChildren<QDockWidget*>();
|
||||||
|
for (QDockWidget* dock : dockWidgets)
|
||||||
|
{
|
||||||
|
connect(dock->toggleViewAction(), SIGNAL(triggered()), SLOT(slotDockWidgetToggleViewActionTriggered()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -1270,18 +1265,20 @@ void RiuMainWindow::slotBuildWindowActions()
|
|||||||
m_windowMenu->addAction(m_newPropertyView);
|
m_windowMenu->addAction(m_newPropertyView);
|
||||||
m_windowMenu->addSeparator();
|
m_windowMenu->addSeparator();
|
||||||
|
|
||||||
QList<QDockWidget*> dockWidgets = findChildren<QDockWidget*>();
|
auto dwt = RiuDockWidgetTools::instance();
|
||||||
|
|
||||||
int i = 0;
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->projectTreeName()));
|
||||||
foreach (QDockWidget* dock, dockWidgets)
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->propertyEditorName()));
|
||||||
{
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->messagesName()));
|
||||||
if (dock)
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->processMonitorName()));
|
||||||
{
|
|
||||||
if (i == 4) m_windowMenu->addSeparator();
|
m_windowMenu->addSeparator();
|
||||||
m_windowMenu->addAction(dock->toggleViewAction());
|
|
||||||
++i;
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->resultInfoName()));
|
||||||
}
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->resultPlotName()));
|
||||||
}
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->relPermPlotName()));
|
||||||
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->pvtPlotName()));
|
||||||
|
m_windowMenu->addAction(dwt->toggleActionForWidget(this, dwt->mohrsCirclePlotName()));
|
||||||
|
|
||||||
m_windowMenu->addSeparator();
|
m_windowMenu->addSeparator();
|
||||||
QAction* cascadeWindowsAction = new QAction("Cascade Windows", this);
|
QAction* cascadeWindowsAction = new QAction("Cascade Windows", this);
|
||||||
@ -1406,42 +1403,6 @@ void RiuMainWindow::hideAllDockWindows()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
/*void RiuMainWindow::slotOpenMultipleCases()
|
|
||||||
{
|
|
||||||
#if 1
|
|
||||||
QAction* action = caf::CmdFeatureManager::instance()->action("RicCreateGridCaseGroupFeature");
|
|
||||||
CVF_ASSERT(action);
|
|
||||||
|
|
||||||
action->trigger();
|
|
||||||
|
|
||||||
#else // Code to fast generate a test project
|
|
||||||
RiaApplication* app = RiaApplication::instance();
|
|
||||||
|
|
||||||
QStringList gridFileNames;
|
|
||||||
|
|
||||||
if (1)
|
|
||||||
{
|
|
||||||
gridFileNames += RiaDefines::mockModelBasicWithResults();
|
|
||||||
gridFileNames += RiaDefines::mockModelBasicWithResults();
|
|
||||||
gridFileNames += RiaDefines::mockModelBasicWithResults();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
gridFileNames += "d:/Models/Statoil/MultipleRealisations/Case_with_10_timesteps/Real0/BRUGGE_0000.EGRID";
|
|
||||||
gridFileNames += "d:/Models/Statoil/MultipleRealisations/Case_with_10_timesteps/Real10/BRUGGE_0010.EGRID";
|
|
||||||
gridFileNames += "d:/Models/Statoil/MultipleRealisations/Case_with_10_timesteps/Real30/BRUGGE_0030.EGRID";
|
|
||||||
gridFileNames += "d:/Models/Statoil/MultipleRealisations/Case_with_10_timesteps/Real40/BRUGGE_0040.EGRID";
|
|
||||||
}
|
|
||||||
|
|
||||||
app->addEclipseCases(gridFileNames);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -1635,7 +1596,7 @@ void RiuMainWindow::updateUiFieldsFromActiveResult(caf::PdmObjectHandle* objectT
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
void RiuMainWindow::showProcessMonitorDockPanel()
|
void RiuMainWindow::showProcessMonitorDockPanel()
|
||||||
{
|
{
|
||||||
showDockPanel(DOCK_PANEL_NAME_PROCESS_MONITOR);
|
showDockPanel(RiuDockWidgetTools::instance()->processMonitorName());
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
@ -20,9 +20,13 @@
|
|||||||
|
|
||||||
#include "RiaVersionInfo.h"
|
#include "RiaVersionInfo.h"
|
||||||
|
|
||||||
#include <QSettings>
|
#include "RiuDockWidgetTools.h"
|
||||||
#include "cafPdmUiTreeView.h"
|
|
||||||
#include "cafPdmObject.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);
|
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());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -39,28 +39,32 @@ class RiuMainWindowBase : public QMainWindow
|
|||||||
public:
|
public:
|
||||||
RiuMainWindowBase();
|
RiuMainWindowBase();
|
||||||
|
|
||||||
virtual QString mainWindowName() = 0;
|
virtual QString mainWindowName() = 0;
|
||||||
|
|
||||||
virtual void removeViewer( QWidget* viewer ) = 0;
|
virtual void removeViewer( QWidget* viewer ) = 0;
|
||||||
virtual void addViewer(QWidget* viewer, const RimMdiWindowGeometry& windowsGeometry)= 0;
|
virtual void addViewer(QWidget* viewer, const RimMdiWindowGeometry& windowsGeometry)= 0;
|
||||||
virtual void setActiveViewer(QWidget* subWindow) = 0;
|
virtual void setActiveViewer(QWidget* subWindow) = 0;
|
||||||
|
|
||||||
virtual RimMdiWindowGeometry windowGeometryForViewer(QWidget* viewer) = 0;
|
virtual RimMdiWindowGeometry windowGeometryForViewer(QWidget* viewer) = 0;
|
||||||
|
|
||||||
void loadWinGeoAndDockToolBarLayout();
|
void loadWinGeoAndDockToolBarLayout();
|
||||||
void saveWinGeoAndDockToolBarLayout();
|
void saveWinGeoAndDockToolBarLayout();
|
||||||
void showWindow();
|
void showWindow();
|
||||||
|
|
||||||
caf::PdmUiTreeView* projectTreeView() { return m_projectTreeView;}
|
caf::PdmUiTreeView* projectTreeView() { return m_projectTreeView;}
|
||||||
void setExpanded(const caf::PdmUiItem* uiItem, bool expanded = true);
|
void setExpanded(const caf::PdmUiItem* uiItem, bool expanded = true);
|
||||||
|
|
||||||
void selectAsCurrentItem(const caf::PdmObject* object, bool allowActiveViewChange = true);
|
void selectAsCurrentItem(const caf::PdmObject* object, bool allowActiveViewChange = true);
|
||||||
|
|
||||||
|
protected slots:
|
||||||
|
void slotDockWidgetToggleViewActionTriggered();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
caf::PdmUiTreeView* m_projectTreeView;
|
caf::PdmUiTreeView* m_projectTreeView;
|
||||||
bool m_allowActiveViewChangeFromSelection; // To be used in selectedObjectsChanged() to control
|
bool m_allowActiveViewChangeFromSelection; // To be used in selectedObjectsChanged() to control
|
||||||
// whether to select the corresponding active view or not
|
// whether to select the corresponding active view or not
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QString registryFolderName();
|
QString registryFolderName();
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user