diff --git a/ApplicationLibCode/Commands/SummaryPlotCommands/RicPasteAsciiDataToSummaryPlotFeature.cpp b/ApplicationLibCode/Commands/SummaryPlotCommands/RicPasteAsciiDataToSummaryPlotFeature.cpp index d00f21b663..07771cb6ec 100644 --- a/ApplicationLibCode/Commands/SummaryPlotCommands/RicPasteAsciiDataToSummaryPlotFeature.cpp +++ b/ApplicationLibCode/Commands/SummaryPlotCommands/RicPasteAsciiDataToSummaryPlotFeature.cpp @@ -180,11 +180,11 @@ std::vector RicPasteAsciiDataToSummaryPlotFeature::parseCurv curve->setValues( parser.columnInfo( i )->values ); if ( curvePrefix.isEmpty() ) { - curve->setTitle( QString::fromStdString( col->columnName() ) ); + curve->setCustomName( QString::fromStdString( col->columnName() ) ); } else { - curve->setTitle( QString( "%1: %2" ).arg( curvePrefix ).arg( QString::fromStdString( col->columnName() ) ) ); + curve->setCustomName( QString( "%1: %2" ).arg( curvePrefix ).arg( QString::fromStdString( col->columnName() ) ) ); } // Appearance curve->setSymbol( parseOptions.curveSymbol ); diff --git a/ApplicationLibCode/ProjectDataModel/RimPlotCurve.cpp b/ApplicationLibCode/ProjectDataModel/RimPlotCurve.cpp index 2a87cd874e..13433e3c11 100644 --- a/ApplicationLibCode/ProjectDataModel/RimPlotCurve.cpp +++ b/ApplicationLibCode/ProjectDataModel/RimPlotCurve.cpp @@ -789,6 +789,9 @@ void RimPlotCurve::updateLegendsInPlot() } } +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- void RimPlotCurve::setTitle( const QString& title ) { if ( m_plotCurve ) m_plotCurve->setTitle( title ); diff --git a/ApplicationLibCode/ProjectDataModel/RimPlotCurve.h b/ApplicationLibCode/ProjectDataModel/RimPlotCurve.h index 91fea83e54..14a6d94ac4 100644 --- a/ApplicationLibCode/ProjectDataModel/RimPlotCurve.h +++ b/ApplicationLibCode/ProjectDataModel/RimPlotCurve.h @@ -121,7 +121,7 @@ public: virtual bool xValueRange( double* minimumValue, double* maximumValue ) const; virtual bool yValueRange( double* minimumValue, double* maximumValue ) const; - virtual void setTitle( const QString& title ); + void setTitle( const QString& title ); int dataSize() const; std::pair sample( int index ) const; diff --git a/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.cpp b/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.cpp index 472756fd5f..9378567723 100644 --- a/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.cpp +++ b/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.cpp @@ -19,6 +19,7 @@ #include "RimAsciiDataCurve.h" #include "RiaDefines.h" + #include "RimEclipseResultCase.h" #include "RimProject.h" #include "RimSummaryCase.h" @@ -48,7 +49,7 @@ RimAsciiDataCurve::RimAsciiDataCurve() CAF_PDM_InitFieldNoDefault( &m_values, "Values", "Values" ); m_values.uiCapability()->setUiEditorTypeName( caf::PdmUiListEditor::uiEditorTypeName() ); - CAF_PDM_InitFieldNoDefault( &m_title, "Title", "Title" ); + CAF_PDM_InitFieldNoDefault( &m_title_OBSOLETE, "Title", "Title" ); setSymbolSkipDistance( 10.0f ); setLineThickness( 2 ); @@ -103,14 +104,6 @@ RiuPlotAxis RimAsciiDataCurve::yAxis() const return RiuPlotAxis( m_plotAxis() ); } -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -QString RimAsciiDataCurve::createCurveAutoName() -{ - return m_title(); -} - //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- @@ -192,6 +185,23 @@ void RimAsciiDataCurve::defineUiOrdering( QString uiConfigName, caf::PdmUiOrderi uiOrdering.skipRemainingFields( true ); } +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimAsciiDataCurve::initAfterRead() +{ + if ( RimProject::current()->isProjectFileVersionEqualOrOlderThan( "2024.09.2" ) && + ( m_namingMethod() == RiaDefines::ObjectNamingMethod::AUTO ) ) + { + setCustomName( m_title_OBSOLETE ); + } + else + { + // Use default curve name defined in base class. CUSTOM is the only valid naming method for this class, see calculateValueOptions() + setCustomName( createCurveAutoName() ); + } +} + //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- @@ -216,14 +226,6 @@ void RimAsciiDataCurve::setValues( const std::vector& values ) m_values = values; } -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RimAsciiDataCurve::setTitle( const QString& title ) -{ - m_title = title; -} - //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- @@ -256,3 +258,17 @@ void RimAsciiDataCurve::fieldChangedByUi( const caf::PdmFieldHandle* changedFiel plot->updateAxes(); } } + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +QList RimAsciiDataCurve::calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions ) +{ + QList options; + if ( fieldNeedingOptions == &m_namingMethod ) + { + options.push_back( caf::PdmOptionItemInfo( caf::AppEnum::uiText( RiaDefines::ObjectNamingMethod::CUSTOM ), + RiaDefines::ObjectNamingMethod::CUSTOM ) ); + } + return options; +} diff --git a/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.h b/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.h index c1647cedcd..75624c9db9 100644 --- a/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.h +++ b/ApplicationLibCode/ProjectDataModel/Summary/RimAsciiDataCurve.h @@ -53,20 +53,17 @@ public: void setTimeSteps( const std::vector& timeSteps ); void setValues( const std::vector& values ); - void setTitle( const QString& title ) override; - -protected: - // RimPlotCurve overrides - - QString createCurveAutoName() override; - void updateZoomInParentPlot() override; - void onLoadDataAndUpdate( bool updateParentPlot ) override; - void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override; private: + void updateZoomInParentPlot() override; + void onLoadDataAndUpdate( bool updateParentPlot ) override; + void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override; + void initAfterRead() override; + bool curveData( std::vector* timeSteps, std::vector* values ) const; void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override; + QList calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions ) override; private: // Fields @@ -74,5 +71,5 @@ private: caf::PdmField> m_timeSteps; caf::PdmField> m_values; - caf::PdmField m_title; + caf::PdmField m_title_OBSOLETE; };