Add simple script parsing for menus

This commit is contained in:
Jan
2021-11-07 00:45:39 +01:00
parent 81203e523e
commit 7025fca81c
3 changed files with 405 additions and 5 deletions

View File

@ -3,10 +3,13 @@
using namespace menu;
CommonEventHandlerSetLocalVar::CommonEventHandlerSetLocalVar()
= default;
: m_type(SetLocalVarType::UNKNOWN)
{
}
CommonEventHandlerSetLocalVar::CommonEventHandlerSetLocalVar(std::string varName, std::unique_ptr<ICommonExpression> value)
: m_var_name(std::move(varName)),
CommonEventHandlerSetLocalVar::CommonEventHandlerSetLocalVar(SetLocalVarType type, std::string varName, std::unique_ptr<ICommonExpression> value)
: m_type(type),
m_var_name(std::move(varName)),
m_value(std::move(value))
{
}

View File

@ -7,14 +7,24 @@
namespace menu
{
enum class SetLocalVarType
{
UNKNOWN,
BOOL,
INT,
FLOAT,
STRING
};
class CommonEventHandlerSetLocalVar final : public ICommonEventHandlerElement
{
public:
SetLocalVarType m_type;
std::string m_var_name;
std::unique_ptr<ICommonExpression> m_value;
CommonEventHandlerSetLocalVar();
CommonEventHandlerSetLocalVar(std::string varName, std::unique_ptr<ICommonExpression> value);
CommonEventHandlerSetLocalVar(SetLocalVarType type, std::string varName, std::unique_ptr<ICommonExpression> value);
CommonEventHandlerElementType GetType() override;
};