|
@@ -3861,7 +3861,7 @@ ToolButton *EditorNode::add_bottom_panel_item(String p_text, Control *p_item) {
|
|
|
tb->set_focus_mode(Control::FOCUS_NONE);
|
|
|
bottom_panel_vb->add_child(p_item);
|
|
|
bottom_panel_hb->raise();
|
|
|
- bottom_panel_hb->add_child(tb);
|
|
|
+ bottom_panel_hb_editors->add_child(tb);
|
|
|
p_item->set_v_size_flags(Control::SIZE_EXPAND_FILL);
|
|
|
p_item->hide();
|
|
|
BottomPanelItem bpi;
|
|
@@ -3925,7 +3925,7 @@ void EditorNode::remove_bottom_panel_item(Control *p_item) {
|
|
|
_bottom_panel_switch(false, 0);
|
|
|
}
|
|
|
bottom_panel_vb->remove_child(bottom_panel_items[i].control);
|
|
|
- bottom_panel_hb->remove_child(bottom_panel_items[i].button);
|
|
|
+ bottom_panel_hb_editors->remove_child(bottom_panel_items[i].button);
|
|
|
memdelete(bottom_panel_items[i].button);
|
|
|
bottom_panel_items.remove(i);
|
|
|
break;
|
|
@@ -3955,6 +3955,11 @@ void EditorNode::_bottom_panel_switch(bool p_enable, int p_idx) {
|
|
|
}
|
|
|
center_split->set_dragger_visibility(SplitContainer::DRAGGER_VISIBLE);
|
|
|
center_split->set_collapsed(false);
|
|
|
+ if (bottom_panel_raise->is_pressed()) {
|
|
|
+ top_split->hide();
|
|
|
+ }
|
|
|
+ bottom_panel_raise->show();
|
|
|
+
|
|
|
} else {
|
|
|
bottom_panel->add_style_override("panel", gui_base->get_stylebox("panel", "TabContainer"));
|
|
|
for (int i = 0; i < bottom_panel_items.size(); i++) {
|
|
@@ -3964,6 +3969,10 @@ void EditorNode::_bottom_panel_switch(bool p_enable, int p_idx) {
|
|
|
}
|
|
|
center_split->set_dragger_visibility(SplitContainer::DRAGGER_HIDDEN);
|
|
|
center_split->set_collapsed(true);
|
|
|
+ bottom_panel_raise->hide();
|
|
|
+ if (bottom_panel_raise->is_pressed()) {
|
|
|
+ top_split->show();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -4373,6 +4382,17 @@ Vector<Ref<EditorResourceConversionPlugin> > EditorNode::find_resource_conversio
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
+void EditorNode::_bottom_panel_raise_toggled(bool p_pressed) {
|
|
|
+
|
|
|
+ if (p_pressed) {
|
|
|
+ top_split->hide();
|
|
|
+ bottom_panel_raise->set_icon(gui_base->get_icon("ShrinkBottomDock", "EditorIcons"));
|
|
|
+ } else {
|
|
|
+ top_split->show();
|
|
|
+ bottom_panel_raise->set_icon(gui_base->get_icon("ExpandBottomDock", "EditorIcons"));
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
void EditorNode::_bind_methods() {
|
|
|
|
|
|
ClassDB::bind_method("_menu_option", &EditorNode::_menu_option);
|
|
@@ -4441,6 +4461,7 @@ void EditorNode::_bind_methods() {
|
|
|
ClassDB::bind_method(D_METHOD("_dim_timeout"), &EditorNode::_dim_timeout);
|
|
|
|
|
|
ClassDB::bind_method(D_METHOD("_resources_reimported"), &EditorNode::_resources_reimported);
|
|
|
+ ClassDB::bind_method(D_METHOD("_bottom_panel_raise_toggled"), &EditorNode::_bottom_panel_raise_toggled);
|
|
|
|
|
|
ADD_SIGNAL(MethodInfo("play_pressed"));
|
|
|
ADD_SIGNAL(MethodInfo("pause_pressed"));
|
|
@@ -5269,6 +5290,19 @@ EditorNode::EditorNode() {
|
|
|
bottom_panel_hb = memnew(HBoxContainer);
|
|
|
bottom_panel_vb->add_child(bottom_panel_hb);
|
|
|
|
|
|
+ bottom_panel_hb_editors = memnew(HBoxContainer);
|
|
|
+ bottom_panel_hb_editors->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
|
|
+ bottom_panel_hb->add_child(bottom_panel_hb_editors);
|
|
|
+ bottom_panel_raise = memnew(ToolButton);
|
|
|
+ bottom_panel_raise->set_icon(gui_base->get_icon("ExpandBottomDock", "EditorIcons"));
|
|
|
+
|
|
|
+ bottom_panel_raise->set_shortcut(ED_SHORTCUT("editor/bottom_panel_expand", TTR("Expand Bottom Panel"), KEY_MASK_SHIFT | KEY_F12));
|
|
|
+
|
|
|
+ bottom_panel_hb->add_child(bottom_panel_raise);
|
|
|
+ bottom_panel_raise->hide();
|
|
|
+ bottom_panel_raise->set_toggle_mode(true);
|
|
|
+ bottom_panel_raise->connect("toggled", this, "_bottom_panel_raise_toggled");
|
|
|
+
|
|
|
log = memnew(EditorLog);
|
|
|
ToolButton *output_button = add_bottom_panel_item(TTR("Output"), log);
|
|
|
log->set_tool_button(output_button);
|