Remove duplicate add/remove/setActive viewer methods from MainWindow.

(#408) Added Save Load of WellLog Plot window geometry also
This commit is contained in:
Jacob Støren
2015-09-02 15:53:49 +02:00
parent 1282766427
commit 30e2495849
8 changed files with 46 additions and 84 deletions

View File

@@ -1143,25 +1143,7 @@ void RiuMainWindow::removeRecentFiles(const QString& file)
///
//--------------------------------------------------------------------------------------------------
QMdiSubWindow* RiuMainWindow::findMdiSubWindow(RiuViewer* viewer)
{
QList<QMdiSubWindow*> subws = m_mdiArea->subWindowList();
int i;
for (i = 0; i < subws.size(); ++i)
{
if (subws[i]->widget() == viewer->layoutWidget())
{
return subws[i];
}
}
return NULL;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QMdiSubWindow* RiuMainWindow::findMdiSubWindow(RiuWellLogPlot* viewer)
QMdiSubWindow* RiuMainWindow::findMdiSubWindow(QWidget* viewer)
{
QList<QMdiSubWindow*> subws = m_mdiArea->subWindowList();
int i;
@@ -1176,11 +1158,10 @@ QMdiSubWindow* RiuMainWindow::findMdiSubWindow(RiuWellLogPlot* viewer)
return NULL;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindow::removeViewer(RiuViewer* viewer)
void RiuMainWindow::removeViewer(QWidget* viewer)
{
#if 0
m_CentralFrame->layout()->removeWidget(viewer->layoutWidget());
@@ -1194,12 +1175,12 @@ void RiuMainWindow::removeViewer(RiuViewer* viewer)
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindow::addViewer(RiuViewer* viewer, const std::vector<int>& windowsGeometry)
void RiuMainWindow::addViewer(QWidget* viewer, const std::vector<int>& windowsGeometry)
{
#if 0
m_CentralFrame->layout()->addWidget(viewer->layoutWidget());
#else
QMdiSubWindow * subWin = m_mdiArea->addSubWindow(viewer->layoutWidget());
QMdiSubWindow * subWin = m_mdiArea->addSubWindow(viewer);
if (windowsGeometry.size() == 5)
{
@@ -1234,44 +1215,6 @@ void RiuMainWindow::addViewer(RiuViewer* viewer, const std::vector<int>& windows
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindow::addWellLogViewer(RiuWellLogPlot* viewer)
{
QMdiSubWindow * subWin = m_mdiArea->addSubWindow(viewer);
subWin->resize(400, 400);
if (m_mdiArea->subWindowList().size() == 1)
{
// Show first view maximized
subWin->showMaximized();
}
else
{
subWin->show();
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindow::removeWellLogViewer(RiuWellLogPlot* viewer)
{
m_mdiArea->removeSubWindow(findMdiSubWindow(viewer));
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindow::setActiveWellLogViewer(RiuWellLogPlot* viewer)
{
QMdiSubWindow* subWindow = findMdiSubWindow(viewer);
if (subWindow)
{
m_mdiArea->setActiveSubWindow(subWindow);
}
}
//--------------------------------------------------------------------------------------------------
@@ -1533,7 +1476,7 @@ void RiuMainWindow::slotEditPreferences()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindow::setActiveViewer(RiuViewer* viewer)
void RiuMainWindow::setActiveViewer(QWidget* viewer)
{
QMdiSubWindow * swin = findMdiSubWindow(viewer);
if (swin) m_mdiArea->setActiveSubWindow(swin);
@@ -1639,7 +1582,7 @@ void RiuMainWindow::selectedObjectsChanged()
// Set focus in MDI area to this window if it exists
if (selectedReservoirView->viewer())
{
setActiveViewer(selectedReservoirView->viewer());
setActiveViewer(selectedReservoirView->viewer()->layoutWidget());
}
// m_projectTreeView->selectAsCurrentItem(uiItems[0]); TODO: Is this neccesary ? Was done in the old tree view.
@@ -2173,7 +2116,7 @@ void RiuMainWindow::customMenuRequested(const QPoint& pos)
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
std::vector<int> RiuMainWindow::windowGeometryForViewer(RiuViewer* viewer)
std::vector<int> RiuMainWindow::windowGeometryForViewer(QWidget* viewer)
{
std::vector<int> geo;

View File

@@ -79,13 +79,9 @@ public:
void initializeGuiNewProjectLoaded();
void cleanupGuiBeforeProjectClose();
void removeViewer( RiuViewer* viewer );
void addViewer(RiuViewer* viewer, const std::vector<int>& windowsGeometry);
void setActiveViewer(RiuViewer* subWindow);
void addWellLogViewer(RiuWellLogPlot* viewer);
void removeWellLogViewer(RiuWellLogPlot* viewer);
void setActiveWellLogViewer(RiuWellLogPlot* subWindow);
void removeViewer( QWidget* viewer );
void addViewer(QWidget* viewer, const std::vector<int>& windowsGeometry);
void setActiveViewer(QWidget* subWindow);
void setResultInfo(const QString& info) const;
@@ -113,7 +109,7 @@ public:
void addRecentFiles(const QString& file);
void removeRecentFiles(const QString& file);
std::vector<int> windowGeometryForViewer(RiuViewer* viewer);
std::vector<int> windowGeometryForViewer(QWidget* viewer);
protected:
virtual void closeEvent(QCloseEvent* event);
@@ -129,8 +125,7 @@ private:
void updateRecentFileActions();
QMdiSubWindow* findMdiSubWindow(RiuViewer* viewer);
QMdiSubWindow* findMdiSubWindow(RiuWellLogPlot* viewer);
QMdiSubWindow* findMdiSubWindow(QWidget* viewer);
void storeTreeViewState();
void restoreTreeViewState();