Explorar o código

Merge pull request #72050 from groud/flow_tilemap_toolbar

Make TileMap toolbar a FlowContainer
Rémi Verschelde %!s(int64=2) %!d(string=hai) anos
pai
achega
aeac5a80af

+ 6 - 3
editor/plugins/tiles/tile_map_editor.cpp

@@ -3997,7 +3997,7 @@ TileMapEditor::TileMapEditor() {
 	tabs_bar->connect("tab_changed", callable_mp(this, &TileMapEditor::_tab_changed));
 
 	// --- TileMap toolbar ---
-	tile_map_toolbar = memnew(HBoxContainer);
+	tile_map_toolbar = memnew(HFlowContainer);
 	tile_map_toolbar->set_h_size_flags(SIZE_EXPAND_FILL);
 	add_child(tile_map_toolbar);
 
@@ -4012,8 +4012,11 @@ TileMapEditor::TileMapEditor() {
 		}
 	}
 
-	// Wide empty separation control.
-	tile_map_toolbar->add_spacer();
+	// Wide empty separation control. (like BoxContainer::add_spacer())
+	Control *c = memnew(Control);
+	c->set_mouse_filter(MOUSE_FILTER_PASS);
+	c->set_h_size_flags(SIZE_EXPAND_FILL);
+	tile_map_toolbar->add_child(c);
 
 	// Layer selector.
 	layers_selection_button = memnew(OptionButton);

+ 2 - 1
editor/plugins/tiles/tile_map_editor.h

@@ -38,6 +38,7 @@
 #include "scene/2d/tile_map.h"
 #include "scene/gui/box_container.h"
 #include "scene/gui/check_box.h"
+#include "scene/gui/flow_container.h"
 #include "scene/gui/item_list.h"
 #include "scene/gui/menu_button.h"
 #include "scene/gui/option_button.h"
@@ -323,7 +324,7 @@ private:
 	Vector<TileMapEditorPlugin *> tile_map_editor_plugins;
 
 	// Toolbar.
-	HBoxContainer *tile_map_toolbar = nullptr;
+	HFlowContainer *tile_map_toolbar = nullptr;
 
 	OptionButton *layers_selection_button = nullptr;
 	Button *toggle_highlight_selected_layer_button = nullptr;