Add: Formulas now allowed in the following settings:

LineWidth
LineLength
StartAngle
RotationAngle
Angle
ImageRotate
MinValue
MaxValue
IfAboveValue
IfEqualValue
IfBelowValue
This commit is contained in:
jsmorley 2012-02-19 15:45:43 +00:00
parent eca9250655
commit 3c98527338
5 changed files with 13 additions and 13 deletions

View File

@ -152,18 +152,18 @@ void CMeasure::ReadConfig(CConfigParser& parser, const WCHAR* section)
m_UpdateCounter = m_UpdateDivider = updateDivider;
}
m_MinValue = parser.ReadFloat(section, L"MinValue", m_MinValue);
m_MaxValue = parser.ReadFloat(section, L"MaxValue", m_MaxValue);
m_MinValue = parser.ReadFormula(section, L"MinValue", m_MinValue);
m_MaxValue = parser.ReadFormula(section, L"MaxValue", m_MaxValue);
// The ifabove/ifbelow define actions that are ran when the value goes above/below the given number.
m_IfAboveValue = parser.ReadFloat(section, L"IfAboveValue", 0.0);
m_IfAboveValue = parser.ReadFormula(section, L"IfAboveValue", 0.0);
m_IfAboveAction = parser.ReadString(section, L"IfAboveAction", L"", false);
m_IfBelowValue = parser.ReadFloat(section, L"IfBelowValue", 0.0);
m_IfBelowValue = parser.ReadFormula(section, L"IfBelowValue", 0.0);
m_IfBelowAction = parser.ReadString(section, L"IfBelowAction", L"", false);
m_IfEqualValue = parser.ReadFloat(section, L"IfEqualValue", 0.0);
m_IfEqualValue = parser.ReadFormula(section, L"IfEqualValue", 0.0);
m_IfEqualAction = parser.ReadString(section, L"IfEqualAction", L"", false);
m_AverageSize = parser.ReadUInt(section, L"AverageSize", 0);

View File

@ -107,8 +107,8 @@ void CMeterRotator::ReadConfig(CConfigParser& parser, const WCHAR* section)
m_OffsetX = parser.ReadFloat(section, L"OffsetX", 0.0);
m_OffsetY = parser.ReadFloat(section, L"OffsetY", 0.0);
m_StartAngle = parser.ReadFloat(section, L"StartAngle", 0.0);
m_RotationAngle = parser.ReadFloat(section, L"RotationAngle", 6.2832);
m_StartAngle = parser.ReadFormula(section, L"StartAngle", 0.0);
m_RotationAngle = parser.ReadFormula(section, L"RotationAngle", 6.2832);
m_ValueRemainder = parser.ReadInt(section, L"ValueReminder", 0); // Typo
m_ValueRemainder = parser.ReadInt(section, L"ValueRemainder", m_ValueRemainder);

View File

@ -71,11 +71,11 @@ void CMeterRoundLine::ReadConfig(CConfigParser& parser, const WCHAR* section)
// Read common configs
CMeter::ReadConfig(parser, section);
m_LineWidth = parser.ReadFloat(section, L"LineWidth", 1.0);
m_LineLength = parser.ReadFloat(section, L"LineLength", 20.0);
m_LineWidth = parser.ReadFormula(section, L"LineWidth", 1.0);
m_LineLength = parser.ReadFormula(section, L"LineLength", 20.0);
m_LineStart = parser.ReadFormula(section, L"LineStart", -1.0);
m_StartAngle = parser.ReadFloat(section, L"StartAngle", 0.0);
m_RotationAngle = parser.ReadFloat(section, L"RotationAngle", 6.2832);
m_StartAngle = parser.ReadFormula(section, L"StartAngle", 0.0);
m_RotationAngle = parser.ReadFormula(section, L"RotationAngle", 6.2832);
m_ValueRemainder = parser.ReadInt(section, L"ValueReminder", 0); // Typo
m_ValueRemainder = parser.ReadInt(section, L"ValueRemainder", m_ValueRemainder);
m_LineColor = parser.ReadColor(section, L"LineColor", Color::Black);

View File

@ -328,7 +328,7 @@ void CMeterString::ReadConfig(CConfigParser& parser, const WCHAR* section)
m_NumOfDecimals = parser.ReadInt(section, L"NumOfDecimals", -1);
m_Angle = (Gdiplus::REAL)parser.ReadFloat(section, L"Angle", 0.0);
m_Angle = (Gdiplus::REAL)parser.ReadFormula(section, L"Angle", 0.0);
const std::wstring& autoscale = parser.ReadString(section, L"AutoScale", L"0");
int autoscaleValue = _wtoi(autoscale.c_str());

View File

@ -762,7 +762,7 @@ void CTintedImage::ReadConfig(CConfigParser& parser, const WCHAR* section)
if (!m_DisableTransform)
{
m_Rotate = (REAL)parser.ReadFloat(section, m_ConfigArray[ConfigIndexImageRotate], 0.0);
m_Rotate = (REAL)parser.ReadFormula(section, m_ConfigArray[ConfigIndexImageRotate], 0.0);
}
m_NeedsTransform = (oldFlip != m_Flip || oldRotate != m_Rotate);