Files
beyond/Assets/Scripts/Editor/HierarchyDecoratorSettings.cs
2025-11-27 01:51:39 +01:00

50 lines
1.9 KiB
C#

using UnityEngine;
using System.Collections.Generic;
[System.Serializable]
public class ColorScheme
{
public int identifier;
public Color activeBackgroundColor = new Color(0.1f, 0.1f, 0.1f, 0.5f);
public Color inactiveBackgroundColor = new Color(0f, 0f, 0f, 0.3f);
public Color activeTextColor = Color.white;
public Color inactiveTextColor = Color.gray;
}
[CreateAssetMenu(fileName = "HierarchyDecoratorSettings", menuName = "Settings/HierarchyDecoratorSettings")]
public class HierarchyDecoratorSettings : ScriptableObject
{
[Header("Global Settings")]
public bool showTreeLines = true; // Czy pokazywać linie drzewa
public Color treeLineColor = new Color(0.5f, 0.5f, 0.5f, 0.2f);
[Header("Default Header Settings")]
public Color defaultBackgroundColor = new Color(0.1f, 0.1f, 0.1f, 0.5f);
public Color defaultInactiveBackgroundColor = new Color(0f, 0f, 0f, 0.3f);
public Color defaultTextColor = Color.green;
public Color defaultInactiveTextColor = Color.gray;
[Header("Custom Color Schemes")]
public List<ColorScheme> colorSchemes = new List<ColorScheme>();
[Header("Separator Styles")]
public Color cleanBackgroundColor = new Color(0.2f, 0.2f, 0.2f, 0.5f); // = Clean
[Header("Section Header Settings (# Name)")]
public Color sectionBackgroundColor = new Color(0.15f, 0.15f, 0.15f, 0.8f); // Tło dla #
public Color sectionTextColor = new Color(0.7f, 0.7f, 0.7f, 0.6f); // Subtelny tekst
public int sectionFontSize = 11;
public bool sectionUpperCase = true; // Czy zamieniać na wielkie litery
[Header("Description Settings")]
public Color descriptionTextColor = Color.gray;
public int descriptionFontSize = 10;
public float mainTextOffset = 0.0f;
public float descriptionOffset = 100.0f;
[ContextMenu("Update Hierarchy Display")]
public void UpdateHierarchyDisplay()
{
CustomHierarchyDecorator.UpdateSettings(this);
}
}