private static void InitializeLayoutPreferencesFolder() { string defaultLayoutPath = GetDefaultLayoutPath(); string layoutResourcesPath = Path.Combine(EditorApplication.applicationContentsPath, "Resources/Layouts"); if (!Directory.Exists(layoutsPreferencesPath)) { Directory.CreateDirectory(layoutsPreferencesPath); } // Make sure we have a window layouts preferences folder if (!Directory.Exists(layoutsDefaultModePreferencesPath)) { // If not copy the standard set of window layouts to the preferences folder FileUtil.CopyFileOrDirectory(layoutResourcesPath, layoutsDefaultModePreferencesPath); var defaultModeUserLayouts = Directory.GetFiles(layoutsPreferencesPath, "*.wlt"); foreach (var layoutPath in defaultModeUserLayouts) { var fileName = Path.GetFileName(layoutPath); var dst = Path.Combine(layoutsDefaultModePreferencesPath, fileName); if (!File.Exists(dst)) { FileUtil.CopyFileIfExists(layoutPath, dst, false); } } } // Make sure we have the default layout file in the preferences folder if (!File.Exists(defaultLayoutPath)) { // If not copy our default file to the preferences folder FileUtil.CopyFileOrDirectory(Path.Combine(layoutResourcesPath, kDefaultLayoutName), defaultLayoutPath); } Debug.Assert(File.Exists(defaultLayoutPath)); }