mirror of
https://github.com/OPM/ResInsight.git
synced 2026-09-03 20:53:13 -05:00
Legend: Added tick number formatting control
Auto, Fixed and Scientific. Fixed and Scientific respects the precision set. p4#: 21504
This commit is contained in:
@@ -65,6 +65,16 @@ namespace caf {
|
||||
}
|
||||
}
|
||||
|
||||
namespace caf {
|
||||
template<>
|
||||
void AppEnum<RimLegendConfig::NumberFormatType>::setUp()
|
||||
{
|
||||
addItem( RimLegendConfig::AUTO, "AUTO", "Automatic");
|
||||
addItem( RimLegendConfig::FIXED, "FIXED", "Fixed, decimal");
|
||||
addItem( RimLegendConfig::SCIENTIFIC, "SCIENTIFIC", "Scientific notation");
|
||||
setDefault(RimLegendConfig::FIXED);
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
@@ -78,6 +88,8 @@ RimLegendConfig::RimLegendConfig()
|
||||
CAF_PDM_InitObject("Legend Definition", ":/Legend.png", "", "");
|
||||
CAF_PDM_InitField(&m_numLevels, "NumberOfLevels", 8, "Number of levels", "", "","");
|
||||
CAF_PDM_InitField(&m_precision, "Precision", 2, "Precision", "", "","");
|
||||
CAF_PDM_InitField(&m_tickNumberFormat, "TickNumberFormat", caf::AppEnum<RimLegendConfig::NumberFormatType>(FIXED), "Precision", "", "","");
|
||||
|
||||
CAF_PDM_InitField(&m_colorRangeMode, "ColorRangeMode", ColorRangeEnum(NORMAL) , "Color range", "", "", "");
|
||||
CAF_PDM_InitField(&m_mappingMode, "MappingMode", MappingEnum(LINEAR_CONTINUOUS) , "Mapping", "", "", "");
|
||||
CAF_PDM_InitField(&m_rangeMode, "RangeType", caf::AppEnum<RimLegendConfig::RangeModeType>(AUTOMATIC_ALLTIMESTEPS), "Legend range type", "", "Switches between automatic and user defined range on the legend", "");
|
||||
@@ -260,6 +272,10 @@ void RimLegendConfig::updateLegend()
|
||||
}
|
||||
|
||||
m_legend->setScalarMapper(m_currentScalarMapper.p());
|
||||
m_legend->setTickPrecision(m_precision());
|
||||
|
||||
NumberFormatType nft = m_tickNumberFormat();
|
||||
m_legend->setTickFormat((cvf::OverlayScalarMapperLegend::NumberFormat)nft);
|
||||
|
||||
|
||||
if (m_globalAutoMax != cvf::UNDEFINED_DOUBLE )
|
||||
|
||||
@@ -69,6 +69,7 @@ public:
|
||||
LOG10_CONTINUOUS,
|
||||
LOG10_DISCRETE
|
||||
};
|
||||
enum NumberFormatType { AUTO, SCIENTIFIC, FIXED};
|
||||
|
||||
typedef caf::AppEnum<MappingType> MappingEnum;
|
||||
void recreateLegend();
|
||||
@@ -109,6 +110,7 @@ private:
|
||||
// Fields
|
||||
caf::PdmField<int> m_numLevels;
|
||||
caf::PdmField<int> m_precision;
|
||||
caf::PdmField<caf::AppEnum<NumberFormatType> > m_tickNumberFormat;
|
||||
caf::PdmField<caf::AppEnum<RangeModeType> > m_rangeMode;
|
||||
caf::PdmField<double> m_userDefinedMaxValue;
|
||||
caf::PdmField<double> m_userDefinedMinValue;
|
||||
|
||||
Reference in New Issue
Block a user