// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved. namespace FlaxEngine.GUI { /// /// Describes GUI controls style (which fonts and colors use etc.). Defines the default values used by the GUI control.s /// public class Style { /// /// Global GUI style used by all the controls. /// public static Style Current { get; set; } [Serialize] private FontReference _fontTitle; /// /// The font title. /// [NoSerialize] [EditorOrder(10)] public Font FontTitle { get => _fontTitle?.GetFont(); set => _fontTitle = new FontReference(value); } [Serialize] private FontReference _fontLarge; /// /// The font large. /// [NoSerialize] [EditorOrder(20)] public Font FontLarge { get => _fontLarge?.GetFont(); set => _fontLarge = new FontReference(value); } [Serialize] private FontReference _fontMedium; /// /// The font medium. /// [NoSerialize] [EditorOrder(30)] public Font FontMedium { get => _fontMedium?.GetFont(); set => _fontMedium = new FontReference(value); } [Serialize] private FontReference _fontSmall; /// /// The font small. /// [NoSerialize] [EditorOrder(40)] public Font FontSmall { get => _fontSmall?.GetFont(); set => _fontSmall = new FontReference(value); } /// /// The background color. /// [EditorOrder(60)] public Color Background; /// /// The light background color. /// [EditorOrder(70)] public Color LightBackground; /// /// The drag window color. /// [EditorOrder(80)] public Color DragWindow; /// /// The foreground color. /// [EditorOrder(90)] public Color Foreground; /// /// The foreground grey. /// [EditorOrder(100)] public Color ForegroundGrey; /// /// The foreground disabled. /// [EditorOrder(110)] public Color ForegroundDisabled; /// /// The background highlighted color. /// [EditorOrder(120)] public Color BackgroundHighlighted; /// /// The border highlighted color. /// [EditorOrder(130)] public Color BorderHighlighted; /// /// The background selected color. /// [EditorOrder(140)] public Color BackgroundSelected; /// /// The border selected color. /// [EditorOrder(150)] public Color BorderSelected; /// /// The background normal color. /// [EditorOrder(160)] public Color BackgroundNormal; /// /// The border normal color. /// [EditorOrder(170)] public Color BorderNormal; /// /// The text box background color. /// [EditorOrder(180)] public Color TextBoxBackground; /// /// The text box background selected color. /// [EditorOrder(190)] public Color TextBoxBackgroundSelected; /// /// The collection background color. /// [EditorOrder(195)] public Color CollectionBackgroundColor; /// /// The progress normal color. /// [EditorOrder(200)] public Color ProgressNormal; /// /// The status bar style /// [EditorOrder(210)] public StatusbarStyle Statusbar; /// /// The arrow right icon. /// [EditorOrder(220)] public SpriteHandle ArrowRight; /// /// The arrow down icon. /// [EditorOrder(230)] public SpriteHandle ArrowDown; /// /// The search icon. /// [EditorOrder(240)] public SpriteHandle Search; /// /// The settings icon. /// [EditorOrder(250)] public SpriteHandle Settings; /// /// The cross icon. /// [EditorOrder(260)] public SpriteHandle Cross; /// /// The CheckBox intermediate icon. /// [EditorOrder(270)] public SpriteHandle CheckBoxIntermediate; /// /// The CheckBox tick icon. /// [EditorOrder(280)] public SpriteHandle CheckBoxTick; /// /// The status bar size grip icon. /// [EditorOrder(290)] public SpriteHandle StatusBarSizeGrip; /// /// The translate icon. /// [EditorOrder(300)] public SpriteHandle Translate; /// /// The rotate icon. /// [EditorOrder(310)] public SpriteHandle Rotate; /// /// The scale icon. /// [EditorOrder(320)] public SpriteHandle Scale; /// /// The scalar icon. /// [EditorOrder(330)] public SpriteHandle Scalar; /// /// The shared tooltip control used by the controls if no custom tooltip is provided. /// [EditorOrder(340)] public Tooltip SharedTooltip; /// /// Style for the Statusbar /// [System.Serializable, ShowInEditor] public struct StatusbarStyle { /// /// Color of the Statusbar when in Play Mode /// public Color PlayMode; /// /// Color of the Statusbar when in loading state (e.g. when importing assets) /// public Color Loading; /// /// Color of the Statusbar in its failed state (e.g. with compilation errors) /// public Color Failed; } } }