You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-12 13:20:55 +00:00
Fix BitMapEditor crash when bitmap is empty
This commit is contained in:
@@ -41,7 +41,11 @@
|
|||||||
void BitMapEditor::setup(const Ref<BitMap> &p_bitmap) {
|
void BitMapEditor::setup(const Ref<BitMap> &p_bitmap) {
|
||||||
Ref<ImageTexture> bitmap_texture = ImageTexture::create_from_image(p_bitmap->convert_to_image());
|
Ref<ImageTexture> bitmap_texture = ImageTexture::create_from_image(p_bitmap->convert_to_image());
|
||||||
texture_rect->set_texture(bitmap_texture);
|
texture_rect->set_texture(bitmap_texture);
|
||||||
|
if (bitmap_texture.is_valid()) {
|
||||||
|
centering_container->set_custom_minimum_size(Size2(0, 250) * EDSCALE);
|
||||||
centering_container->set_ratio(bitmap_texture->get_size().aspect());
|
centering_container->set_ratio(bitmap_texture->get_size().aspect());
|
||||||
|
outline_overlay->connect(SceneStringName(draw), callable_mp(this, &BitMapEditor::_draw_outline));
|
||||||
|
}
|
||||||
size_label->set_text(vformat(U"%s×%s", p_bitmap->get_size().width, p_bitmap->get_size().height));
|
size_label->set_text(vformat(U"%s×%s", p_bitmap->get_size().width, p_bitmap->get_size().height));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -70,7 +74,6 @@ BitMapEditor::BitMapEditor() {
|
|||||||
add_child(margin_container);
|
add_child(margin_container);
|
||||||
|
|
||||||
centering_container = memnew(AspectRatioContainer);
|
centering_container = memnew(AspectRatioContainer);
|
||||||
centering_container->set_custom_minimum_size(Size2(0, 250) * EDSCALE);
|
|
||||||
margin_container->add_child(centering_container);
|
margin_container->add_child(centering_container);
|
||||||
|
|
||||||
texture_rect = memnew(TextureRect);
|
texture_rect = memnew(TextureRect);
|
||||||
@@ -79,7 +82,6 @@ BitMapEditor::BitMapEditor() {
|
|||||||
centering_container->add_child(texture_rect);
|
centering_container->add_child(texture_rect);
|
||||||
|
|
||||||
outline_overlay = memnew(Control);
|
outline_overlay = memnew(Control);
|
||||||
outline_overlay->connect(SceneStringName(draw), callable_mp(this, &BitMapEditor::_draw_outline));
|
|
||||||
centering_container->add_child(outline_overlay);
|
centering_container->add_child(outline_overlay);
|
||||||
|
|
||||||
size_label = memnew(Label);
|
size_label = memnew(Label);
|
||||||
|
|||||||
Reference in New Issue
Block a user