|
|
- #if UNITY_EDITOR
- using UnityEditor;
-
- //路径保存器,记录上次打开的路径,不同项目的不同用处路径都分开保存
- namespace U3DExtends
- {
- public enum PathType {
- //OpenLayout,//打开布局时默认打开的文件夹路径//和Save用同个会方便点
- SaveLayout,//保存布局时默认打开的文件夹路径
- OpenDecorate,//选择参考图时默认打开的文件夹路径
- PrefabTool,//Prefab界面用的
- }
- public class PathSaver {
- private volatile static PathSaver _instance = null;
- private static readonly object lockHelper = new object();
- private PathSaver() { }
- public static PathSaver GetInstance()
- {
- if(_instance == null)
- {
- lock(lockHelper)
- {
- if(_instance == null)
- _instance = new PathSaver();
- }
- }
- return _instance;
- }
-
- public string GeDefaultPath(PathType type)
- {
- return "";
- }
-
- public string GetLastPath(PathType type)
- {
- return EditorPrefs.GetString("PathSaver_" + U3DExtends.Configure.ProjectUUID + "_" + type.ToString(), GeDefaultPath(type));
- }
-
- public void SetLastPath(PathType type, string path)
- {
- if (path == "")
- return;
- path = System.IO.Path.GetDirectoryName(path);
- EditorPrefs.SetString("PathSaver_" + U3DExtends.Configure.ProjectUUID + "_" + type.ToString(), path);
- }
-
- }
- }
- #endif
|