Add result type and create and use custom legend if possible

* Update submodule
* Use postfix functions and add custom color legend

* Add type to RigEclipseResultAddress
Read types from ROFF and create default legend based on type or custom created legend.

* Use caseId to connect legend configuration to result in a case
This commit is contained in:
Magne Sjaastad
2023-05-09 11:41:56 +02:00
committed by GitHub
parent 8c91f1b1ac
commit f70d2c4949
34 changed files with 565 additions and 356 deletions

View File

@@ -47,9 +47,14 @@ public:
bool isStandardColorLegend( RimColorLegend* colorLegend );
void deleteCustomColorLegends();
RimColorLegend* createColorLegend( const QString& name, const std::vector<std::pair<int, QString>>& valuesAndNames );
void deleteColorLegend( int caseId, const QString& resultName );
void setDefaultColorLegendForResult( int caseId, const QString& resultName, RimColorLegend* colorLegend );
std::vector<RimColorLegend*> allColorLegends() const;
RimColorLegend* findByName( const QString& name ) const;
RimColorLegend* findDefaultLegendForResult( int caseId, const QString& resultName ) const;
protected:
void initAfterRead() override;
@@ -58,6 +63,10 @@ private:
RimColorLegendItem* createColorLegendItem( const QString& name, int r, int g, int b ) const;
RimColorLegend* createRockTypeColorLegend() const;
static QString createLookupKey( int caseId, const QString& resultName );
caf::PdmChildArrayField<RimColorLegend*> m_standardColorLegends; // ResInsight standard (built-in) legends
caf::PdmChildArrayField<RimColorLegend*> m_customColorLegends; // user specified legends
std::map<QString, caf::PdmPointer<RimColorLegend>> m_defaultColorLegendNameForResult;
};