/* Copyright (C) 2014-2019 de4dot@gmail.com This file is part of dnSpy dnSpy is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. dnSpy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with dnSpy. If not, see . */ using System; namespace dnSpy.Contracts.Themes { /// /// A theme /// public interface ITheme { /// Guid Guid Guid { get; } /// Name or an empty string string Name { get; } /// Name of theme that can be used in a MenuItem string MenuName { get; } /// true if this is a high-contrast theme bool IsHighContrast { get; } /// /// true if it's a dark colored theme /// bool IsDark { get; } /// /// true if it's a light colored theme /// bool IsLight { get; } /// Theme order. Can be used by a UI class to sort the themes before showing them /// to the user double Order { get; } /// /// Gets the inherited color /// /// Color /// IThemeColor GetColor(ColorType colorType); /// /// Gets the inherited color that can be used by a text editor (default colors are null) /// /// Color /// IThemeColor GetTextColor(ColorType colorType); /// /// Gets the color that was defined in the theme file. Inherited colors aren't included. /// /// Color /// IThemeColor GetExplicitColor(ColorType colorType); } }