Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private const string TEMP_LAYOUT = "Temp/TempLayout.dwlt";
- private const BindingFlags FULL_BINDING = BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic;
- public static void SaveLayout() {
- var windowLayoutType = typeof(Editor).Assembly.GetType("UnityEditor.WindowLayout");
- var saveLayoutMethod = windowLayoutType.GetMethod("SaveWindowLayout", FULL_BINDING);
- saveLayoutMethod.Invoke(null, new object[] { TEMP_LAYOUT });
- }
- public static void LoadLayout() {
- try {
- var windowLayoutType = typeof(Editor).Assembly.GetType("UnityEditor.WindowLayout");
- var loadMethod = windowLayoutType.GetMethod("LoadWindowLayout", FULL_BINDING);
- loadMethod.Invoke(null, new object[] { TEMP_LAYOUT, false });
- }
- catch(Exception e) {
- InternalEditorUtility.LoadDefaultLayout();
- Debug.LogException(e);
- Debug.LogError("Exception was thrown while loading the previous layout, the default layout was loaded instead");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement