mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Use vector instead of set to make to avoid sorting of quantities
The plot title for cross plots should use insertion order to make sure the title is displayed correctly
This commit is contained in:
parent
660051954a
commit
6e41ef8af9
@ -70,15 +70,16 @@ void RiaSummaryAddressAnalyzer::appendAddresses( const std::vector<RiaSummaryCur
|
||||
|
||||
for ( const auto& adr : addresses )
|
||||
{
|
||||
analyzeSingleAddress( adr.summaryAddressX() );
|
||||
// Use Y address first, to make sure the ordering of cross plot names is correct
|
||||
analyzeSingleAddress( adr.summaryAddressY() );
|
||||
analyzeSingleAddress( adr.summaryAddressX() );
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
std::set<std::string> RiaSummaryAddressAnalyzer::quantities() const
|
||||
std::vector<std::string> RiaSummaryAddressAnalyzer::quantities() const
|
||||
{
|
||||
return m_quantities;
|
||||
}
|
||||
@ -445,7 +446,7 @@ void RiaSummaryAddressAnalyzer::computeQuantityNamesWithHistory() const
|
||||
{
|
||||
std::string correspondingHistoryCurve = correspondingHistorySummaryCurveName( s );
|
||||
|
||||
if ( m_quantities.find( correspondingHistoryCurve ) != m_quantities.end() )
|
||||
if ( std::find( m_quantities.begin(), m_quantities.end(), correspondingHistoryCurve ) != m_quantities.end() )
|
||||
{
|
||||
// Insert the curve name without H
|
||||
if ( RiaStdStringTools::endsWith( s, historyIdentifier ) )
|
||||
@ -488,7 +489,11 @@ void RiaSummaryAddressAnalyzer::analyzeSingleAddress( const RifEclipseSummaryAdd
|
||||
|
||||
if ( !address.vectorName().empty() )
|
||||
{
|
||||
m_quantities.insert( address.vectorName() );
|
||||
// The ordering of the quantities is used when creating titles of plots
|
||||
if ( std::find( m_quantities.begin(), m_quantities.end(), address.vectorName() ) == m_quantities.end() )
|
||||
{
|
||||
m_quantities.push_back( address.vectorName() );
|
||||
}
|
||||
}
|
||||
|
||||
if ( !address.groupName().empty() )
|
||||
|
@ -44,7 +44,7 @@ public:
|
||||
|
||||
void clear();
|
||||
|
||||
std::set<std::string> quantities() const;
|
||||
std::vector<std::string> quantities() const;
|
||||
std::set<std::string> quantityNamesWithHistory() const;
|
||||
std::set<std::string> quantityNamesNoHistory() const;
|
||||
|
||||
@ -93,7 +93,7 @@ private:
|
||||
static std::vector<std::vector<RifEclipseSummaryAddress>> valuesInMap( const std::multimap<int, RifEclipseSummaryAddress>& map );
|
||||
|
||||
private:
|
||||
std::set<std::string> m_quantities;
|
||||
std::vector<std::string> m_quantities;
|
||||
mutable std::set<std::string> m_quantitiesWithMatchingHistory;
|
||||
mutable std::set<std::string> m_quantitiesNoMatchingHistory;
|
||||
|
||||
|
@ -127,14 +127,14 @@ bool RimMultiSummaryPlotNameHelper::isCompletionInTitle() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
std::set<std::string> RimMultiSummaryPlotNameHelper::vectorNames() const
|
||||
std::vector<std::string> RimMultiSummaryPlotNameHelper::vectorNames() const
|
||||
{
|
||||
std::set<std::string> allNames;
|
||||
std::vector<std::string> allNames;
|
||||
|
||||
for ( auto nameHelper : m_nameHelpers )
|
||||
{
|
||||
auto nameHelperVectorNames = nameHelper->vectorNames();
|
||||
allNames.insert( nameHelperVectorNames.begin(), nameHelperVectorNames.end() );
|
||||
allNames.insert( allNames.end(), nameHelperVectorNames.begin(), nameHelperVectorNames.end() );
|
||||
}
|
||||
|
||||
return allNames;
|
||||
|
@ -40,7 +40,7 @@ public:
|
||||
bool isSegmentInTitle() const override;
|
||||
bool isCompletionInTitle() const override;
|
||||
|
||||
std::set<std::string> vectorNames() const override;
|
||||
std::vector<std::string> vectorNames() const override;
|
||||
QString caseName() const override;
|
||||
|
||||
std::string titleVectorName() const override;
|
||||
|
@ -48,7 +48,7 @@ public:
|
||||
virtual bool isSegmentInTitle() const = 0;
|
||||
virtual bool isCompletionInTitle() const = 0;
|
||||
|
||||
virtual std::set<std::string> vectorNames() const = 0;
|
||||
virtual std::vector<std::string> vectorNames() const = 0;
|
||||
virtual QString caseName() const = 0;
|
||||
|
||||
virtual std::string titleVectorName() const = 0;
|
||||
|
@ -207,6 +207,7 @@ public:
|
||||
|
||||
RimPlotAxisPropertiesInterface* axisPropertiesForPlotAxis( RiuPlotAxis plotAxis ) const;
|
||||
RimPlotAxisProperties* addNewAxisProperties( RiaDefines::PlotAxis, const QString& name );
|
||||
RimPlotAxisProperties* addNewAxisProperties( RiuPlotAxis plotAxis, const QString& name );
|
||||
void findOrAssignPlotAxisX( RimSummaryCurve* curve );
|
||||
|
||||
std::vector<RimPlotCurve*> visibleCurvesForLegend() override;
|
||||
@ -240,8 +241,6 @@ private:
|
||||
|
||||
void connectCurveToPlot( RimSummaryCurve* curve, bool update, bool autoAssignPlotAxis );
|
||||
|
||||
RimPlotAxisProperties* addNewAxisProperties( RiuPlotAxis plotAxis, const QString& name );
|
||||
|
||||
protected:
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
void childFieldChangedByUi( const caf::PdmFieldHandle* changedChildField ) override;
|
||||
@ -308,7 +307,6 @@ private:
|
||||
RimSummaryCase* summaryCase,
|
||||
const RifEclipseSummaryAddress& addressX,
|
||||
RimSummaryCase* summaryCaseX );
|
||||
RimEnsembleCurveSet* addNewEnsembleCurve( const RiaSummaryCurveAddress& curveAddress, RimSummaryCaseCollection* ensemble );
|
||||
|
||||
void updateStackedCurveData();
|
||||
bool updateStackedCurveDataForAxis( RiuPlotAxis plotAxis );
|
||||
|
@ -193,7 +193,7 @@ bool RimSummaryPlotNameHelper::isCompletionInTitle() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
std::set<std::string> RimSummaryPlotNameHelper::vectorNames() const
|
||||
std::vector<std::string> RimSummaryPlotNameHelper::vectorNames() const
|
||||
{
|
||||
return m_analyzer->quantities();
|
||||
}
|
||||
|
@ -61,7 +61,7 @@ public:
|
||||
bool isSegmentInTitle() const override;
|
||||
bool isCompletionInTitle() const override;
|
||||
|
||||
std::set<std::string> vectorNames() const override;
|
||||
std::vector<std::string> vectorNames() const override;
|
||||
QString caseName() const override;
|
||||
|
||||
std::string titleVectorName() const override;
|
||||
|
Loading…
Reference in New Issue
Block a user