/* ONLY NEEDED BY STYLING DEVS AND DESIGNERS. * [MenuItem("Theme/Refresh Styles &r", priority = 420)] * internal static void RefreshStyles() * { * Unsupported.ClearSkinCache(); * EditorUtility.RequestScriptReload(); * InternalEditorUtility.RepaintAllViews(); * Debug.Log($"Style refreshed {DateTime.Now}"); * } * * [MenuItem("Theme/Switch Theme And Repaint", priority = 420)] * internal static void SwitchTheme() * { * AssetPreview.ClearTemporaryAssetPreviews(); * InternalEditorUtility.SwitchSkinAndRepaintAllViews(); * }*/ private static void UpdateGUIStyleProperties(string name, GUIStyle style) { var sname = GUIStyleExtensions.StyleNameToBlockName(style.name, false); var block = styleCatalog.GetStyle(sname); if (!block.IsValid()) { return; } try { GUIStyleExtensions.PopulateStyle(styleCatalog, style, sname); // The new style extension do not support state backgrounds anymore. // Any background images needs to be defined in the uss data files. ResetDeprecatedBackgroundImage(style.normal); ResetDeprecatedBackgroundImage(style.hover); ResetDeprecatedBackgroundImage(style.active); ResetDeprecatedBackgroundImage(style.focused); ResetDeprecatedBackgroundImage(style.onNormal); ResetDeprecatedBackgroundImage(style.onHover); ResetDeprecatedBackgroundImage(style.onActive); ResetDeprecatedBackgroundImage(style.onFocused); } catch (Exception ex) { Debug.LogWarning($"Failed to parse extended style properties for {sname}\n{ex.Message}"); } }
/* ONLY NEEDED BY STYLING DEVS AND DESIGNERS. * [MenuItem("Theme/Refresh Styles &r", priority = 420)] * internal static void RefreshStyles() * { * Unsupported.ClearSkinCache(); * InternalEditorUtility.RequestScriptReload(); * InternalEditorUtility.RepaintAllViews(); * Debug.Log($"Style refreshed {DateTime.Now}"); * } * * [MenuItem("Theme/Switch Theme And Repaint", priority = 420)] * internal static void SwitchTheme() * { * AssetPreview.ClearTemporaryAssetPreviews(); * InternalEditorUtility.SwitchSkinAndRepaintAllViews(); * }*/ private static void UpdateGUIStyleProperties(string name, GUIStyle style) { if (LocalizationDatabase.currentEditorLanguage == SystemLanguage.English) { var rootBlock = styleCatalog.GetStyle(StyleCatalogKeyword.root, StyleState.root); var systemSmallFont = EditorGUIUtility.LoadRequired("Fonts/System/System Small.ttf") as Font; var systemNormalFont = EditorGUIUtility.LoadRequired("Fonts/System/System Normal.ttf") as Font; var currentFont = GetCurrentFont(); if (IsSystemFont(currentFont)) { var defaultSmallFontSize = rootBlock.GetInt("--unity-font-size-small", 11); var systemFont = style.fontSize == defaultSmallFontSize ? systemSmallFont : systemNormalFont; systemFont.fontNames = new[] { currentFont }; style.font = systemFont; } else { if ((currentFont == "Roboto") && (style.fontStyle == FontStyle.Bold)) { style.font = EditorGUIUtility.LoadRequired("Fonts/roboto/Roboto-Medium.ttf") as Font; style.fontStyle = FontStyle.Normal; } else { style.font = EditorGUIUtility.LoadRequired(builtInFonts[currentFont]) as Font; } } } var sname = GUIStyleExtensions.StyleNameToBlockName(style.name, false); var block = styleCatalog.GetStyle(sname); if (!block.IsValid()) { return; } try { GUIStyleExtensions.PopulateStyle(styleCatalog, style, sname); // The new style extension do not support state backgrounds anymore. // Any background images needs to be defined in the uss data files. ResetDeprecatedBackgroundImage(style.normal); ResetDeprecatedBackgroundImage(style.hover); ResetDeprecatedBackgroundImage(style.active); ResetDeprecatedBackgroundImage(style.focused); ResetDeprecatedBackgroundImage(style.onNormal); ResetDeprecatedBackgroundImage(style.onHover); ResetDeprecatedBackgroundImage(style.onActive); ResetDeprecatedBackgroundImage(style.onFocused); } catch (Exception ex) { Debug.LogWarning($"Failed to parse extended style properties for {sname}\n{ex.Message}"); } }
/* ONLY NEEDED BY STYLING DEVS AND DESIGNERS. * [MenuItem("Theme/Refresh Styles &r", priority = 420)] * internal static void RefreshStyles() * { * Unsupported.ClearSkinCache(); * EditorUtility.RequestScriptReload(); * InternalEditorUtility.RepaintAllViews(); * Debug.Log($"Style refreshed {DateTime.Now}"); * } * * [MenuItem("Theme/Switch Theme And Repaint", priority = 420)] * internal static void SwitchTheme() * { * AssetPreview.ClearTemporaryAssetPreviews(); * InternalEditorUtility.SwitchSkinAndRepaintAllViews(); * }*/ private static void UpdateGUIStyleProperties(string name, GUIStyle style) { var sname = GUIStyleExtensions.StyleNameToBlockName(style.name, false); var block = styleCatalog.GetStyle(sname); if (!block.IsValid()) { return; } try { GUIStyleExtensions.PopulateStyle(styleCatalog, style, sname); GUIStyleExtensions.ConvertToExtendedStyle(style); } catch (Exception ex) { Debug.LogWarning($"Failed to parse extended style properties for {sname}\n{ex.Message}"); } }