![]() |
KiCad PCB EDA Suite
|
#include <numeric_evaluator.h>
Classes | |
struct | Token |
struct | TokenStat |
Public Member Functions | |
NUMERIC_EVALUATOR (EDA_UNITS aUnits) | |
~NUMERIC_EVALUATOR () | |
void | Clear () |
void | parseError (const char *s) |
void | parseOk () |
void | parseSetResult (double) |
bool | IsValid () const |
wxString | Result () const |
bool | Process (const wxString &aString) |
wxString | OriginalText () const |
void | SetVar (const wxString &aString, double aValue) |
double | GetVar (const wxString &aString) |
void | RemoveVar (const wxString &aString) |
void | ClearVar () |
Protected Member Functions | |
void | newString (const wxString &aString) |
Token | getToken () |
void | parse (int token, numEval::TokenType value) |
Private Types | |
enum | Unit { Unit::Invalid, Unit::MM, Unit::CM, Unit::Inch, Unit::Mil } |
Private Attributes | |
void * | m_parser |
struct NUMERIC_EVALUATOR::TokenStat | m_token |
char | m_localeDecimalSeparator |
bool | m_parseError |
bool | m_parseFinished |
Unit | m_defaultUnits |
wxString | m_originalText |
std::map< wxString, double > | m_varMap |
Definition at line 94 of file numeric_evaluator.h.
|
strongprivate |
Enumerator | |
---|---|
Invalid | |
MM | |
CM | |
Inch | |
Mil |
Definition at line 96 of file numeric_evaluator.h.
NUMERIC_EVALUATOR::NUMERIC_EVALUATOR | ( | EDA_UNITS | aUnits | ) |
Definition at line 46 of file numeric_evaluator.cpp.
References Inch, INCHES, m_defaultUnits, m_localeDecimalSeparator, m_parseError, m_parseFinished, m_parser, Mil, MILLIMETRES, MILS, and MM.
NUMERIC_EVALUATOR::~NUMERIC_EVALUATOR | ( | ) |
Definition at line 66 of file numeric_evaluator.cpp.
void NUMERIC_EVALUATOR::Clear | ( | ) |
Definition at line 77 of file numeric_evaluator.cpp.
References NUMERIC_EVALUATOR::TokenStat::input, m_originalText, m_parseError, m_token, and NUMERIC_EVALUATOR::TokenStat::token.
Referenced by UNIT_BINDER::ChangeValue(), newString(), TEXT_CTRL_EVAL::SetValue(), UNIT_BINDER::SetValue(), and ~NUMERIC_EVALUATOR().
|
inline |
|
protected |
Definition at line 169 of file numeric_evaluator.cpp.
References CM, numEval::TokenType::dValue, Inch, NUMERIC_EVALUATOR::TokenStat::input, NUMERIC_EVALUATOR::TokenStat::inputLen, Invalid, m_defaultUnits, m_localeDecimalSeparator, m_parseError, m_token, Mil, MM, NUMERIC_EVALUATOR::TokenStat::pos, numEval::TokenType::text, NUMERIC_EVALUATOR::Token::token, NUMERIC_EVALUATOR::TokenStat::token, and NUMERIC_EVALUATOR::Token::value.
Referenced by Process().
double NUMERIC_EVALUATOR::GetVar | ( | const wxString & | aString | ) |
|
inline |
|
protected |
Definition at line 153 of file numeric_evaluator.cpp.
References Clear(), NUMERIC_EVALUATOR::TokenStat::input, NUMERIC_EVALUATOR::TokenStat::inputLen, m_originalText, m_parseFinished, m_token, NUMERIC_EVALUATOR::TokenStat::OutLen, NUMERIC_EVALUATOR::TokenStat::pos, and NUMERIC_EVALUATOR::TokenStat::token.
Referenced by Process().
wxString NUMERIC_EVALUATOR::OriginalText | ( | ) | const |
Definition at line 115 of file numeric_evaluator.cpp.
References m_originalText.
Referenced by UNIT_BINDER::GetOriginalText(), UNIT_BINDER::onSetFocus(), and TEXT_CTRL_EVAL::onTextFocusGet().
|
protected |
void NUMERIC_EVALUATOR::parseError | ( | const char * | s | ) |
void NUMERIC_EVALUATOR::parseOk | ( | ) |
void NUMERIC_EVALUATOR::parseSetResult | ( | double | val | ) |
Definition at line 99 of file numeric_evaluator.cpp.
References m_token, NUMERIC_EVALUATOR::TokenStat::OutLen, and NUMERIC_EVALUATOR::TokenStat::token.
bool NUMERIC_EVALUATOR::Process | ( | const wxString & | aString | ) |
Definition at line 121 of file numeric_evaluator.cpp.
References getToken(), m_parseError, m_parseFinished, m_parser, newString(), NUMERIC_EVALUATOR::Token::token, and NUMERIC_EVALUATOR::Token::value.
Referenced by TEXT_CTRL_EVAL::evaluate(), UNIT_BINDER::GetDoubleValue(), UNIT_BINDER::GetValue(), and UNIT_BINDER::onKillFocus().
|
inline |
|
inline |
Definition at line 116 of file numeric_evaluator.h.
References m_token, and NUMERIC_EVALUATOR::TokenStat::token.
Referenced by TEXT_CTRL_EVAL::evaluate(), UNIT_BINDER::GetDoubleValue(), UNIT_BINDER::GetValue(), and UNIT_BINDER::onKillFocus().
void NUMERIC_EVALUATOR::SetVar | ( | const wxString & | aString, |
double | aValue | ||
) |
|
private |
Definition at line 177 of file numeric_evaluator.h.
Referenced by getToken(), and NUMERIC_EVALUATOR().
|
private |
Definition at line 171 of file numeric_evaluator.h.
Referenced by getToken(), and NUMERIC_EVALUATOR().
|
private |
Definition at line 179 of file numeric_evaluator.h.
Referenced by Clear(), newString(), and OriginalText().
|
private |
Definition at line 174 of file numeric_evaluator.h.
Referenced by Clear(), getToken(), IsValid(), NUMERIC_EVALUATOR(), parseError(), and Process().
|
private |
Definition at line 175 of file numeric_evaluator.h.
Referenced by newString(), NUMERIC_EVALUATOR(), parseOk(), and Process().
|
private |
Definition at line 157 of file numeric_evaluator.h.
Referenced by NUMERIC_EVALUATOR(), Process(), and ~NUMERIC_EVALUATOR().
|
private |
Referenced by Clear(), getToken(), newString(), parseSetResult(), and Result().
|
private |
Definition at line 181 of file numeric_evaluator.h.
Referenced by ClearVar(), GetVar(), RemoveVar(), and SetVar().