diff --git a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.cpp b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.cpp index c3ed8f08a3..25a1fc3cbc 100644 --- a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.cpp +++ b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.cpp @@ -217,7 +217,7 @@ void RimGridCrossPlot::calculateZoomRangeAndUpdateQwt() //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RimGridCrossPlot::reattachCurvesToQwtAndReplot() +void RimGridCrossPlot::reattachAllCurves() { if ( m_plotWidget ) { diff --git a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.h b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.h index bd403aad96..f188c6ade2 100644 --- a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.h +++ b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlot.h @@ -74,15 +74,17 @@ public: QImage snapshotWindowContent() override; void zoomAll() override; void calculateZoomRangeAndUpdateQwt(); - void reattachCurvesToQwtAndReplot(); QString createAutoName() const override; bool showInfoBox() const; caf::PdmFieldHandle* userDescriptionField() override; - void detachAllCurves() override; - void performAutoNameUpdate() override; - void updateCurveNamesAndPlotTitle(); - void swapAxes(); + + void detachAllCurves() override; + void reattachAllCurves() override; + + void performAutoNameUpdate() override; + void updateCurveNamesAndPlotTitle(); + void swapAxes(); QString asciiTitleForPlotExport( int dataSetIndex ) const; QString asciiDataForGridCrossPlotExport( int dataSetIndex ) const; diff --git a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotCurve.cpp b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotCurve.cpp index 578d2f6f68..9a83895aaa 100644 --- a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotCurve.cpp +++ b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotCurve.cpp @@ -147,7 +147,7 @@ void RimGridCrossPlotCurve::updateLegendsInPlot() this->firstAncestorOrThisOfType( plot ); if ( plot ) { - plot->reattachCurvesToQwtAndReplot(); + plot->reattachAllCurves(); } RimPlotCurve::updateLegendsInPlot(); } diff --git a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotDataSet.cpp b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotDataSet.cpp index d5d7f52c8f..5acfaf89a1 100644 --- a/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotDataSet.cpp +++ b/ApplicationCode/ProjectDataModel/GridCrossPlots/RimGridCrossPlotDataSet.cpp @@ -1216,7 +1216,7 @@ void RimGridCrossPlotDataSet::triggerPlotNameUpdateAndReplot() if ( parent ) { parent->updateCurveNamesAndPlotTitle(); - parent->reattachCurvesToQwtAndReplot(); + parent->reattachAllCurves(); parent->updateConnectedEditors(); } } diff --git a/ApplicationCode/ProjectDataModel/RimPlotInterface.h b/ApplicationCode/ProjectDataModel/RimPlotInterface.h index 8538fcb6ab..af3e554ec8 100644 --- a/ApplicationCode/ProjectDataModel/RimPlotInterface.h +++ b/ApplicationCode/ProjectDataModel/RimPlotInterface.h @@ -94,8 +94,9 @@ public: virtual QString asciiDataForPlotExport() const; - virtual void createPlotWidget() = 0; - virtual void detachAllCurves() = 0; + virtual void createPlotWidget() = 0; + virtual void detachAllCurves() = 0; + virtual void reattachAllCurves() = 0; virtual caf::PdmObject* findPdmObjectFromQwtCurve( const QwtPlotCurve* curve ) const = 0; diff --git a/ApplicationCode/ProjectDataModel/RimWellLogTrack.h b/ApplicationCode/ProjectDataModel/RimWellLogTrack.h index 0c13a4bb62..3cc57aee2a 100644 --- a/ApplicationCode/ProjectDataModel/RimWellLogTrack.h +++ b/ApplicationCode/ProjectDataModel/RimWellLogTrack.h @@ -125,7 +125,7 @@ public: void createPlotWidget(); void detachAllCurves(); - void reattachAllCurves(); + void reattachAllCurves() override; void loadDataAndUpdate() override; diff --git a/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlot.h b/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlot.h index ce97bd4809..95dc39d346 100644 --- a/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlot.h +++ b/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlot.h @@ -102,7 +102,7 @@ public: size_t curveCount() const; void detachAllCurves() override; - void reattachAllCurves(); + void reattachAllCurves() override; void updateCaseNameHasChanged(); void updateAxes() override; diff --git a/ApplicationCode/UserInterface/RiuQwtPlotWidget.cpp b/ApplicationCode/UserInterface/RiuQwtPlotWidget.cpp index 42736be11e..68cd79b25b 100644 --- a/ApplicationCode/UserInterface/RiuQwtPlotWidget.cpp +++ b/ApplicationCode/UserInterface/RiuQwtPlotWidget.cpp @@ -549,6 +549,10 @@ bool RiuQwtPlotWidget::eventFilter( QObject* watched, QEvent* event ) void RiuQwtPlotWidget::hideEvent( QHideEvent* event ) { resetCurveHighlighting(); + if ( plotDefinition() ) + { + plotDefinition()->detachAllCurves(); + } QwtPlot::hideEvent( event ); } @@ -563,19 +567,11 @@ void RiuQwtPlotWidget::showEvent( QShowEvent* event ) m_canvasStyleSheet = createCanvasStyleSheet(); m_canvasStyleSheet.applyToWidget( canvas() ); - QwtPlot::showEvent( event ); -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RiuQwtPlotWidget::closeEvent( QCloseEvent* event ) -{ if ( plotDefinition() ) { - plotDefinition()->detachAllCurves(); + plotDefinition()->reattachAllCurves(); } - QwtPlot::closeEvent( event ); + QwtPlot::showEvent( event ); } //-------------------------------------------------------------------------------------------------- diff --git a/ApplicationCode/UserInterface/RiuQwtPlotWidget.h b/ApplicationCode/UserInterface/RiuQwtPlotWidget.h index 5db20b8afa..05e5c0da8a 100644 --- a/ApplicationCode/UserInterface/RiuQwtPlotWidget.h +++ b/ApplicationCode/UserInterface/RiuQwtPlotWidget.h @@ -109,7 +109,6 @@ protected: bool eventFilter( QObject* watched, QEvent* event ) override; void hideEvent( QHideEvent* event ) override; void showEvent( QShowEvent* event ) override; - void closeEvent( QCloseEvent* event ) override; void applyAxisTitleToQwt( QwtPlot::Axis axis );