feat: added BIND_GET_SET BIND_PROPERTY & BIND_HPROPERTY via macros.h

development
Sara 2025-01-30 12:50:05 +01:00
parent 29f289db11
commit ee00efde1f
1 changed files with 16 additions and 0 deletions

View File

@ -0,0 +1,16 @@
#ifndef GODOT_EXTRA_MACROS_H
#define GODOT_EXTRA_MACROS_H
#define BIND_GET_SET(m_property)\
ClassDB::bind_method(D_METHOD("set_" #m_property, #m_property), &self_type::set_##m_property);\
ClassDB::bind_method(D_METHOD("get_" #m_property), &self_type::get_##m_property)
#define BIND_HPROPERTY(m_type, m_property, ...)\
BIND_GET_SET(m_property);\
ADD_PROPERTY(PropertyInfo(m_type, #m_property, __VA_ARGS__), "set_" #m_property, "get_" #m_property)
#define BIND_PROPERTY(m_type, m_property)\
BIND_GET_SET(m_property);\
ADD_PROPERTY(PropertyInfo(m_type, #m_property), "set_" #m_property, "get_" #m_property)
#endif // !GODOT_EXTRA_MACROS_H