1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-06 12:20:30 +00:00

Don't hard-code hsplit count

This commit is contained in:
kobewi
2025-05-26 23:00:40 +02:00
parent 4fcd85551c
commit 2fd881c40f
3 changed files with 10 additions and 5 deletions

View File

@@ -1004,6 +1004,10 @@ void EditorDockManager::register_dock_slot(DockSlot p_dock_slot, TabContainer *p
EditorNode::get_singleton()->get_gui_base()->add_child(dock_drag_rects[p_dock_slot]); EditorNode::get_singleton()->get_gui_base()->add_child(dock_drag_rects[p_dock_slot]);
} }
int EditorDockManager::get_hsplit_count() const {
return hsplits.size();
}
int EditorDockManager::get_vsplit_count() const { int EditorDockManager::get_vsplit_count() const {
return vsplits.size(); return vsplits.size();
} }

View File

@@ -149,6 +149,7 @@ public:
void add_vsplit(DockSplitContainer *p_split); void add_vsplit(DockSplitContainer *p_split);
void add_hsplit(DockSplitContainer *p_split); void add_hsplit(DockSplitContainer *p_split);
void register_dock_slot(DockSlot p_dock_slot, TabContainer *p_tab_container); void register_dock_slot(DockSlot p_dock_slot, TabContainer *p_tab_container);
int get_hsplit_count() const;
int get_vsplit_count() const; int get_vsplit_count() const;
PopupMenu *get_docks_menu(); PopupMenu *get_docks_menu();

View File

@@ -8410,14 +8410,14 @@ EditorNode::EditorNode() {
default_layout->set_value(docks_section, "dock_4", "FileSystem"); default_layout->set_value(docks_section, "dock_4", "FileSystem");
default_layout->set_value(docks_section, "dock_5", "Inspector,Node,History"); default_layout->set_value(docks_section, "dock_5", "Inspector,Node,History");
// There are 4 vsplits and 4 hsplits. int hsplits[] = { 0, 270, -270, 0 };
DEV_ASSERT((int)std::size(hsplits) == editor_dock_manager->get_hsplit_count());
for (int i = 0; i < editor_dock_manager->get_hsplit_count(); i++) {
default_layout->set_value(docks_section, "dock_hsplit_" + itos(i + 1), hsplits[i]);
}
for (int i = 0; i < editor_dock_manager->get_vsplit_count(); i++) { for (int i = 0; i < editor_dock_manager->get_vsplit_count(); i++) {
default_layout->set_value(docks_section, "dock_split_" + itos(i + 1), 0); default_layout->set_value(docks_section, "dock_split_" + itos(i + 1), 0);
} }
default_layout->set_value(docks_section, "dock_hsplit_1", 0);
default_layout->set_value(docks_section, "dock_hsplit_2", 270);
default_layout->set_value(docks_section, "dock_hsplit_3", -270);
default_layout->set_value(docks_section, "dock_hsplit_4", 0);
_update_layouts_menu(); _update_layouts_menu();