浏览代码

Merge pull request #7635 from RandomShaper/fs-split-layout

Include filesystem dock split offset in editor layouts
Rémi Verschelde 8 年之前
父节点
当前提交
355ce0d0de
共有 2 个文件被更改,包括 11 次插入0 次删除
  1. 8 0
      tools/editor/editor_node.cpp
  2. 3 0
      tools/editor/filesystem_dock.h

+ 8 - 0
tools/editor/editor_node.cpp

@@ -4514,6 +4514,8 @@ void EditorNode::_save_docks_to_config(Ref<ConfigFile> p_layout, const String& p
 		}
 	}
 
+	p_layout->set_value(p_section,"dock_filesystem_split",filesystem_dock->get_split_offset());
+
 	VSplitContainer*splits[DOCK_SLOT_MAX/2]={
 		left_l_vsplit,
 		left_r_vsplit,
@@ -4690,6 +4692,12 @@ void EditorNode::_load_docks_from_config(Ref<ConfigFile> p_layout, const String&
 		}
 	}
 
+	int fs_split_ofs = 0;
+	if (p_layout->has_section_key(p_section,"dock_filesystem_split")) {
+		fs_split_ofs = p_layout->get_value(p_section,"dock_filesystem_split");
+	}
+	filesystem_dock->set_split_offset(fs_split_ofs);
+
 	VSplitContainer*splits[DOCK_SLOT_MAX/2]={
 		left_l_vsplit,
 		left_r_vsplit,

+ 3 - 0
tools/editor/filesystem_dock.h

@@ -199,6 +199,9 @@ public:
 
 	void set_display_mode(int p_mode);
 
+	int get_split_offset() { return split_box->get_split_offset(); }
+	void set_split_offset(int p_offset) { split_box->set_split_offset(p_offset); }
+
 	FileSystemDock(EditorNode *p_editor);
 	~FileSystemDock();
 };