35#ifndef AAX_CNUMBERDISPLAYDELEGATE_H
36#define AAX_CNUMBERDISPLAYDELEGATE_H
51template <
typename T, u
int32_t Precision=2, u
int32_t SpaceAfter=0>
65template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
71template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
81template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
86 uint32_t strlen = valueString->
Length();
87 const uint32_t maxNumCharsUnsigned = (0 <= maxNumChars) ?
static_cast<uint32_t
>(maxNumChars) : 0;
88 if (strlen > maxNumCharsUnsigned)
90 valueString->
Erase(maxNumCharsUnsigned, strlen-maxNumCharsUnsigned);
91 strlen = valueString->
Length();
94 if ( 0 < maxNumCharsUnsigned && strlen == maxNumCharsUnsigned && (*valueString)[maxNumCharsUnsigned-1] ==
'.')
96 valueString->
Erase(maxNumCharsUnsigned-1, 1);
97 strlen = valueString->
Length();
100 if ((SpaceAfter != 0) && (maxNumCharsUnsigned > strlen) && (maxNumCharsUnsigned-strlen > 2))
105template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
111 *value =
static_cast<T
> (dValue);
A generic AAX string class with similar functionality to std::string.
Defines the display behavior for a parameter.
#define AAX_OVERRIDE
override keyword macro
Definition: AAX.h:164
A numeric display format conforming to AAX_IDisplayDelegate.
Definition: AAX_CNumberDisplayDelegate.h:53
bool ValueToString(T value, AAX_CString *valueString) const AAX_OVERRIDE
Converts a real parameter value to a string representation.
Definition: AAX_CNumberDisplayDelegate.h:72
AAX_CNumberDisplayDelegate * Clone() const AAX_OVERRIDE
Constructs and returns a copy of the display delegate.
Definition: AAX_CNumberDisplayDelegate.h:66
bool StringToValue(const AAX_CString &valueString, T *value) const AAX_OVERRIDE
Converts a string to a real parameter value.
Definition: AAX_CNumberDisplayDelegate.h:106
A generic AAX string class with similar functionality to std::string
Definition: AAX_CString.h:57
uint32_t Length() const AAX_OVERRIDE
bool ToDouble(double *oValue) const
AAX_CString & Erase(uint32_t pos, uint32_t n)
AAX_CString & Append(const AAX_CString &str)
AAX_CString & AppendNumber(double number, int32_t precision)
Definition: AAX_IDisplayDelegate.h:79