From b5fda06f203e8f713a9cbe0d50df78cf84bc4ada Mon Sep 17 00:00:00 2001 From: kobewi Date: Thu, 26 Jan 2023 00:44:29 +0100 Subject: Don't change region_rect when setting texture --- doc/classes/StyleBoxTexture.xml | 1 + editor/plugins/texture_region_editor_plugin.cpp | 3 +++ scene/resources/style_box.cpp | 5 ----- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/doc/classes/StyleBoxTexture.xml b/doc/classes/StyleBoxTexture.xml index 745187ed63..f2f6e59a9e 100644 --- a/doc/classes/StyleBoxTexture.xml +++ b/doc/classes/StyleBoxTexture.xml @@ -82,6 +82,7 @@ Species a sub-region of the texture to use. This is equivalent to first wrapping the texture in an [AtlasTexture] with the same region. + If empty ([code]Rect2(0, 0, 0, 0)[/code]), the whole texture will be used. The texture to use when drawing this style box. diff --git a/editor/plugins/texture_region_editor_plugin.cpp b/editor/plugins/texture_region_editor_plugin.cpp index 76f2bb7bb5..c5aa60c816 100644 --- a/editor/plugins/texture_region_editor_plugin.cpp +++ b/editor/plugins/texture_region_editor_plugin.cpp @@ -740,6 +740,9 @@ void TextureRegionEditor::_update_rect() { } } else if (obj_styleBox.is_valid()) { rect = obj_styleBox->get_region_rect(); + if (rect == Rect2()) { + rect = Rect2(Vector2(), obj_styleBox->get_texture()->get_size()); + } } } diff --git a/scene/resources/style_box.cpp b/scene/resources/style_box.cpp index 0beb62185d..fbbe98d022 100644 --- a/scene/resources/style_box.cpp +++ b/scene/resources/style_box.cpp @@ -151,11 +151,6 @@ void StyleBoxTexture::set_texture(Ref p_texture) { return; } texture = p_texture; - if (p_texture.is_null()) { - region_rect = Rect2(0, 0, 0, 0); - } else { - region_rect = Rect2(Point2(), texture->get_size()); - } emit_changed(); } -- cgit v1.2.3