25 #ifndef AAX_CNUMBERDISPLAYDELEGATE_H
26 #define AAX_CNUMBERDISPLAYDELEGATE_H
41 template <
typename T, u
int32_t Precision=2, u
int32_t SpaceAfter=0>
55 template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
61 template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
71 template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
76 uint32_t strlen = valueString->
Length();
77 const uint32_t maxNumCharsUnsigned = (0 <= maxNumChars) ?
static_cast<uint32_t
>(maxNumChars) : 0;
78 if (strlen > maxNumCharsUnsigned)
80 valueString->
Erase(maxNumCharsUnsigned, strlen-maxNumCharsUnsigned);
81 strlen = valueString->
Length();
84 if ( 0 < maxNumCharsUnsigned && strlen == maxNumCharsUnsigned && (*valueString)[maxNumCharsUnsigned-1] ==
'.')
86 valueString->
Erase(maxNumCharsUnsigned-1, 1);
87 strlen = valueString->
Length();
90 if ((SpaceAfter != 0) && (maxNumCharsUnsigned > strlen) && (maxNumCharsUnsigned-strlen > 2))
95 template <
typename T, u
int32_t Precision, u
int32_t SpaceAfter>
101 *value =
static_cast<T
> (dValue);
#define AAX_OVERRIDE
override keyword macro
Definition: AAX.h:141
A generic AAX string class with similar functionality to std::string.
Defines the display behavior for a parameter.
A numeric display format conforming to AAX_IDisplayDelegate.
Definition: AAX_CNumberDisplayDelegate.h:43
bool ValueToString(T value, AAX_CString *valueString) const AAX_OVERRIDE
Converts a real parameter value to a string representation.
Definition: AAX_CNumberDisplayDelegate.h:62
AAX_CNumberDisplayDelegate * Clone() const AAX_OVERRIDE
Constructs and returns a copy of the display delegate.
Definition: AAX_CNumberDisplayDelegate.h:56
bool StringToValue(const AAX_CString &valueString, T *value) const AAX_OVERRIDE
Converts a string to a real parameter value.
Definition: AAX_CNumberDisplayDelegate.h:96
A generic AAX string class with similar functionality to std::string
Definition: AAX_CString.h:46
uint32_t Length() const AAX_OVERRIDE
AAX_CString & AppendNumber(double number, int32_t precision)
AAX_CString & Append(const AAX_CString &str)
bool ToDouble(double *oValue) const
AAX_CString & Erase(uint32_t pos, uint32_t n)
Classes for parameter value string conversion.
Definition: AAX_IDisplayDelegate.h:69