22 #include <config_options.h>
28 #include <string_view>
102 OUString m_sLastValidText;
112 bool m_bWrapOnLimits : 1;
113 bool m_bStrictFormat : 1;
115 bool m_bEnableEmptyField : 1;
116 bool m_bAutoColor : 1;
117 bool m_bEnableNaN : 1;
118 bool m_bDisableRemainderFactor : 1;
151 void SetFieldText(
const OUString& rText,
const Selection& rNewSelection);
153 virtual Selection GetEntrySelection()
const = 0;
154 virtual OUString GetEntryText()
const = 0;
156 virtual void SetEntryText(
const OUString& rText,
const Selection& rSel) = 0;
157 virtual void SetEntryTextColor(
const Color* pColor) = 0;
158 virtual void FieldModified() = 0;
163 virtual void SetMinValue(
double dMin);
168 virtual void SetMaxValue(
double dMax);
176 void SetTextValue(
const OUString& rText);
180 void EnableEmptyField(
bool bEnable);
183 void SetDefaultValue(
double dDefault) { m_dDefaultValue = dDefault; m_ValueState = valueDirty; }
200 bool GetThousandsSep()
const;
201 void SetThousandsSep(
bool _bUseSeparator);
204 void DisableRemainderFactor();
209 sal_uInt16 GetDecimalDigits()
const;
210 void SetDecimalDigits(sal_uInt16 _nPrecision);
244 void SetTextFormatted(
const OUString& rText);
245 OUString
const & GetTextValue()
const;
264 void SetAutoColor(
bool _bAutomatic);
280 void EnableNotANumber(
bool _bEnable );
286 void UseInputStringForFormatting();
289 void Modify(
bool makeValueDirty =
true);
291 void EntryLostFocus();
301 virtual bool CheckText(
const OUString&)
const {
return true; }
303 void ImplSetTextImpl(
const OUString& rNew,
Selection const * pNewSel);
304 void ImplSetValue(
double dValue,
bool bForce);
305 bool ImplGetValue(
double& dNewVal);
307 void ImplSetFormatKey(
sal_uLong nFormatKey);
::std::map< sal_Unicode, State > StateTransitions
TransitionTable m_aTransitions
StateTransitions::value_type Transition
class UNLESS_MERGELIBS(VCL_DLLPUBLIC) Accelerator
bool implValidateNormalized(const OUString &_rText)
NumberValidator(const sal_Unicode _cThSep, const sal_Unicode _cDecSep)
bool isValidNumericFragment(std::u16string_view _rText)
::std::map< State, StateTransitions > TransitionTable