diff options
author | Yuri Sizov <yuris@humnom.net> | 2021-12-29 20:27:44 +0300 |
---|---|---|
committer | Yuri Sizov <yuris@humnom.net> | 2021-12-29 20:27:44 +0300 |
commit | 7d37f76241c7b2a946a581c5624214409f38448e (patch) | |
tree | 178fc26162f6d2d2a300059e2d1ac83ef01955b9 /editor/editor_resource_picker.cpp | |
parent | 9f058674acebf9a7a0704cdbc26dc9f6d853b16e (diff) | |
download | redot-engine-7d37f76241c7b2a946a581c5624214409f38448e.tar.gz |
Use GDVIRTUAL* macros when binding virtual methods in exposed classes
Diffstat (limited to 'editor/editor_resource_picker.cpp')
-rw-r--r-- | editor/editor_resource_picker.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/editor/editor_resource_picker.cpp b/editor/editor_resource_picker.cpp index 6a6634d7e5..b2e61fc579 100644 --- a/editor/editor_resource_picker.cpp +++ b/editor/editor_resource_picker.cpp @@ -385,8 +385,7 @@ void EditorResourcePicker::_edit_menu_cbk(int p_which) { void EditorResourcePicker::set_create_options(Object *p_menu_node) { _ensure_resource_menu(); // If a subclass implements this method, use it to replace all create items. - if (get_script_instance() && get_script_instance()->has_method("_set_create_options")) { - get_script_instance()->call("_set_create_options", p_menu_node); + if (GDVIRTUAL_CALL(_set_create_options, p_menu_node)) { return; } @@ -442,8 +441,9 @@ void EditorResourcePicker::set_create_options(Object *p_menu_node) { } bool EditorResourcePicker::handle_menu_selected(int p_which) { - if (get_script_instance() && get_script_instance()->has_method("_handle_menu_selected")) { - return get_script_instance()->call("_handle_menu_selected", p_which); + bool success; + if (GDVIRTUAL_CALL(_handle_menu_selected, p_which, success)) { + return success; } return false; @@ -682,8 +682,8 @@ void EditorResourcePicker::_bind_methods() { ClassDB::bind_method(D_METHOD("set_editable", "enable"), &EditorResourcePicker::set_editable); ClassDB::bind_method(D_METHOD("is_editable"), &EditorResourcePicker::is_editable); - ClassDB::add_virtual_method(get_class_static(), MethodInfo("_set_create_options", PropertyInfo(Variant::OBJECT, "menu_node"))); - ClassDB::add_virtual_method(get_class_static(), MethodInfo("_handle_menu_selected", PropertyInfo(Variant::INT, "id"))); + GDVIRTUAL_BIND(_set_create_options, "menu_node"); + GDVIRTUAL_BIND(_handle_menu_selected, "id"); ADD_PROPERTY(PropertyInfo(Variant::STRING, "base_type"), "set_base_type", "get_base_type"); ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "edited_resource", PROPERTY_HINT_RESOURCE_TYPE, "Resource", PROPERTY_USAGE_NONE), "set_edited_resource", "get_edited_resource"); |