Refactor related to #1106, #1107, #1109, #1113. Refactored the MDI control

of windows. This might introduce problems.
This commit is contained in:
Jacob Støren
2017-01-17 13:06:57 +01:00
parent 2edc090c89
commit 43249f7af8
30 changed files with 695 additions and 403 deletions

View File

@@ -766,6 +766,7 @@ RimMdiWindowGeometry RiuMainPlotWindow::windowGeometryForWidget(QWidget* widget)
if (widget)
{
geo.mainWindowID = 1;
geo.x = widget->pos().x();
geo.y = widget->pos().y();
geo.width = widget->size().width();

View File

@@ -57,9 +57,9 @@ public:
void initializeGuiNewProjectLoaded();
void cleanupGuiBeforeProjectClose();
void removeViewer( QWidget* viewer );
void addViewer(QWidget* viewer, const RimMdiWindowGeometry& windowsGeometry);
void setActiveViewer(QWidget* subWindow);
void removeViewer( QWidget* viewer ) override;
void addViewer(QWidget* viewer, const RimMdiWindowGeometry& windowsGeometry) override;
void setActiveViewer(QWidget* subWindow) override;
caf::PdmUiTreeView* projectTreeView() { return m_projectTreeView;}
@@ -71,7 +71,7 @@ public:
void setExpanded(const caf::PdmUiItem* uiItem, bool expanded);
RimMdiWindowGeometry windowGeometryForViewer(QWidget* viewer);
RimMdiWindowGeometry windowGeometryForViewer(QWidget* viewer) override;
RimMdiWindowGeometry windowGeometryForWidget(QWidget* widget);
void tileWindows();

View File

@@ -1638,6 +1638,7 @@ RimMdiWindowGeometry RiuMainWindow::windowGeometryForWidget(QWidget* widget)
if (widget)
{
geo.mainWindowID = 0;
geo.x = widget->pos().x();
geo.y = widget->pos().y();
geo.width = widget->size().width();

View File

@@ -77,9 +77,9 @@ public:
void cleanupGuiCaseClose();
void cleanupGuiBeforeProjectClose();
void removeViewer( QWidget* viewer );
void addViewer(QWidget* viewer, const RimMdiWindowGeometry& windowsGeometry);
void setActiveViewer(QWidget* subWindow);
void removeViewer( QWidget* viewer ) override;
void addViewer(QWidget* viewer, const RimMdiWindowGeometry& windowsGeometry) override;
void setActiveViewer(QWidget* subWindow) override;
void setResultInfo(const QString& info) const;

View File

@@ -19,6 +19,7 @@
#pragma once
#include <QMainWindow>
struct RimMdiWindowGeometry;
class RiuMainWindowBase : public QMainWindow
{
@@ -29,6 +30,12 @@ public:
virtual QString mainWindowName() = 0;
virtual void removeViewer( QWidget* viewer ) = 0;
virtual void addViewer(QWidget* viewer, const RimMdiWindowGeometry& windowsGeometry)= 0;
virtual void setActiveViewer(QWidget* subWindow) = 0;
virtual RimMdiWindowGeometry windowGeometryForViewer(QWidget* viewer) = 0;
void loadWinGeoAndDockToolBarLayout();
void saveWinGeoAndDockToolBarLayout();
void showWindow();

View File

@@ -151,6 +151,7 @@ RiuSummaryQwtPlot::~RiuSummaryQwtPlot()
if (m_plotDefinition)
{
m_plotDefinition->detachAllCurves();
m_plotDefinition->handleViewerDeletion();
}

View File

@@ -182,8 +182,7 @@ RiuViewer::~RiuViewer()
{
if (m_rimView)
{
m_rimView->showWindow = false;
m_rimView->uiCapability()->updateUiIconFromToggleField();
m_rimView->handleViewerDeletion();
m_rimView->cameraPosition = m_mainCamera->viewMatrix();
m_rimView->cameraPointOfInterest = pointOfInterest();

View File

@@ -65,6 +65,7 @@ RiuWellLogPlot::~RiuWellLogPlot()
{
if (m_plotDefinition)
{
m_plotDefinition->detachAllCurves();
m_plotDefinition->handleViewerDeletion();
}
}

View File

@@ -72,8 +72,8 @@ private slots:
private:
QHBoxLayout* m_layout;
QScrollBar* m_scrollBar;
QList<QwtLegend*> m_legends;
QList<RiuWellLogTrack*> m_trackPlots;
QList<QPointer<QwtLegend> > m_legends;
QList<QPointer<RiuWellLogTrack> > m_trackPlots;
caf::PdmPointer<RimWellLogPlot> m_plotDefinition;
QTimer* m_scheduleUpdateChildrenLayoutTimer;
};