KiCad PCB EDA Suite
Loading...
Searching...
No Matches
UNIT_BINDER Class Reference

#include <unit_binder.h>

Inheritance diagram for UNIT_BINDER:
PROPERTY_EDITOR_UNIT_BINDER

Classes

struct  RANGE_BOUND
 A range bound converted to internal units together with its user-facing display string. More...
 

Public Member Functions

 UNIT_BINDER (EDA_DRAW_FRAME *aParent, wxStaticText *aLabel, wxWindow *aValueCtrl, wxStaticText *aUnitLabel, bool aAllowEval=true, bool aBindFocusEvent=true)
 
 UNIT_BINDER (UNITS_PROVIDER *aUnitsProvider, wxWindow *aEventSource, wxStaticText *aLabel, wxWindow *aValueCtrl, wxStaticText *aUnitLabel, bool aAllowEval=true, bool aBindFocusEvent=true)
 
virtual ~UNIT_BINDER () override
 
virtual void SetUnits (EDA_UNITS aUnits)
 Normally not needed (as the UNIT_BINDER inherits from the parent frame), but can be used to set to DEGREES for angular controls.
 
bool UnitsInvariant () const
 
virtual void SetNegativeZero ()
 
virtual void SetPrecision (int aLength)
 Normally not needed, but can be used to set the precision when using internal units that are floats (not integers) like DEGREES or PERCENT.
 
void SetDataType (EDA_DATA_TYPE aDataType)
 Used to override the datatype of the displayed property (default is DISTANCE)
 
virtual void SetValue (long long int aValue)
 Set new value (in Internal Units) for the text field, taking care of units conversion.
 
void SetValue (const wxString &aValue)
 
virtual void SetDoubleValue (double aValue)
 Set new value (in Internal Units) for the text field, taking care of units conversion.
 
virtual void SetAngleValue (const EDA_ANGLE &aValue)
 
virtual void ChangeValue (int aValue)
 Set new value (in Internal Units) for the text field, taking care of units conversion WITHOUT triggering the update routine.
 
void ChangeValue (const wxString &aValue)
 
virtual void ChangeDoubleValue (double aValue)
 Set new value (in Internal Units) for the text field, taking care of units conversion WITHOUT triggering the update routine.
 
virtual void ChangeAngleValue (const EDA_ANGLE &aValue)
 
virtual long long int GetValue () const
 Return the current value in Internal Units.
 
int GetIntValue () const
 
virtual double GetDoubleValue () const
 Return the current value in Internal Units.
 
virtual EDA_ANGLE GetAngleValue ()
 
virtual void SetOptionsList (std::span< const long long int > aOptions)
 Set the list of options for a combobox control.
 
virtual void SetDoubleOptionsList (std::span< const double > aOptions)
 
bool IsIndeterminate () const
 Return true if the control holds the indeterminate value (for instance, if it represents a multiple selection of differing values).
 
bool IsNull () const
 Return true if the control holds no value (ie: empty string, not 0).
 
void SetNull ()
 
virtual bool Validate (double aMin, double aMax, EDA_UNITS aUnits=EDA_UNITS::UNSCALED)
 Validate the control against the given range, informing the user of any errors found.
 
void SetLabel (const wxString &aLabel)
 
void Enable (bool aEnable)
 Enable/disable the label, widget and units label.
 
void Show (bool aShow, bool aResize=false)
 Show/hide the label, widget and units label.
 
ORIGIN_TRANSFORMS::COORD_TYPES_T GetCoordType () const
 Get the origin transforms coordinate type.
 
void SetCoordType (ORIGIN_TRANSFORMS::COORD_TYPES_T aCoordType)
 Set the current origin transform mode.
 
virtual wxString GetFormula () const
 Return the expression the user entered if it is more than a plain number, otherwise an empty string.
 
virtual bool RestoreFormula (const wxString &aFormula)
 Show the result of an expression returned by GetFormula() and retain the expression so that it reappears for editing when the control gains focus.
 
virtual void RestoreValue (int aValue, const wxString &aFormula)
 Set a value (in Internal Units) as ChangeValue() does and reinstate the expression that produced it.
 
void RequireEval ()
 Force the binder to evaluate the text.
 
void DetachFromDialogShim ()
 Sever the back-reference to the owning dialog.
 

Static Public Member Functions

static RANGE_BOUND ConvertRangeBound (const EDA_IU_SCALE &aIuScale, EDA_UNITS aBoundUnits, double aBound, EDA_UNITS aDisplayUnits, EDA_DATA_TYPE aDataType)
 Convert a range bound and format its display string honoring aDataType.
 

Protected Member Functions

void onClick (wxMouseEvent &aEvent)
 
void onComboBox (wxCommandEvent &aEvent)
 
void onSetFocus (wxFocusEvent &aEvent)
 
void onKillFocus (wxFocusEvent &aEvent)
 
void delayedFocusHandler (wxCommandEvent &aEvent)
 
void onValueCtrlDestroyed (wxWindowDestroyEvent &aEvent)
 
void onUnitsChanged (wxCommandEvent &aEvent)
 
double setPrecision (double aValue, bool aValueUsesUserUnits) const
 When m_precision > 0 truncate the value aValue to show only m_precision digits in mantissa.
 
wxString formulaYielding (long long int aValue) const
 Return the retained expression if it evaluates to aValue, otherwise an empty string.
 
wxString getTextForValue (long long int aValue) const
 
wxString getTextForDoubleValue (double aValue) const
 

Protected Attributes

bool m_bindFocusEvent
 
wxStaticText * m_label
 The bound widgets.
 
wxWindow * m_valueCtrl
 
wxWindow * m_eventSource
 
wxStaticText * m_unitLabel
 Can be nullptr.
 
const EDA_IU_SCALE * m_iuScale
 Currently used units.
 
EDA_UNITS m_units
 
bool m_negativeZero
 Indicates "-0" should be displayed for 0.
 
EDA_DATA_TYPE m_dataType
 
int m_precision
 0 to 6.
 
wxString m_errorMessage
 
NUMERIC_EVALUATOR m_eval
 
bool m_allowEval
 
bool m_needsEval
 
long m_selStart
 Selection start and end of the original text.
 
long m_selEnd
 
bool m_unitsInValue
 Units label should be included in value text.
 
ORIGIN_TRANSFORMS & m_originTransforms
 A reference to an ORIGIN_TRANSFORMS object.
 
ORIGIN_TRANSFORMS::COORD_TYPES_T m_coordType
 Type of coordinate for display origin transforms.
 
DIALOG_SHIM * m_dialogShim
 The dialog this binder registered itself with, or nullptr if it isn't owned by a dialog.
 

Detailed Description

Definition at line 39 of file unit_binder.h.

Constructor & Destructor Documentation

◆ UNIT_BINDER() [1/2]

UNIT_BINDER::UNIT_BINDER ( EDA_DRAW_FRAME * aParent,
wxStaticText * aLabel,
wxWindow * aValueCtrl,
wxStaticText * aUnitLabel,
bool aAllowEval = true,
bool aBindFocusEvent = true )
Parameters
aParentis the parent EDA_BASE_FRAME, used to fetch units and coordinate systems.
aLabelis the static text used to label the text input widget (note: the label text, trimmed of its colon, will also be used in error messages)
aValueCtrlis the control used to edit or display the given value (wxTextCtrl, wxComboBox, wxStaticText, etc.).
aUnitLabel(optional) is the units label displayed after the text input widget
aAllowEvalindicates aTextInput's content should be eval'ed before storing
aBindFocusEventindicates the control should respond to DELAY_FOCUS from the parent frame

Definition at line 41 of file unit_binder.cpp.

References UNIT_BINDER().

Referenced by PROPERTY_EDITOR_UNIT_BINDER::PROPERTY_EDITOR_UNIT_BINDER(), and UNIT_BINDER().

◆ UNIT_BINDER() [2/2]

UNIT_BINDER::UNIT_BINDER ( UNITS_PROVIDER * aUnitsProvider,
wxWindow * aEventSource,
wxStaticText * aLabel,
wxWindow * aValueCtrl,
wxStaticText * aUnitLabel,
bool aAllowEval = true,
bool aBindFocusEvent = true )

◆ ~UNIT_BINDER()

Member Function Documentation

◆ ChangeAngleValue()

void UNIT_BINDER::ChangeAngleValue ( const EDA_ANGLE & aValue)
virtual

Definition at line 584 of file unit_binder.cpp.

References ChangeDoubleValue(), m_coordType, and m_originTransforms.

◆ ChangeDoubleValue()

void UNIT_BINDER::ChangeDoubleValue ( double aValue)
virtual

Set new value (in Internal Units) for the text field, taking care of units conversion WITHOUT triggering the update routine.

The value will be truncated according to the precision set by SetPrecision() (if not <= 0).

Definition at line 578 of file unit_binder.cpp.

References ChangeValue(), and getTextForDoubleValue().

Referenced by ChangeAngleValue().

◆ ChangeValue() [1/2]

void UNIT_BINDER::ChangeValue ( const wxString & aValue)

◆ ChangeValue() [2/2]

void UNIT_BINDER::ChangeValue ( int aValue)
virtual

Set new value (in Internal Units) for the text field, taking care of units conversion WITHOUT triggering the update routine.

Definition at line 567 of file unit_binder.cpp.

References ChangeValue(), formulaYielding(), getTextForValue(), and m_eval.

Referenced by ChangeDoubleValue(), ChangeValue(), DIALOG_SHIM::LoadControlState(), RestoreFormula(), and RestoreValue().

◆ ConvertRangeBound()

UNIT_BINDER::RANGE_BOUND UNIT_BINDER::ConvertRangeBound ( const EDA_IU_SCALE & aIuScale,
EDA_UNITS aBoundUnits,
double aBound,
EDA_UNITS aDisplayUnits,
EDA_DATA_TYPE aDataType )
static

Convert a range bound and format its display string honoring aDataType.

Area and volume bounds scale by the square and cube of the unit factor respectively, and the display string carries the matching data type (so it reads "mm²" rather than "mm"). Kept static and free of any control state so the range validation math can be exercised without constructing wx widgets.

Parameters
aIuScalethe internal units scale.
aBoundUnitsthe units the bound is expressed in (UNSCALED for internal units).
aBoundthe bound value in aBoundUnits.
aDisplayUnitsthe units the display string should be rendered in.
aDataTypethe measurement type governing conversion power and units label.

Definition at line 385 of file unit_binder.cpp.

References AREA, EDA_UNIT_UTILS::UI::FromUserUnit(), EDA_UNIT_UTILS::UI::StringFromValue(), UNITLESS, and VOLUME.

Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and Validate().

◆ delayedFocusHandler()

void UNIT_BINDER::delayedFocusHandler ( wxCommandEvent & aEvent)
protected

Definition at line 375 of file unit_binder.cpp.

References DisplayErrorMessage(), m_errorMessage, and m_valueCtrl.

Referenced by ~UNIT_BINDER().

◆ DetachFromDialogShim()

void UNIT_BINDER::DetachFromDialogShim ( )
inline

Sever the back-reference to the owning dialog.

Called by DIALOG_SHIM while it is being destroyed so that this binder, which outlives the dialog's member teardown, does not call back into the half-destroyed dialog.

Definition at line 351 of file unit_binder.h.

References m_dialogShim.

◆ Enable()

void UNIT_BINDER::Enable ( bool aEnable)

Enable/disable the label, widget and units label.

Definition at line 809 of file unit_binder.cpp.

References m_label, m_unitLabel, and m_valueCtrl.

◆ formulaYielding()

wxString UNIT_BINDER::formulaYielding ( long long int aValue) const
protected

Return the retained expression if it evaluates to aValue, otherwise an empty string.

Definition at line 550 of file unit_binder.cpp.

References std::abs(), m_allowEval, m_coordType, m_dataType, m_eval, m_iuScale, m_needsEval, m_originTransforms, m_units, and EDA_UNIT_UTILS::UI::ValueFromString().

Referenced by ChangeValue(), and SetValue().

◆ GetAngleValue()

EDA_ANGLE UNIT_BINDER::GetAngleValue ( )
virtual

Definition at line 746 of file unit_binder.cpp.

References DEGREES_T, GetDoubleValue(), m_coordType, and m_originTransforms.

◆ GetCoordType()

ORIGIN_TRANSFORMS::COORD_TYPES_T UNIT_BINDER::GetCoordType ( ) const
inline

Get the origin transforms coordinate type.

Returns
the origin transforms coordinate type.

Definition at line 229 of file unit_binder.h.

References m_coordType.

◆ GetDoubleValue()

double UNIT_BINDER::GetDoubleValue ( ) const
virtual

Return the current value in Internal Units.

The returned value will be truncated according to the precision set by SetPrecision() (if not <= 0).

Definition at line 715 of file unit_binder.cpp.

References EDA_UNIT_UTILS::UI::DoubleValueFromString(), m_coordType, m_dataType, m_eval, m_iuScale, m_needsEval, m_originTransforms, m_units, m_valueCtrl, and setPrecision().

Referenced by GetAngleValue().

◆ GetFormula()

wxString UNIT_BINDER::GetFormula ( ) const
virtual

Return the expression the user entered if it is more than a plain number, otherwise an empty string.

Definition at line 618 of file unit_binder.cpp.

References m_allowEval, m_eval, m_needsEval, and m_valueCtrl.

Referenced by DIALOG_SHIM::SaveControlState().

◆ GetIntValue()

int UNIT_BINDER::GetIntValue ( ) const
inline

Definition at line 131 of file unit_binder.h.

References GetValue().

Referenced by onUnitsChanged().

◆ getTextForDoubleValue()

wxString UNIT_BINDER::getTextForDoubleValue ( double aValue) const
protected

◆ getTextForValue()

wxString UNIT_BINDER::getTextForValue ( long long int aValue) const
protected

◆ GetValue()

long long int UNIT_BINDER::GetValue ( ) const
virtual

◆ IsIndeterminate()

bool UNIT_BINDER::IsIndeterminate ( ) const

Return true if the control holds the indeterminate value (for instance, if it represents a multiple selection of differing values).

Definition at line 776 of file unit_binder.cpp.

References INDETERMINATE_ACTION, INDETERMINATE_STATE, and m_valueCtrl.

Referenced by onUnitsChanged().

◆ IsNull()

bool UNIT_BINDER::IsNull ( ) const

Return true if the control holds no value (ie: empty string, not 0).

Definition at line 787 of file unit_binder.cpp.

References m_valueCtrl.

◆ onClick()

void UNIT_BINDER::onClick ( wxMouseEvent & aEvent)
protected

◆ onComboBox()

void UNIT_BINDER::onComboBox ( wxCommandEvent & aEvent)
protected

◆ onKillFocus()

void UNIT_BINDER::onKillFocus ( wxFocusEvent & aEvent)
protected

◆ onSetFocus()

void UNIT_BINDER::onSetFocus ( wxFocusEvent & aEvent)
protected

◆ onUnitsChanged()

void UNIT_BINDER::onUnitsChanged ( wxCommandEvent & aEvent)
protected

◆ onValueCtrlDestroyed()

void UNIT_BINDER::onValueCtrlDestroyed ( wxWindowDestroyEvent & aEvent)
protected

Definition at line 269 of file unit_binder.cpp.

References m_dialogShim, and m_valueCtrl.

Referenced by ~UNIT_BINDER().

◆ RequireEval()

void UNIT_BINDER::RequireEval ( )
inline

Force the binder to evaluate the text.

Definition at line 270 of file unit_binder.h.

References m_needsEval.

◆ RestoreFormula()

bool UNIT_BINDER::RestoreFormula ( const wxString & aFormula)
virtual

Show the result of an expression returned by GetFormula() and retain the expression so that it reappears for editing when the control gains focus.

Returns
false if the expression cannot be evaluated, leaving the control untouched.

Definition at line 638 of file unit_binder.cpp.

References ChangeValue(), m_allowEval, m_eval, m_needsEval, and m_valueCtrl.

Referenced by DIALOG_SHIM::LoadControlState(), and RestoreValue().

◆ RestoreValue()

void UNIT_BINDER::RestoreValue ( int aValue,
const wxString & aFormula )
virtual

Set a value (in Internal Units) as ChangeValue() does and reinstate the expression that produced it.

The expression is dropped when it no longer evaluates to aValue, which happens when the units it was entered in have since changed. SetValue() and ChangeValue() apply the same rule, so a dialog may load its own copy of the value afterwards without losing the expression.

Definition at line 659 of file unit_binder.cpp.

References ChangeValue(), and RestoreFormula().

Referenced by DIALOG_SHIM::LoadControlState().

◆ SetAngleValue()

void UNIT_BINDER::SetAngleValue ( const EDA_ANGLE & aValue)
virtual

Definition at line 489 of file unit_binder.cpp.

References m_coordType, m_originTransforms, and SetDoubleValue().

◆ SetCoordType()

void UNIT_BINDER::SetCoordType ( ORIGIN_TRANSFORMS::COORD_TYPES_T aCoordType)
inline

Set the current origin transform mode.

Definition at line 237 of file unit_binder.h.

References m_coordType.

◆ SetDataType()

void UNIT_BINDER::SetDataType ( EDA_DATA_TYPE aDataType)

Used to override the datatype of the displayed property (default is DISTANCE)

Parameters
aDataTypeis the datatype to use for the units text display

Definition at line 188 of file unit_binder.cpp.

References EDA_UNIT_UTILS::GetLabel(), m_dataType, m_unitLabel, and m_units.

◆ SetDoubleOptionsList()

void UNIT_BINDER::SetDoubleOptionsList ( std::span< const double > aOptions)
virtual

Definition at line 764 of file unit_binder.cpp.

References getTextForDoubleValue(), and m_valueCtrl.

◆ SetDoubleValue()

void UNIT_BINDER::SetDoubleValue ( double aValue)
virtual

Set new value (in Internal Units) for the text field, taking care of units conversion.

The value will be truncated according to the precision set by SetPrecision() (if not <= 0).

Definition at line 476 of file unit_binder.cpp.

References m_coordType, m_dataType, m_iuScale, m_negativeZero, m_originTransforms, m_units, setPrecision(), SetValue(), and EDA_UNIT_UTILS::UI::StringFromValue().

Referenced by SetAngleValue().

◆ SetLabel()

void UNIT_BINDER::SetLabel ( const wxString & aLabel)

Definition at line 803 of file unit_binder.cpp.

References m_label.

◆ SetNegativeZero()

virtual void UNIT_BINDER::SetNegativeZero ( )
inlinevirtual

Definition at line 75 of file unit_binder.h.

References m_negativeZero.

◆ SetNull()

void UNIT_BINDER::SetNull ( )

Definition at line 796 of file unit_binder.cpp.

References m_valueCtrl.

◆ SetOptionsList()

void UNIT_BINDER::SetOptionsList ( std::span< const long long int > aOptions)
virtual

Set the list of options for a combobox control.

Doesn't affect the value of the control.

Definition at line 752 of file unit_binder.cpp.

References getTextForValue(), and m_valueCtrl.

Referenced by DIALOG_OUTSET_ITEMS::DIALOG_OUTSET_ITEMS(), and onUnitsChanged().

◆ SetPrecision()

void UNIT_BINDER::SetPrecision ( int aLength)
virtual

Normally not needed, but can be used to set the precision when using internal units that are floats (not integers) like DEGREES or PERCENT.

Not used for integer values in IU

Parameters
aLengthis the number of digits for mantissa (0 = no truncation) must be <= 6

Definition at line 182 of file unit_binder.cpp.

References m_precision.

◆ setPrecision()

double UNIT_BINDER::setPrecision ( double aValue,
bool aValueUsesUserUnits ) const
protected

When m_precision > 0 truncate the value aValue to show only m_precision digits in mantissa.

used in GetDoubleValue to return a rounded value. Mainly for units set to DEGREES.

Parameters
aValueis the value to modify.
aValueUsesUserUnitsmust be set to true if aValue is a user value, and set to false if aValue is a internal unit value.
Returns
the "rounded" value.

Definition at line 695 of file unit_binder.cpp.

References EDA_UNIT_UTILS::UI::FromUserUnit(), m_iuScale, m_precision, m_units, scale, and EDA_UNIT_UTILS::UI::ToUserUnit().

Referenced by GetDoubleValue(), getTextForDoubleValue(), getTextForValue(), and SetDoubleValue().

◆ SetUnits()

void UNIT_BINDER::SetUnits ( EDA_UNITS aUnits)
virtual

Normally not needed (as the UNIT_BINDER inherits from the parent frame), but can be used to set to DEGREES for angular controls.

Definition at line 170 of file unit_binder.cpp.

References EDA_UNIT_UTILS::GetLabel(), m_dataType, m_eval, m_unitLabel, and m_units.

Referenced by onUnitsChanged().

◆ SetValue() [1/2]

void UNIT_BINDER::SetValue ( const wxString & aValue)

◆ SetValue() [2/2]

void UNIT_BINDER::SetValue ( long long int aValue)
virtual

Set new value (in Internal Units) for the text field, taking care of units conversion.

Definition at line 460 of file unit_binder.cpp.

References formulaYielding(), m_coordType, m_dataType, m_eval, m_iuScale, m_negativeZero, m_originTransforms, m_units, SetValue(), and EDA_UNIT_UTILS::UI::StringFromValue().

Referenced by onComboBox(), onUnitsChanged(), SetDoubleValue(), and SetValue().

◆ Show()

void UNIT_BINDER::Show ( bool aShow,
bool aResize = false )

Show/hide the label, widget and units label.

Parameters
aShowcalled for the Show() routine in wx.
aResizeif true, the element will be sized to 0 on hide and -1 on show.

Definition at line 821 of file unit_binder.cpp.

References m_label, m_unitLabel, and m_valueCtrl.

◆ UnitsInvariant()

bool UNIT_BINDER::UnitsInvariant ( ) const
inline

Definition at line 70 of file unit_binder.h.

References DEGREES, m_units, PERCENT, and UNSCALED.

Referenced by onUnitsChanged(), and DIALOG_SHIM::SaveControlState().

◆ Validate()

bool UNIT_BINDER::Validate ( double aMin,
double aMax,
EDA_UNITS aUnits = EDA_UNITS::UNSCALED )
virtual

Validate the control against the given range, informing the user of any errors found.

Parameters
aMina minimum value for validation.
aMaxa maximum value for validation.
aUnitsthe units of the min/max parameters (use UNSCALED for internal units).
Returns
false on error.

Definition at line 413 of file unit_binder.cpp.

References _, ConvertRangeBound(), UNIT_BINDER::RANGE_BOUND::displayText, GetValue(), INDETERMINATE_ACTION, INDETERMINATE_STATE, UNIT_BINDER::RANGE_BOUND::internalUnits, m_dataType, m_errorMessage, m_iuScale, m_label, m_units, m_valueCtrl, and valueDescriptionFromLabel().

Member Data Documentation

◆ m_allowEval

bool UNIT_BINDER::m_allowEval
protected

◆ m_bindFocusEvent

bool UNIT_BINDER::m_bindFocusEvent
protected

Definition at line 309 of file unit_binder.h.

Referenced by UNIT_BINDER(), and ~UNIT_BINDER().

◆ m_coordType

◆ m_dataType

◆ m_dialogShim

DIALOG_SHIM* UNIT_BINDER::m_dialogShim
protected

The dialog this binder registered itself with, or nullptr if it isn't owned by a dialog.

Definition at line 342 of file unit_binder.h.

Referenced by DetachFromDialogShim(), onValueCtrlDestroyed(), UNIT_BINDER(), and ~UNIT_BINDER().

◆ m_errorMessage

wxString UNIT_BINDER::m_errorMessage
protected

Definition at line 324 of file unit_binder.h.

Referenced by delayedFocusHandler(), and Validate().

◆ m_eval

◆ m_eventSource

wxWindow* UNIT_BINDER::m_eventSource
protected

Definition at line 314 of file unit_binder.h.

Referenced by UNIT_BINDER(), and ~UNIT_BINDER().

◆ m_iuScale

const EDA_IU_SCALE* UNIT_BINDER::m_iuScale
protected

◆ m_label

wxStaticText* UNIT_BINDER::m_label
protected

The bound widgets.

Definition at line 312 of file unit_binder.h.

Referenced by Enable(), SetLabel(), Show(), UNIT_BINDER(), and Validate().

◆ m_needsEval

bool UNIT_BINDER::m_needsEval
protected

◆ m_negativeZero

bool UNIT_BINDER::m_negativeZero
protected

Indicates "-0" should be displayed for 0.

Definition at line 320 of file unit_binder.h.

Referenced by getTextForDoubleValue(), getTextForValue(), SetDoubleValue(), SetNegativeZero(), SetValue(), and UNIT_BINDER().

◆ m_originTransforms

◆ m_precision

int UNIT_BINDER::m_precision
protected

0 to 6.

Definition at line 322 of file unit_binder.h.

Referenced by SetPrecision(), setPrecision(), and UNIT_BINDER().

◆ m_selEnd

long UNIT_BINDER::m_selEnd
protected

Definition at line 331 of file unit_binder.h.

Referenced by onKillFocus(), onSetFocus(), and UNIT_BINDER().

◆ m_selStart

long UNIT_BINDER::m_selStart
protected

Selection start and end of the original text.

Definition at line 330 of file unit_binder.h.

Referenced by onKillFocus(), onSetFocus(), and UNIT_BINDER().

◆ m_unitLabel

wxStaticText* UNIT_BINDER::m_unitLabel
protected

Can be nullptr.

Definition at line 315 of file unit_binder.h.

Referenced by ChangeValue(), Enable(), SetDataType(), SetUnits(), SetValue(), Show(), and UNIT_BINDER().

◆ m_units

◆ m_unitsInValue

bool UNIT_BINDER::m_unitsInValue
protected

Units label should be included in value text.

Definition at line 333 of file unit_binder.h.

Referenced by ChangeValue(), onKillFocus(), PROPERTY_EDITOR_UNIT_BINDER::PROPERTY_EDITOR_UNIT_BINDER(), SetValue(), and UNIT_BINDER().

◆ m_valueCtrl


The documentation for this class was generated from the following files: