mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#8715 Fix multi summary title and legend updates
This commit is contained in:
parent
2aec91e66d
commit
f45637b7f0
@ -101,6 +101,9 @@ void RimSummaryMultiPlot::addPlot( RimPlot* plot )
|
|||||||
CVF_ASSERT( sumPlot != nullptr );
|
CVF_ASSERT( sumPlot != nullptr );
|
||||||
if ( sumPlot )
|
if ( sumPlot )
|
||||||
{
|
{
|
||||||
|
// Not required to connect signal here, as RimSummaryMultiPlot::insertPlot() will always be called from
|
||||||
|
// RimMultiPlot::addPlot()
|
||||||
|
|
||||||
RimMultiPlot::addPlot( plot );
|
RimMultiPlot::addPlot( plot );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -114,6 +117,7 @@ void RimSummaryMultiPlot::insertPlot( RimPlot* plot, size_t index )
|
|||||||
CVF_ASSERT( sumPlot != nullptr );
|
CVF_ASSERT( sumPlot != nullptr );
|
||||||
if ( sumPlot )
|
if ( sumPlot )
|
||||||
{
|
{
|
||||||
|
sumPlot->curvesChanged.connect( this, &RimSummaryMultiPlot::onSubPlotChanged );
|
||||||
RimMultiPlot::insertPlot( plot, index );
|
RimMultiPlot::insertPlot( plot, index );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -131,9 +135,9 @@ void RimSummaryMultiPlot::addPlot( const std::vector<caf::PdmObjectHandle*>& obj
|
|||||||
RimSummaryPlot* plot = new RimSummaryPlot();
|
RimSummaryPlot* plot = new RimSummaryPlot();
|
||||||
plot->enableAutoPlotTitle( true );
|
plot->enableAutoPlotTitle( true );
|
||||||
|
|
||||||
addPlot( plot );
|
|
||||||
|
|
||||||
plot->handleDroppedObjects( objects );
|
plot->handleDroppedObjects( objects );
|
||||||
|
|
||||||
|
addPlot( plot );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -508,6 +512,19 @@ bool RimSummaryMultiPlot::handleGlobalWheelEvent( QWheelEvent* wheelEvent )
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RimSummaryMultiPlot::initAfterRead()
|
||||||
|
{
|
||||||
|
RimMultiPlot::initAfterRead();
|
||||||
|
|
||||||
|
for ( auto plot : summaryPlots() )
|
||||||
|
{
|
||||||
|
plot->curvesChanged.connect( this, &RimSummaryMultiPlot::onSubPlotChanged );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -560,3 +577,12 @@ void RimSummaryMultiPlot::duplicate()
|
|||||||
{
|
{
|
||||||
duplicatePlot.send( this );
|
duplicatePlot.send( this );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RimSummaryMultiPlot::onSubPlotChanged( const caf::SignalEmitter* emitter )
|
||||||
|
{
|
||||||
|
updatePlotWindowTitle();
|
||||||
|
applyPlotWindowTitleToWidgets();
|
||||||
|
}
|
||||||
|
@ -72,6 +72,9 @@ protected:
|
|||||||
bool handleGlobalKeyEvent( QKeyEvent* keyEvent ) override;
|
bool handleGlobalKeyEvent( QKeyEvent* keyEvent ) override;
|
||||||
bool handleGlobalWheelEvent( QWheelEvent* wheelEvent ) override;
|
bool handleGlobalWheelEvent( QWheelEvent* wheelEvent ) override;
|
||||||
|
|
||||||
|
|
||||||
|
void initAfterRead() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||||
@ -87,6 +90,7 @@ private:
|
|||||||
void updatePlotWindowTitle() override;
|
void updatePlotWindowTitle() override;
|
||||||
|
|
||||||
void duplicate();
|
void duplicate();
|
||||||
|
void onSubPlotChanged( const caf::SignalEmitter* emitter );
|
||||||
|
|
||||||
private:
|
private:
|
||||||
caf::PdmField<bool> m_autoPlotTitles;
|
caf::PdmField<bool> m_autoPlotTitles;
|
||||||
|
@ -97,6 +97,7 @@ CAF_PDM_SOURCE_INIT( RimSummaryPlot, "SummaryPlot" );
|
|||||||
RimSummaryPlot::RimSummaryPlot( bool isCrossPlot )
|
RimSummaryPlot::RimSummaryPlot( bool isCrossPlot )
|
||||||
: RimPlot()
|
: RimPlot()
|
||||||
, m_isCrossPlot( isCrossPlot )
|
, m_isCrossPlot( isCrossPlot )
|
||||||
|
, curvesChanged( this )
|
||||||
{
|
{
|
||||||
CAF_PDM_InitScriptableObject( "Summary Plot", ":/SummaryPlotLight16x16.png", "", "A Summary Plot" );
|
CAF_PDM_InitScriptableObject( "Summary Plot", ":/SummaryPlotLight16x16.png", "", "A Summary Plot" );
|
||||||
|
|
||||||
@ -1289,6 +1290,8 @@ void RimSummaryPlot::deleteCurves( const std::vector<RimSummaryCurve*>& curves )
|
|||||||
RiuPlotMainWindowTools::refreshToolbars();
|
RiuPlotMainWindowTools::refreshToolbars();
|
||||||
|
|
||||||
updateCaseNameHasChanged();
|
updateCaseNameHasChanged();
|
||||||
|
|
||||||
|
curvesChanged.send();
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -2046,6 +2049,8 @@ void RimSummaryPlot::handleDroppedObjects( const std::vector<caf::PdmObjectHandl
|
|||||||
{
|
{
|
||||||
applyDefaultCurveAppearances();
|
applyDefaultCurveAppearances();
|
||||||
loadDataAndUpdate();
|
loadDataAndUpdate();
|
||||||
|
|
||||||
|
curvesChanged.send();
|
||||||
}
|
}
|
||||||
|
|
||||||
updateConnectedEditors();
|
updateConnectedEditors();
|
||||||
@ -2426,6 +2431,7 @@ bool RimSummaryPlot::handleGlobalKeyEvent( QKeyEvent* keyEvent )
|
|||||||
void RimSummaryPlot::onCurveCollectionChanged( const SignalEmitter* emitter )
|
void RimSummaryPlot::onCurveCollectionChanged( const SignalEmitter* emitter )
|
||||||
{
|
{
|
||||||
updateStackedCurveData();
|
updateStackedCurveData();
|
||||||
|
if ( plotWidget() ) plotWidget()->scheduleReplot();
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
@ -79,6 +79,9 @@ class RimSummaryPlot : public RimPlot, public RimSummaryDataSourceStepping
|
|||||||
Q_OBJECT;
|
Q_OBJECT;
|
||||||
CAF_PDM_HEADER_INIT;
|
CAF_PDM_HEADER_INIT;
|
||||||
|
|
||||||
|
public:
|
||||||
|
caf::Signal<> curvesChanged;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
RimSummaryPlot( bool isCrossPlot = false );
|
RimSummaryPlot( bool isCrossPlot = false );
|
||||||
~RimSummaryPlot() override;
|
~RimSummaryPlot() override;
|
||||||
|
Loading…
Reference in New Issue
Block a user