// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. using osu.Framework.Allocation; using osu.Framework.Graphics.UserInterface; using osu.Game.Graphics.UserInterface; using osu.Game.Overlays; namespace osu.Game.Graphics.UserInterfaceV2 { /// /// A variant of that uses the nearest for theming purposes. /// public class ThemedDropdown : OsuDropdown { [BackgroundDependencyLoader] private void load(OverlayColourProvider colourProvider) { AccentColour = colourProvider.Light4; } protected override DropdownHeader CreateHeader() => new ThemedDropdownHeader(); protected override DropdownMenu CreateMenu() => new ThemedDropdownMenu(); protected class ThemedDropdownMenu : OsuDropdownMenu { [BackgroundDependencyLoader] private void load(OverlayColourProvider colourProvider) { BackgroundColour = colourProvider.Background5; ((IHasAccentColour)ContentContainer).AccentColour = colourProvider.Highlight1; } } protected class ThemedDropdownHeader : OsuDropdownHeader { [BackgroundDependencyLoader] private void load(OverlayColourProvider colourProvider) { BackgroundColour = colourProvider.Background5; BackgroundColourHover = colourProvider.Light4; } } } }