diff --git a/doc/classes/EditorDock.xml b/doc/classes/EditorDock.xml
index c972c4f1d9e..a373909901c 100644
--- a/doc/classes/EditorDock.xml
+++ b/doc/classes/EditorDock.xml
@@ -88,7 +88,7 @@
If [code]true[/code], the dock can be closed with the Close button in the context popup. Docks with [member global] enabled are always closable.
-
+
The default dock slot used when adding the dock with [method EditorPlugin.add_dock].
After the dock is added, it can be moved to a different slot and the editor will automatically remember its position between sessions. If you remove and re-add the dock, it will be reset to default.
@@ -140,5 +140,38 @@
Allows placing the dock in all available slots.
+
+ The dock is closed.
+
+
+ Dock slot, left side, upper-left (empty in default layout).
+
+
+ Dock slot, left side, bottom-left (empty in default layout).
+
+
+ Dock slot, left side, upper-right (in default layout includes Scene and Import docks).
+
+
+ Dock slot, left side, bottom-right (in default layout includes FileSystem and History docks).
+
+
+ Dock slot, right side, upper-left (in default layout includes Inspector, Signal, and Group docks).
+
+
+ Dock slot, right side, bottom-left (empty in default layout).
+
+
+ Dock slot, right side, upper-right (empty in default layout).
+
+
+ Dock slot, right side, bottom-right (empty in default layout).
+
+
+ Bottom panel.
+
+
+ Represents the size of the [enum DockSlot] enum.
+
diff --git a/editor/animation/animation_player_editor_plugin.cpp b/editor/animation/animation_player_editor_plugin.cpp
index 5c4df16f2f8..ab5c3a5ddc7 100644
--- a/editor/animation/animation_player_editor_plugin.cpp
+++ b/editor/animation/animation_player_editor_plugin.cpp
@@ -2057,7 +2057,7 @@ AnimationPlayerEditor::AnimationPlayerEditor(AnimationPlayerEditorPlugin *p_plug
set_name(TTRC("Animation"));
set_icon_name("Animation");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_animation_bottom_panel", TTRC("Toggle Animation Dock"), KeyModifierMask::ALT | Key::N));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
set_focus_mode(FOCUS_ALL);
diff --git a/editor/animation/animation_tree_editor_plugin.cpp b/editor/animation/animation_tree_editor_plugin.cpp
index 7da0797211b..08f116172ab 100644
--- a/editor/animation/animation_tree_editor_plugin.cpp
+++ b/editor/animation/animation_tree_editor_plugin.cpp
@@ -34,6 +34,7 @@
#include "animation_blend_space_2d_editor.h"
#include "animation_blend_tree_editor_plugin.h"
#include "animation_state_machine_editor.h"
+#include "editor/docks/editor_dock_manager.h"
#include "editor/editor_node.h"
#include "editor/gui/editor_bottom_panel.h"
#include "editor/settings/editor_command_palette.h"
@@ -264,7 +265,7 @@ AnimationTreeEditor::AnimationTreeEditor() {
set_name(TTRC("AnimationTree"));
set_icon_name("AnimationTreeDock");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_animation_tree_bottom_panel", TTRC("Toggle AnimationTree Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
set_global(false);
set_transient(true);
diff --git a/editor/audio/editor_audio_buses.cpp b/editor/audio/editor_audio_buses.cpp
index fa4e6199116..160bc57d25e 100644
--- a/editor/audio/editor_audio_buses.cpp
+++ b/editor/audio/editor_audio_buses.cpp
@@ -1373,7 +1373,7 @@ EditorAudioBuses::EditorAudioBuses() {
set_name(TTRC("Audio"));
set_icon_name("AudioStreamPlayer");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_audio_bottom_panel", TTRC("Toggle Audio Dock"), KeyModifierMask::ALT | Key::A));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
VBoxContainer *main_vb = memnew(VBoxContainer);
diff --git a/editor/debugger/debugger_editor_plugin.cpp b/editor/debugger/debugger_editor_plugin.cpp
index 99a482db3c9..285b368f349 100644
--- a/editor/debugger/debugger_editor_plugin.cpp
+++ b/editor/debugger/debugger_editor_plugin.cpp
@@ -34,6 +34,7 @@
#include "editor/debugger/editor_debugger_node.h"
#include "editor/debugger/editor_debugger_server.h"
#include "editor/debugger/editor_file_server.h"
+#include "editor/docks/editor_dock_manager.h"
#include "editor/editor_node.h"
#include "editor/run/run_instances_dialog.h"
#include "editor/script/script_editor_plugin.h"
diff --git a/editor/debugger/editor_debugger_node.cpp b/editor/debugger/editor_debugger_node.cpp
index 68c03da2c88..cf50ad94fa7 100644
--- a/editor/debugger/editor_debugger_node.cpp
+++ b/editor/debugger/editor_debugger_node.cpp
@@ -34,6 +34,7 @@
#include "editor/debugger/editor_debugger_plugin.h"
#include "editor/debugger/editor_debugger_tree.h"
#include "editor/debugger/script_editor_debugger.h"
+#include "editor/docks/editor_dock_manager.h"
#include "editor/docks/inspector_dock.h"
#include "editor/docks/scene_tree_dock.h"
#include "editor/editor_log.h"
@@ -65,7 +66,7 @@ EditorDebuggerNode::EditorDebuggerNode() {
set_icon_name("Debug");
set_layout_key("Debugger");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_debugger_bottom_panel", TTRC("Toggle Debugger Dock"), KeyModifierMask::ALT | Key::D));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL);
set_global(false);
set_transient(true);
diff --git a/editor/docks/editor_dock.cpp b/editor/docks/editor_dock.cpp
index 2d34b459785..f46b68ed90a 100644
--- a/editor/docks/editor_dock.cpp
+++ b/editor/docks/editor_dock.cpp
@@ -34,9 +34,9 @@
#include "core/io/config_file.h"
#include "editor/docks/editor_dock_manager.h"
-void EditorDock::_set_default_slot_bind(EditorPlugin::DockSlot p_slot) {
- ERR_FAIL_COND(p_slot < EditorPlugin::DOCK_SLOT_NONE || p_slot >= EditorPlugin::DOCK_SLOT_MAX);
- default_slot = (DockConstants::DockSlot)p_slot;
+void EditorDock::_set_default_slot_bind(DockSlot p_slot) {
+ ERR_FAIL_COND(p_slot < DOCK_SLOT_NONE || p_slot >= DOCK_SLOT_MAX);
+ default_slot = p_slot;
}
void EditorDock::_emit_changed() {
@@ -104,6 +104,18 @@ void EditorDock::_bind_methods() {
BIND_BITFIELD_FLAG(DOCK_LAYOUT_FLOATING);
BIND_BITFIELD_FLAG(DOCK_LAYOUT_ALL);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_NONE);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_LEFT_UL);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_LEFT_BL);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_LEFT_UR);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_LEFT_BR);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_RIGHT_UL);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_RIGHT_BL);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_RIGHT_UR);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_RIGHT_BR);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_BOTTOM);
+ BIND_ENUM_CONSTANT(DOCK_SLOT_MAX);
+
GDVIRTUAL_BIND(_update_layout, "layout");
GDVIRTUAL_BIND(_save_layout_to_config, "config", "section");
GDVIRTUAL_BIND(_load_layout_from_config, "config", "section");
@@ -191,8 +203,8 @@ void EditorDock::set_dock_shortcut(const Ref &p_shortcut) {
_emit_changed();
}
-void EditorDock::set_default_slot(DockConstants::DockSlot p_slot) {
- ERR_FAIL_INDEX(p_slot, DockConstants::DOCK_SLOT_MAX);
+void EditorDock::set_default_slot(DockSlot p_slot) {
+ ERR_FAIL_INDEX(p_slot, DOCK_SLOT_MAX);
default_slot = p_slot;
}
diff --git a/editor/docks/editor_dock.h b/editor/docks/editor_dock.h
index 09e51569070..fb1f3c29f24 100644
--- a/editor/docks/editor_dock.h
+++ b/editor/docks/editor_dock.h
@@ -30,11 +30,10 @@
#pragma once
-#include "editor/docks/editor_dock_manager.h"
-#include "editor/plugins/editor_plugin.h"
+#include "core/io/config_file.h"
+#include "editor/docks/dock_constants.h"
#include "scene/gui/margin_container.h"
-class ConfigFile;
class Shortcut;
class WindowWrapper;
@@ -49,6 +48,20 @@ public:
DOCK_LAYOUT_ALL = DOCK_LAYOUT_VERTICAL | DOCK_LAYOUT_HORIZONTAL | DOCK_LAYOUT_FLOATING,
};
+ enum DockSlot {
+ DOCK_SLOT_NONE = DockConstants::DOCK_SLOT_NONE,
+ DOCK_SLOT_LEFT_UL = DockConstants::DOCK_SLOT_LEFT_UL,
+ DOCK_SLOT_LEFT_BL = DockConstants::DOCK_SLOT_LEFT_BL,
+ DOCK_SLOT_LEFT_UR = DockConstants::DOCK_SLOT_LEFT_UR,
+ DOCK_SLOT_LEFT_BR = DockConstants::DOCK_SLOT_LEFT_BR,
+ DOCK_SLOT_RIGHT_UL = DockConstants::DOCK_SLOT_RIGHT_UL,
+ DOCK_SLOT_RIGHT_BL = DockConstants::DOCK_SLOT_RIGHT_BL,
+ DOCK_SLOT_RIGHT_UR = DockConstants::DOCK_SLOT_RIGHT_UR,
+ DOCK_SLOT_RIGHT_BR = DockConstants::DOCK_SLOT_RIGHT_BR,
+ DOCK_SLOT_BOTTOM = DockConstants::DOCK_SLOT_BOTTOM,
+ DOCK_SLOT_MAX = DockConstants::DOCK_SLOT_MAX
+ };
+
private:
friend class EditorDockManager;
friend class DockContextPopup;
@@ -61,7 +74,7 @@ private:
bool force_show_icon = false;
Color title_color = Color(0, 0, 0, 0);
Ref shortcut;
- DockConstants::DockSlot default_slot = DockConstants::DOCK_SLOT_NONE;
+ DockSlot default_slot = DOCK_SLOT_NONE;
bool global = true;
bool transient = false;
bool closable = false;
@@ -74,8 +87,8 @@ private:
WindowWrapper *dock_window = nullptr;
int dock_slot_index = DockConstants::DOCK_SLOT_NONE;
- void _set_default_slot_bind(EditorPlugin::DockSlot p_slot);
- EditorPlugin::DockSlot _get_default_slot_bind() const { return (EditorPlugin::DockSlot)default_slot; }
+ void _set_default_slot_bind(DockSlot p_slot);
+ DockSlot _get_default_slot_bind() const { return default_slot; }
void _emit_changed();
@@ -121,8 +134,8 @@ public:
void set_dock_shortcut(const Ref &p_shortcut);
Ref get_dock_shortcut() const { return shortcut; }
- void set_default_slot(DockConstants::DockSlot p_slot);
- DockConstants::DockSlot get_default_slot() const { return default_slot; }
+ void set_default_slot(DockSlot p_slot);
+ DockSlot get_default_slot() const { return default_slot; }
void set_available_layouts(BitField p_layouts) { available_layouts = p_layouts; }
BitField get_available_layouts() const { return available_layouts; }
@@ -136,3 +149,4 @@ public:
};
VARIANT_BITFIELD_CAST(EditorDock::DockLayout);
+VARIANT_ENUM_CAST(EditorDock::DockSlot);
diff --git a/editor/docks/editor_dock_manager.cpp b/editor/docks/editor_dock_manager.cpp
index d812eb02e14..07947091648 100644
--- a/editor/docks/editor_dock_manager.cpp
+++ b/editor/docks/editor_dock_manager.cpp
@@ -934,7 +934,7 @@ void EditorDockManager::add_dock(EditorDock *p_dock) {
p_dock->connect("_tab_style_changed", callable_mp(this, &EditorDockManager::_queue_update_tab_style).bind(p_dock));
p_dock->connect("renamed", callable_mp(this, &EditorDockManager::_queue_update_tab_style).bind(p_dock));
- if (p_dock->default_slot != DockConstants::DOCK_SLOT_NONE) {
+ if (p_dock->default_slot != EditorDock::DOCK_SLOT_NONE) {
open_dock(p_dock, false);
} else {
closed_dock_parent->add_child(p_dock);
diff --git a/editor/docks/filesystem_dock.cpp b/editor/docks/filesystem_dock.cpp
index 0290650f2dc..e36fae316da 100644
--- a/editor/docks/filesystem_dock.cpp
+++ b/editor/docks/filesystem_dock.cpp
@@ -4243,7 +4243,7 @@ FileSystemDock::FileSystemDock() {
set_name(TTRC("FileSystem"));
set_icon_name("Folder");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_filesystem", TTRC("Open FileSystem Dock"), KeyModifierMask::ALT | Key::F));
- set_default_slot(DockConstants::DOCK_SLOT_LEFT_BR);
+ set_default_slot(EditorDock::DOCK_SLOT_LEFT_BR);
set_available_layouts(DOCK_LAYOUT_ALL);
ProjectSettings::get_singleton()->add_hidden_prefix("file_customization/");
diff --git a/editor/docks/groups_dock.cpp b/editor/docks/groups_dock.cpp
index 6faf105a11a..de2534e5dfe 100644
--- a/editor/docks/groups_dock.cpp
+++ b/editor/docks/groups_dock.cpp
@@ -41,7 +41,7 @@ GroupsDock::GroupsDock() {
set_name(TTRC("Groups"));
set_icon_name("Groups");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_groups", TTRC("Open Groups Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_RIGHT_UL);
+ set_default_slot(EditorDock::DOCK_SLOT_RIGHT_UL);
groups = memnew(GroupsEditor);
groups->set_v_size_flags(SIZE_EXPAND_FILL);
diff --git a/editor/docks/history_dock.cpp b/editor/docks/history_dock.cpp
index 0a8b6fa7854..9fe390a77d3 100644
--- a/editor/docks/history_dock.cpp
+++ b/editor/docks/history_dock.cpp
@@ -239,7 +239,7 @@ HistoryDock::HistoryDock() {
set_name(TTRC("History"));
set_icon_name("History");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_history", TTRC("Open History Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_LEFT_BR);
+ set_default_slot(EditorDock::DOCK_SLOT_LEFT_BR);
ur_manager = EditorUndoRedoManager::get_singleton();
ur_manager->connect("history_changed", callable_mp(this, &HistoryDock::on_history_changed));
diff --git a/editor/docks/import_dock.cpp b/editor/docks/import_dock.cpp
index 89728cc3734..c579d0a1e47 100644
--- a/editor/docks/import_dock.cpp
+++ b/editor/docks/import_dock.cpp
@@ -747,7 +747,7 @@ ImportDock::ImportDock() {
set_name(TTRC("Import"));
set_icon_name("FileAccess");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_import", TTRC("Open Import Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_LEFT_UR);
+ set_default_slot(EditorDock::DOCK_SLOT_LEFT_UR);
VBoxContainer *main_vb = memnew(VBoxContainer);
add_child(main_vb);
diff --git a/editor/docks/inspector_dock.cpp b/editor/docks/inspector_dock.cpp
index ce71305bee9..fbd20fee95f 100644
--- a/editor/docks/inspector_dock.cpp
+++ b/editor/docks/inspector_dock.cpp
@@ -719,7 +719,7 @@ InspectorDock::InspectorDock(EditorData &p_editor_data) {
set_name(TTRC("Inspector"));
set_icon_name("AnimationTrackList");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_inspector", TTRC("Open Inspector Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_RIGHT_UL);
+ set_default_slot(EditorDock::DOCK_SLOT_RIGHT_UL);
VBoxContainer *main_vb = memnew(VBoxContainer);
add_child(main_vb);
diff --git a/editor/docks/scene_tree_dock.cpp b/editor/docks/scene_tree_dock.cpp
index 722501a9b87..838cbaaceaf 100644
--- a/editor/docks/scene_tree_dock.cpp
+++ b/editor/docks/scene_tree_dock.cpp
@@ -4777,7 +4777,7 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
set_name(TTRC("Scene"));
set_icon_name("PackedScene");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_scene", TTRC("Open Scene Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_LEFT_UR);
+ set_default_slot(EditorDock::DOCK_SLOT_LEFT_UR);
singleton = this;
editor_data = &p_editor_data;
diff --git a/editor/docks/scene_tree_dock.h b/editor/docks/scene_tree_dock.h
index 983b24e16b8..c3d1a4ad0f4 100644
--- a/editor/docks/scene_tree_dock.h
+++ b/editor/docks/scene_tree_dock.h
@@ -42,7 +42,9 @@ class HBoxContainer;
class MenuButton;
class RenameDialog;
class ReparentDialog;
+class Shader;
class ShaderCreateDialog;
+class ShaderMaterial;
class TextureRect;
class VBoxContainer;
diff --git a/editor/docks/signals_dock.cpp b/editor/docks/signals_dock.cpp
index e7ae0e566c9..a0371967787 100644
--- a/editor/docks/signals_dock.cpp
+++ b/editor/docks/signals_dock.cpp
@@ -46,7 +46,7 @@ SignalsDock::SignalsDock() {
set_name(TTRC("Signals"));
set_icon_name("Signals");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_signals", TTRC("Open Signals Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_RIGHT_UL);
+ set_default_slot(EditorDock::DOCK_SLOT_RIGHT_UL);
connections = memnew(ConnectionsDock);
connections->set_v_size_flags(SIZE_EXPAND_FILL);
diff --git a/editor/editor_log.cpp b/editor/editor_log.cpp
index 840211f5c06..2bb472c3c63 100644
--- a/editor/editor_log.cpp
+++ b/editor/editor_log.cpp
@@ -490,7 +490,7 @@ EditorLog::EditorLog() {
set_name(TTRC("Output"));
set_icon_name("Output");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_output_bottom_panel", TTRC("Toggle Output Dock"), KeyModifierMask::ALT | Key::O));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
save_state_timer = memnew(Timer);
diff --git a/editor/gui/credits_roll.cpp b/editor/gui/credits_roll.cpp
index 0e73df95e5a..22c67bbe488 100644
--- a/editor/gui/credits_roll.cpp
+++ b/editor/gui/credits_roll.cpp
@@ -42,6 +42,7 @@
#include "scene/gui/color_rect.h"
#include "scene/gui/label.h"
#include "scene/gui/texture_rect.h"
+#include "scene/main/window.h"
Label *CreditsRoll::_create_label(const String &p_with_text, LabelSize p_size) {
Label *label = memnew(Label);
diff --git a/editor/gui/editor_bottom_panel.cpp b/editor/gui/editor_bottom_panel.cpp
index c8da4ef3131..3961f646cb5 100644
--- a/editor/gui/editor_bottom_panel.cpp
+++ b/editor/gui/editor_bottom_panel.cpp
@@ -207,7 +207,7 @@ Button *EditorBottomPanel::add_item(String p_text, Control *p_item, const Refset_dock_shortcut(p_shortcut);
dock->set_global(false);
dock->set_transient(true);
- dock->set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ dock->set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
dock->set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL);
EditorDockManager::get_singleton()->add_dock(dock);
bottom_docks.push_back(dock);
diff --git a/editor/plugins/editor_plugin.cpp b/editor/plugins/editor_plugin.cpp
index 75042f8807e..243a4cbc3f2 100644
--- a/editor/plugins/editor_plugin.cpp
+++ b/editor/plugins/editor_plugin.cpp
@@ -94,7 +94,7 @@ void EditorPlugin::add_control_to_dock(DockSlot p_slot, Control *p_control, cons
EditorDock *dock = memnew(EditorDock);
dock->set_title(p_control->get_name());
dock->set_dock_shortcut(p_shortcut);
- dock->set_default_slot((DockConstants::DockSlot)p_slot);
+ dock->set_default_slot((EditorDock::DockSlot)p_slot);
dock->add_child(p_control);
legacy_docks[p_control] = dock;
diff --git a/editor/plugins/editor_plugin.h b/editor/plugins/editor_plugin.h
index 3a6028b7c32..58af2ee75b5 100644
--- a/editor/plugins/editor_plugin.h
+++ b/editor/plugins/editor_plugin.h
@@ -31,7 +31,7 @@
#pragma once
#include "core/io/config_file.h"
-#include "editor/docks/editor_dock_manager.h"
+#include "editor/docks/dock_constants.h"
#include "editor/inspector/editor_context_menu_plugin.h"
#include "scene/3d/camera_3d.h"
#include "scene/gui/control.h"
diff --git a/editor/scene/2d/polygon_2d_editor_plugin.cpp b/editor/scene/2d/polygon_2d_editor_plugin.cpp
index cb5e5e0e061..79dfafc5171 100644
--- a/editor/scene/2d/polygon_2d_editor_plugin.cpp
+++ b/editor/scene/2d/polygon_2d_editor_plugin.cpp
@@ -1339,7 +1339,7 @@ Polygon2DEditor::Polygon2DEditor() {
polygon_edit->set_name(TTRC("Polygon"));
polygon_edit->set_icon_name("PolygonDock");
polygon_edit->set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_polygon_2d_bottom_panel", TTRC("Toggle Polygon Dock")));
- polygon_edit->set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ polygon_edit->set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
polygon_edit->set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
polygon_edit->set_global(false);
polygon_edit->set_transient(true);
diff --git a/editor/scene/2d/tiles/tile_map_layer_editor.cpp b/editor/scene/2d/tiles/tile_map_layer_editor.cpp
index 020dec3d5ce..b6aecbccd6f 100644
--- a/editor/scene/2d/tiles/tile_map_layer_editor.cpp
+++ b/editor/scene/2d/tiles/tile_map_layer_editor.cpp
@@ -4449,7 +4449,7 @@ TileMapLayerEditor::TileMapLayerEditor() {
set_name(TTRC("TileMap"));
set_icon_name("TileMapDock");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_tile_map_bottom_panel", TTRC("Open TileMap Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_ALL);
set_global(false);
set_transient(true);
diff --git a/editor/scene/2d/tiles/tile_set_editor.cpp b/editor/scene/2d/tiles/tile_set_editor.cpp
index ca8182c7ebd..1207b9125e1 100644
--- a/editor/scene/2d/tiles/tile_set_editor.cpp
+++ b/editor/scene/2d/tiles/tile_set_editor.cpp
@@ -811,7 +811,7 @@ TileSetEditor::TileSetEditor() {
set_name(TTRC("TileSet"));
set_icon_name("TileSet");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_tile_set_bottom_panel", TTRC("Open TileSet Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
set_global(false);
set_transient(true);
diff --git a/editor/scene/2d/tiles/tiles_editor_plugin.cpp b/editor/scene/2d/tiles/tiles_editor_plugin.cpp
index b2d77bbbc84..be62e8275f8 100644
--- a/editor/scene/2d/tiles/tiles_editor_plugin.cpp
+++ b/editor/scene/2d/tiles/tiles_editor_plugin.cpp
@@ -34,6 +34,7 @@
#include "core/os/mutex.h"
+#include "editor/docks/editor_dock_manager.h"
#include "editor/editor_interface.h"
#include "editor/editor_node.h"
#include "editor/editor_string_names.h"
diff --git a/editor/scene/gui/theme_editor_plugin.cpp b/editor/scene/gui/theme_editor_plugin.cpp
index 7594e2b7e03..7cb2fdfe68e 100644
--- a/editor/scene/gui/theme_editor_plugin.cpp
+++ b/editor/scene/gui/theme_editor_plugin.cpp
@@ -3958,7 +3958,7 @@ ThemeEditor::ThemeEditor() {
set_name(TTRC("Theme"));
set_icon_name("ThemeDock");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_theme_bottom_panel", TTRC("Toggle Theme Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
set_global(false);
set_transient(true);
diff --git a/editor/scene/resource_preloader_editor_plugin.cpp b/editor/scene/resource_preloader_editor_plugin.cpp
index 5a905e9f0ea..944c05a7498 100644
--- a/editor/scene/resource_preloader_editor_plugin.cpp
+++ b/editor/scene/resource_preloader_editor_plugin.cpp
@@ -364,7 +364,7 @@ ResourcePreloaderEditor::ResourcePreloaderEditor() {
set_name(TTRC("ResourcePreloader"));
set_icon_name("ResourcePreloader");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_resource_preloader_bottom_panel", TTRC("Toggle ResourcePreloader Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_ALL);
set_global(false);
set_transient(true);
diff --git a/editor/scene/sprite_frames_editor_plugin.cpp b/editor/scene/sprite_frames_editor_plugin.cpp
index 7fae4d77a39..6268bb03e37 100644
--- a/editor/scene/sprite_frames_editor_plugin.cpp
+++ b/editor/scene/sprite_frames_editor_plugin.cpp
@@ -33,6 +33,7 @@
#include "core/io/resource_loader.h"
#include "core/os/keyboard.h"
#include "core/string/translation_server.h"
+#include "editor/docks/editor_dock_manager.h"
#include "editor/docks/filesystem_dock.h"
#include "editor/docks/scene_tree_dock.h"
#include "editor/editor_node.h"
@@ -2121,7 +2122,7 @@ SpriteFramesEditor::SpriteFramesEditor() {
set_name(TTRC("SpriteFrames"));
set_icon_name("SpriteFrames");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_sprite_frames_bottom_panel", TTRC("Open SpriteFrames Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
set_global(false);
set_transient(true);
diff --git a/editor/script/find_in_files.cpp b/editor/script/find_in_files.cpp
index 9d351d6efce..d4aec5fcd2e 100644
--- a/editor/script/find_in_files.cpp
+++ b/editor/script/find_in_files.cpp
@@ -1322,7 +1322,7 @@ FindInFilesContainer::FindInFilesContainer() {
set_name(TTRC("Search Results"));
set_icon_name("Search");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_search_results_bottom_panel", TTRC("Toggle Search Results Bottom Panel")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
set_global(false);
set_transient(true);
diff --git a/editor/script/text_editor.cpp b/editor/script/text_editor.cpp
index 984c37a5442..68411a3b6a4 100644
--- a/editor/script/text_editor.cpp
+++ b/editor/script/text_editor.cpp
@@ -34,6 +34,7 @@
#include "editor/editor_node.h"
#include "editor/settings/editor_settings.h"
#include "scene/gui/menu_button.h"
+#include "scene/gui/split_container.h"
void TextEditor::add_syntax_highlighter(Ref p_highlighter) {
ERR_FAIL_COND(p_highlighter.is_null());
diff --git a/editor/shader/shader_editor_plugin.cpp b/editor/shader/shader_editor_plugin.cpp
index 8a7754f7804..5170a93b7a5 100644
--- a/editor/shader/shader_editor_plugin.cpp
+++ b/editor/shader/shader_editor_plugin.cpp
@@ -860,7 +860,7 @@ ShaderEditorPlugin::ShaderEditorPlugin() {
shader_dock->set_name(TTRC("Shader Editor"));
shader_dock->set_icon_name("ShaderDock");
shader_dock->set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_shader_editor_bottom_panel", TTRC("Toggle Shader Editor Dock"), KeyModifierMask::ALT | Key::S));
- shader_dock->set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ shader_dock->set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
shader_dock->set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
shader_dock->set_custom_minimum_size(Size2(460, 300) * EDSCALE);
EditorDockManager::get_singleton()->add_dock(shader_dock);
diff --git a/editor/shader/shader_file_editor_plugin.cpp b/editor/shader/shader_file_editor_plugin.cpp
index 81d310a6f30..b00184f3c54 100644
--- a/editor/shader/shader_file_editor_plugin.cpp
+++ b/editor/shader/shader_file_editor_plugin.cpp
@@ -30,6 +30,7 @@
#include "shader_file_editor_plugin.h"
+#include "editor/docks/editor_dock_manager.h"
#include "editor/editor_node.h"
#include "editor/editor_string_names.h"
#include "editor/settings/editor_command_palette.h"
@@ -248,7 +249,7 @@ ShaderFileEditor::ShaderFileEditor() {
set_name(TTRC("ShaderFile"));
set_icon_name("RDShaderFile");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_shader_file_bottom_panel", TTRC("Toggle ShaderFile Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_ALL);
set_global(false);
set_transient(true);
diff --git a/editor/version_control/version_control_editor_plugin.cpp b/editor/version_control/version_control_editor_plugin.cpp
index 54557207fe4..4a6b9e78d49 100644
--- a/editor/version_control/version_control_editor_plugin.cpp
+++ b/editor/version_control/version_control_editor_plugin.cpp
@@ -1151,7 +1151,7 @@ VersionControlEditorPlugin::VersionControlEditorPlugin() {
version_commit_dock->set_layout_key("VersionCommit");
version_commit_dock->set_icon_name("VcsBranches");
version_commit_dock->set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("docks/open_version_control", TTRC("Open Version Control Dock")));
- version_commit_dock->set_default_slot(DockConstants::DOCK_SLOT_RIGHT_UL);
+ version_commit_dock->set_default_slot(EditorDock::DOCK_SLOT_RIGHT_UL);
VBoxContainer *dock_vb = memnew(VBoxContainer);
version_commit_dock->add_child(dock_vb);
diff --git a/modules/mono/editor/GodotTools/GodotTools/Build/MSBuildPanel.cs b/modules/mono/editor/GodotTools/GodotTools/Build/MSBuildPanel.cs
index 854cdde6063..eadac828e8c 100644
--- a/modules/mono/editor/GodotTools/GodotTools/Build/MSBuildPanel.cs
+++ b/modules/mono/editor/GodotTools/GodotTools/Build/MSBuildPanel.cs
@@ -204,7 +204,7 @@ namespace GodotTools.Build
{
Name = "MSBuild".TTR();
IconName = "BuildCSharp";
- DefaultSlot = EditorPlugin.DockSlot.Bottom;
+ DefaultSlot = EditorDock.DockSlot.Bottom;
AvailableLayouts = DockLayout.Horizontal | DockLayout.Floating;
Global = false;
Transient = true;
diff --git a/modules/openxr/editor/openxr_action_map_editor.cpp b/modules/openxr/editor/openxr_action_map_editor.cpp
index 5f4de60235f..6edb076d08d 100644
--- a/modules/openxr/editor/openxr_action_map_editor.cpp
+++ b/modules/openxr/editor/openxr_action_map_editor.cpp
@@ -437,7 +437,7 @@ OpenXRActionMapEditor::OpenXRActionMapEditor() {
set_name(TTRC("OpenXR Action Map"));
set_icon_name("OpenXRActionMap");
set_dock_shortcut(ED_SHORTCUT_AND_COMMAND("bottom_panels/toggle_openxr_action_map_bottom_panel", TTRC("Toggle OpenXR Action Map Dock")));
- set_default_slot(DockConstants::DOCK_SLOT_BOTTOM);
+ set_default_slot(EditorDock::DOCK_SLOT_BOTTOM);
set_available_layouts(EditorDock::DOCK_LAYOUT_HORIZONTAL | EditorDock::DOCK_LAYOUT_FLOATING);
set_custom_minimum_size(Size2(0.0, 300.0 * EDSCALE));