Merge pull request #113065 from KoBeWi/Outdock

Add bottom dock tab style setting
This commit is contained in:
Thaddeus Crews 2025-11-25 09:52:30 -06:00
commit 8c76d71971
No known key found for this signature in database
GPG key ID: 8C6E5FEB5FC03CCC
10 changed files with 56 additions and 20 deletions

View file

@ -540,25 +540,33 @@ void EditorDockManager::_update_tab_style(EditorDock *p_dock) {
tab_container->get_tab_bar()->set_font_color_override_all(index, p_dock->title_color);
const TabStyle style = (TabStyle)EDITOR_GET("interface/editor/dock_tab_style").operator int();
const TabStyle style = (tab_container == EditorNode::get_bottom_panel())
? (TabStyle)EDITOR_GET("interface/editor/bottom_dock_tab_style").operator int()
: (TabStyle)EDITOR_GET("interface/editor/dock_tab_style").operator int();
const Ref<Texture2D> icon = _get_dock_icon(p_dock, callable_mp((Control *)tab_container, &Control::get_editor_theme_icon));
bool assign_icon = p_dock->force_show_icon;
switch (style) {
case TabStyle::TEXT_ONLY: {
tab_container->set_tab_title(index, p_dock->get_display_title());
tab_container->set_tab_icon(index, Ref<Texture2D>());
tab_container->set_tab_tooltip(index, String());
} break;
case TabStyle::ICON_ONLY: {
tab_container->set_tab_title(index, icon.is_valid() ? String() : p_dock->get_display_title());
tab_container->set_tab_icon(index, icon);
tab_container->set_tab_tooltip(index, p_dock->get_display_title());
assign_icon = true;
} break;
case TabStyle::TEXT_AND_ICON: {
tab_container->set_tab_title(index, p_dock->get_display_title());
tab_container->set_tab_icon(index, icon);
tab_container->set_tab_tooltip(index, String());
assign_icon = true;
} break;
}
if (assign_icon) {
tab_container->set_tab_icon(index, icon);
} else {
tab_container->set_tab_icon(index, Ref<Texture2D>());
}
}
void EditorDockManager::save_docks_to_config(Ref<ConfigFile> p_layout, const String &p_section) const {