From 356fac206d51c600fb597cdd03aba4a594dbc8c7 Mon Sep 17 00:00:00 2001 From: Markus Sauermann <6299227+Sauermann@users.noreply.github.com> Date: Sat, 26 Mar 2022 19:33:54 +0100 Subject: Add configuration warning for SubViewportContainer --- scene/gui/subviewport_container.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'scene/gui/subviewport_container.cpp') diff --git a/scene/gui/subviewport_container.cpp b/scene/gui/subviewport_container.cpp index c66e145bc4..799eea7eac 100644 --- a/scene/gui/subviewport_container.cpp +++ b/scene/gui/subviewport_container.cpp @@ -223,6 +223,23 @@ void SubViewportContainer::unhandled_input(const Ref &p_event) { } } +TypedArray SubViewportContainer::get_configuration_warnings() const { + TypedArray warnings = Node::get_configuration_warnings(); + + bool has_viewport = false; + for (int i = 0; i < get_child_count(); i++) { + if (Object::cast_to(get_child(i))) { + has_viewport = true; + break; + } + } + if (!has_viewport) { + warnings.push_back(TTR("This node doesn't have a SubViewport as child, so it can't display its intended content.\nConsider adding a SubViewport as a child to provide something displayable.")); + } + + return warnings; +} + void SubViewportContainer::_bind_methods() { ClassDB::bind_method(D_METHOD("set_stretch", "enable"), &SubViewportContainer::set_stretch); ClassDB::bind_method(D_METHOD("is_stretch_enabled"), &SubViewportContainer::is_stretch_enabled); -- cgit v1.2.3