using UnityEditor; using UnityEngine; using System.IO; using hedCommon.extension.editor; using System.Collections.Generic; using hedCommon.extension.runtime; using extUnityComponents.transform; using extUnityComponents; using System; using System.Reflection; using hedCommon.time; namespace hedCommon.symlinks { /// /// An editor utility for easily creating symlinks in your project. /// /// Adds a Menu item under `Assets/Create/Folder(Symlink)`, and /// draws a small indicator in the Project view for folders that are /// symlinks. /// public static class ExtSymLinks { private static GUIStyle _symlinkMarkerStyle = null; private static GUIContent _guiContent = null; private static GUIStyle SymlinkMarkerStyle { get { if (_symlinkMarkerStyle == null) { _symlinkMarkerStyle = new GUIStyle(EditorStyles.label); _symlinkMarkerStyle.normal.textColor = Color.blue; _symlinkMarkerStyle.alignment = TextAnchor.MiddleRight; } return _symlinkMarkerStyle; } } public static void DisplayBigMarker(Rect r, string toolTip) { _guiContent = new GUIContent("<=>", toolTip); GUI.Label(r, _guiContent, ExtSymLinks.SymlinkMarkerStyle); } public static void DisplayTinyMarker(Rect r, string toolTip) { _guiContent = new GUIContent("* ", toolTip); GUI.Label(r, _guiContent, ExtSymLinks.SymlinkMarkerStyle); } public static void ResetSymLinksDatas() { SymLinksOnProjectWindowItemGUI.ResetSymLinksDatas(); SymLinksOnHierarchyItemGUI.ResetSymLinksDatas(); } } }