#if !UNITY_6000_3_OR_NEWER using UnityEditor; #endif using UnityEngine; namespace Module.NavigationTool.Editor.Toolbar { public sealed class Styles { #if !UNITY_6000_3_OR_NEWER public GUIStyle popup; public GUIStyle button; public GUIStyle buttonNoPadding; public GUIStyle slider; public GUIStyle label; public GUIStyle labelCenter; public GUIStyle centeredMiniLabel; #endif public GUIStyle settingsGroup; #if !UNITY_6000_3_OR_NEWER public GUIContent iconPlusSmall; #if !UNITY_6000_0_OR_NEWER public GUIContent iconSceneAdditive; public GUIContent iconSceneSingle; #endif public GUIContent iconDisconnect; public GUIContent iconProject; public GUIContent iconSettings; #endif private GUISkin skin; public void Initialize(GUISkin skin) { if (this.skin == skin) return; this.skin = skin; #if !UNITY_6000_3_OR_NEWER popup = new GUIStyle(skin.FindStyle("ToolbarPopup")); button = new GUIStyle(skin.FindStyle("toolbarbutton")); slider = new GUIStyle(skin.FindStyle("ToolbarSlider")); label = new GUIStyle(skin.FindStyle("ToolbarLabel")); if (EditorGUIUtility.isProSkin) { centeredMiniLabel = EditorStyles.centeredGreyMiniLabel; } else { centeredMiniLabel = new GUIStyle(EditorStyles.centeredGreyMiniLabel); centeredMiniLabel.normal.textColor = label.normal.textColor; } buttonNoPadding = new GUIStyle(skin.FindStyle("toolbarbutton")) { padding = new RectOffset() }; labelCenter = new GUIStyle(skin.FindStyle("ToolbarLabel")) { alignment = TextAnchor.MiddleCenter }; #endif settingsGroup = new GUIStyle { margin = new RectOffset(8, 0, 8, 0) }; #if !UNITY_6000_3_OR_NEWER if (EditorGUIUtility.isProSkin) { iconPlusSmall = EditorGUIUtility.IconContent("d_CreateAddNew"); #if !UNITY_6000_0_OR_NEWER iconSceneAdditive = EditorGUIUtility.IconContent("d_winbtn_win_restore_h"); iconSceneSingle = EditorGUIUtility.IconContent("d_winbtn_win_max_h"); #endif } else { iconPlusSmall = EditorGUIUtility.IconContent("CreateAddNew"); #if !UNITY_6000_0_OR_NEWER iconSceneAdditive = EditorGUIUtility.IconContent("winbtn_win_restore_h"); iconSceneSingle = EditorGUIUtility.IconContent("winbtn_win_max_h"); #endif } iconDisconnect = EditorGUIUtility.IconContent("d_CacheServerDisconnected"); iconProject = EditorGUIUtility.IconContent("Project"); iconSettings = new GUIContent(EditorGUIUtility.IconContent("Settings")); #endif } } }