|
UFO: Alien Invasion
|
#include "ui_expression.h"#include "ui_main.h"#include "ui_node.h"#include "ui_internal.h"#include "ui_parse.h"#include "ui_actions.h"#include "node/ui_node_abstractnode.h"#include "../../shared/parse.h"#include "../../shared/shared.h"
Go to the source code of this file.
Macros | |
| #define | VALUE1 UI_GetBooleanFromExpression(expression->d.nonTerminal.left, context) |
| #define | VALUE2 UI_GetBooleanFromExpression(expression->d.nonTerminal.right, context) |
Functions | |
| uiNode_t * | UI_GetNodeFromExpression (uiAction_t *expression, const uiCallContext_t *context, const value_t **property) |
| Get a node and a property from an expression. | |
| float | UI_GetFloatFromExpression (uiAction_t *expression, const uiCallContext_t *context) |
| const char * | UI_GetStringFromExpression (uiAction_t *expression, const uiCallContext_t *context) |
| bool | UI_GetBooleanFromExpression (uiAction_t *expression, const uiCallContext_t *context) |
| Check if an expression is true. | |
| uiAction_t * | UI_AllocStaticStringCondition (const char *description) |
| Allocate and initialize an expression according to a string. | |
| static uiAction_t * | UI_ParseValueExpression (const char **text) |
| Read a value from the stream and init an action with it. | |
| uiAction_t * | UI_ParseExpression (const char **text) |
| #define VALUE1 UI_GetBooleanFromExpression(expression->d.nonTerminal.left, context) |
Referenced by UI_GetBooleanFromExpression().
| #define VALUE2 UI_GetBooleanFromExpression(expression->d.nonTerminal.right, context) |
Referenced by UI_GetBooleanFromExpression().
| uiAction_t * UI_AllocStaticStringCondition | ( | const char * | description | ) |
Allocate and initialize an expression according to a string.
| [in] | description | String describing a condition |
Definition at line 540 of file ui_expression.cpp.
References Com_Printf(), UI_ParseExpression(), and va().
Referenced by UI_ParseProperty().
| bool UI_GetBooleanFromExpression | ( | uiAction_t * | expression, |
| const uiCallContext_t * | context ) |
Check if an expression is true.
Definition at line 431 of file ui_expression.cpp.
References Com_Error(), uiTerminalActionData_t::constString, Cvar_FindVar(), uiAction_t::d, uiAction_t::d1, EA_HIGHT_MASK, EA_OPERATOR_AND, EA_OPERATOR_BOOLEAN2BOOLEAN, EA_OPERATOR_EQ, EA_OPERATOR_EXISTS, EA_OPERATOR_FLOAT2BOOLEAN, EA_OPERATOR_GE, EA_OPERATOR_GT, EA_OPERATOR_LE, EA_OPERATOR_LT, EA_OPERATOR_NE, EA_OPERATOR_NOT, EA_OPERATOR_OR, EA_OPERATOR_PATHPROPERTYFROM, EA_OPERATOR_STR_EQ, EA_OPERATOR_STR_NE, EA_OPERATOR_STRING2BOOLEAN, EA_OPERATOR_UNARY, EA_OPERATOR_XOR, EA_VALUE, EA_VALUE_CVARNAME, EA_VALUE_CVARNAME_WITHINJECTION, EA_VALUE_PATHNODE, EA_VALUE_PATHNODE_WITHINJECTION, ERR_FATAL, uiAction_t::left, name, uiAction_t::nonTerminal, Q_streq, uiAction_t::right, uiCallContext_t::source, uiCallContext_t::tagNode, uiAction_t::terminal, uiAction_t::type, UI_GenInjectedString(), UI_GetFloatFromExpression(), UI_GetStringFromExpression(), UI_ReadNodePath(), VALUE1, and VALUE2.
Referenced by UI_CheckVisibility(), UI_ExecuteAction(), and UI_GetStringFromExpression().
| float UI_GetFloatFromExpression | ( | uiAction_t * | expression, |
| const uiCallContext_t * | context ) |
Definition at line 158 of file ui_expression.cpp.
References Com_Error(), Com_Printf(), uiTerminalActionData_t::constString, uiValue_t::cvar, Cvar_Get(), uiAction_t::d, uiAction_t::d1, EA_HIGHT_MASK, EA_OPERATOR_ADD, EA_OPERATOR_DIV, EA_OPERATOR_FLOAT2FLOAT, EA_OPERATOR_MOD, EA_OPERATOR_MUL, EA_OPERATOR_PATHPROPERTYFROM, EA_OPERATOR_SUB, EA_OPERATOR_UNARY, EA_VALUE, EA_VALUE_CVAR, EA_VALUE_CVARNAME, EA_VALUE_CVARNAME_WITHINJECTION, EA_VALUE_FLOAT, EA_VALUE_PARAM, EA_VALUE_PARAMCOUNT, EA_VALUE_PATHPROPERTY, EA_VALUE_PATHPROPERTY_WITHINJECTION, EA_VALUE_STRING, EA_VALUE_STRING_WITHINJECTION, EA_VALUE_VAR, ERR_FATAL, uiTerminalActionData_t::integer, uiAction_t::left, uiAction_t::nonTerminal, uiTerminalActionData_t::number, uiValue_t::number, uiAction_t::right, uiValue_t::string, uiAction_t::terminal, uiAction_t::type, uiValue_t::type, UI_GenInjectedString(), UI_GetFloatFromExpression(), UI_GetFloatFromNodeProperty(), UI_GetNodeFromExpression(), UI_GetParam(), UI_GetParamNumber(), UI_GetVariable(), cvar_t::value, and uiValue_t::value.
Referenced by UI_GetBooleanFromExpression(), UI_GetFloatFromExpression(), and UI_GetStringFromExpression().
| uiNode_t * UI_GetNodeFromExpression | ( | uiAction_t * | expression, |
| const uiCallContext_t * | context, | ||
| const value_t ** | property ) |
Get a node and a property from an expression.
| expression | Expression tree to analyse | |
| context | Call context | |
| [out] | property | A node property |
Definition at line 42 of file ui_expression.cpp.
References Com_Printf(), uiTerminalActionData_t::constString, uiAction_t::d, uiAction_t::d1, uiAction_t::d2, EA_HIGHT_MASK, EA_OPERATOR_PATHPROPERTYFROM, EA_OPERATOR_UNARY, EA_VALUE, EA_VALUE_CHILD, EA_VALUE_NODE, EA_VALUE_PARENT, EA_VALUE_PATHNODE, EA_VALUE_PATHNODE_WITHINJECTION, EA_VALUE_PATHPROPERTY, EA_VALUE_PATHPROPERTY_WITHINJECTION, EA_VALUE_THIS, EA_VALUE_VAR, EA_VALUE_WINDOW, uiTerminalActionData_t::integer, uiAction_t::left, uiValue_t::node, uiAction_t::nonTerminal, uiNode_t::parent, uiNode_t::root, uiCallContext_t::source, uiCallContext_t::tagNode, uiAction_t::terminal, uiAction_t::type, uiValue_t::type, UI_GenInjectedString(), UI_GetNodeFromExpression(), UI_GetPath(), UI_GetVariable(), UI_ReadNodePath(), and uiValue_t::value.
Referenced by UI_ExecuteAction(), UI_GetFloatFromExpression(), UI_GetNodeFromExpression(), and UI_GetStringFromExpression().
| const char * UI_GetStringFromExpression | ( | uiAction_t * | expression, |
| const uiCallContext_t * | context ) |
Definition at line 293 of file ui_expression.cpp.
References Com_Error(), Com_Printf(), uiTerminalActionData_t::constString, uiValue_t::cvar, Cvar_Get(), uiAction_t::d, uiAction_t::d1, EA_HIGHT_MASK, EA_OPERATOR_BOOLEAN2BOOLEAN, EA_OPERATOR_FLOAT2BOOLEAN, EA_OPERATOR_FLOAT2FLOAT, EA_OPERATOR_PATHPROPERTYFROM, EA_OPERATOR_STRING2BOOLEAN, EA_OPERATOR_UNARY, EA_VALUE, EA_VALUE_CVAR, EA_VALUE_CVARNAME, EA_VALUE_CVARNAME_WITHINJECTION, EA_VALUE_FLOAT, EA_VALUE_PARAM, EA_VALUE_PARAMCOUNT, EA_VALUE_PATHPROPERTY, EA_VALUE_PATHPROPERTY_WITHINJECTION, EA_VALUE_STRING, EA_VALUE_STRING_WITHINJECTION, EA_VALUE_VAR, ERR_FATAL, uiTerminalActionData_t::integer, uiTerminalActionData_t::number, uiValue_t::number, cvar_t::string, uiValue_t::string, value_t::string, uiAction_t::terminal, uiAction_t::type, uiValue_t::type, UI_GenInjectedString(), UI_GetBooleanFromExpression(), UI_GetFloatFromExpression(), UI_GetNodeFromExpression(), UI_GetParam(), UI_GetParamNumber(), UI_GetStringFromNodeProperty(), UI_GetVariable(), UI_Node_GetWidgetName(), v, va(), and uiValue_t::value.
Referenced by UI_ExecuteCallAction(), UI_ExecuteSetAction(), UI_GetBooleanFromExpression(), and UI_NodeSetPropertyFromActionValue().
| uiAction_t * UI_ParseExpression | ( | const char ** | text | ) |
Definition at line 670 of file ui_expression.cpp.
References Com_Parse(), Com_Printf(), Com_UnParseLastToken(), uiAction_t::d, EA_BINARYOPERATOR, EA_NULL, EA_OPERATOR_EXISTS, EA_UNARYOPERATOR, EA_VALUE_CVARNAME, EA_VALUE_CVARNAME_WITHINJECTION, EA_VALUE_PATHNODE, EA_VALUE_PATHNODE_WITHINJECTION, uiAction_t::left, uiAction_t::nonTerminal, Q_streq, uiAction_t::right, type, uiAction_t::type, UI_AllocStaticAction(), UI_GetActionTokenType(), UI_ParseExpression(), and UI_ParseValueExpression().
Referenced by UI_AllocStaticStringCondition(), UI_ParseActionList(), UI_ParseCallAction(), UI_ParseExpression(), and UI_ParseSetAction().
|
static |
Read a value from the stream and init an action with it.
Definition at line 560 of file ui_expression.cpp.
References Com_Error(), Com_GetType(), Com_Parse(), Com_Printf(), uiTerminalActionData_t::constString, uiAction_t::d, uiAction_t::d1, EA_VALUE_CVARNAME, EA_VALUE_CVARNAME_WITHINJECTION, EA_VALUE_FLOAT, EA_VALUE_PARAM, EA_VALUE_PARAMCOUNT, EA_VALUE_PATHNODE, EA_VALUE_PATHNODE_WITHINJECTION, EA_VALUE_PATHPROPERTY, EA_VALUE_PATHPROPERTY_WITHINJECTION, EA_VALUE_STRING, EA_VALUE_STRING_WITHINJECTION, ERR_FATAL, f, i, uiTerminalActionData_t::integer, uiTerminalActionData_t::number, Q_strcasecmp, Q_streq, Q_strncasecmp, Q_strstart(), uiAction_t::terminal, TT_QUOTED_WORD, uiAction_t::type, UI_AllocStaticAction(), UI_AllocStaticString(), UI_IsInjectedString(), and va().
Referenced by UI_ParseExpression().