5 instantiations of PanelColor
aspire-tray (5)
src\Aspire.Tray\Common\TrayPanelPalette.cs (4)
23
?
new
((byte)(value >> 16), (byte)(value >> 8), (byte)value)
24
:
new
((byte)(value >> 24), (byte)(value >> 16), (byte)(value >> 8), (byte)value);
27
public static PanelColor FromRgba(byte r, byte g, byte b, double alpha) =>
new
(r, g, b, (byte)Math.Round(Math.Clamp(alpha, 0, 1) * 255));
35
return
new
(
TrayApplication.Panel.cs (1)
407
return
new
((byte)value, (byte)(value >> 8), (byte)(value >> 16));
95 references to PanelColor
aspire-tray (95)
src\Aspire.Tray\Common\TrayPanel.cs (5)
1227
var
color = !enabled ? palette.TextTertiary.WithAlpha(0.45)
1300
var
iconColor = _hover == key ? palette.TextPrimary : palette.TextSecondary;
1404
PanelColor
.FromRgba(0, 0, 0, _pressed == acceptKey ? 0.22 : 0.12)));
1505
: (
PanelColor
?)null;
1584
internal static (string Text,
PanelColor
Dot) GetHeaderStatus(TrayViewState state, TrayPanelPalette palette)
src\Aspire.Tray\Common\TrayPanelGlyphs.cs (5)
91
void Disc(
PanelColor
color) => Fill(PanelPath.Circle(10, 10, 8), color);
92
void Fill(PanelPath path,
PanelColor
color) => commands.Add(new FillPathCommand(path.Transform(scale, bounds.X, bounds.Y), color));
93
void Stroke(PanelPath path,
PanelColor
color, double width)
97
public static void AddIcon(List<PanelCommand> commands, PanelIcon icon, PanelRect bounds,
PanelColor
color)
209
var
trackColor = on ? palette.Accent : palette.Neutral.WithAlpha(0.35);
src\Aspire.Tray\Common\TrayPanelPalette.cs (77)
14
public static
PanelColor
FromHex(string hex)
27
public static
PanelColor
FromRgba(byte r, byte g, byte b, double alpha) => new(r, g, b, (byte)Math.Round(Math.Clamp(alpha, 0, 1) * 255));
29
public
PanelColor
WithAlpha(double alpha) => this with { A = (byte)Math.Round(Math.Clamp(alpha, 0, 1) * 255) };
32
public
PanelColor
Over(
PanelColor
background)
52
PanelColor
Background,
53
PanelColor
Gutter,
54
PanelColor
Separator,
55
PanelColor
Border,
56
PanelColor
TextPrimary,
57
PanelColor
TextSecondary,
58
PanelColor
TextTertiary,
59
PanelColor
Hover,
60
PanelColor
Pressed,
61
PanelColor
Accent,
62
PanelColor
Success,
63
PanelColor
Warning,
64
PanelColor
Danger,
65
PanelColor
DangerFill,
66
PanelColor
Neutral,
67
PanelColor
Banner,
68
PanelColor
BannerText,
69
PanelColor
OnColor,
70
PanelColor
SuccessMark,
71
PanelColor
WarningMark,
72
PanelColor
DangerMark,
73
PanelColor
NeutralMark)
81
private static readonly
PanelColor
s_white =
PanelColor
.FromHex("#FFFFFF");
82
private static readonly
PanelColor
s_darkMark =
PanelColor
.FromHex("#1C1C1E");
88
public
PanelColor
Focus => Accent;
95
public static double ContrastRatio(
PanelColor
first,
PanelColor
second)
101
static double Luminance(
PanelColor
color) => 0.2126 * Channel(color.R) + 0.7152 * Channel(color.G) + 0.0722 * Channel(color.B);
112
Background:
PanelColor
.FromHex("#F9F9FB"),
113
Gutter:
PanelColor
.FromHex("#EFEFF3"),
114
Separator:
PanelColor
.FromRgba(0, 0, 0, 0.08),
115
Border:
PanelColor
.FromRgba(0, 0, 0, 0.12),
118
TextPrimary:
PanelColor
.FromHex("#1C1C1E"),
119
TextSecondary:
PanelColor
.FromHex("#5F5F66"),
120
TextTertiary:
PanelColor
.FromHex("#64646C"),
121
Hover:
PanelColor
.FromRgba(0, 0, 0, 0.05),
122
Pressed:
PanelColor
.FromRgba(0, 0, 0, 0.09),
123
Accent:
PanelColor
.FromHex("#6A4BD6"),
124
Success:
PanelColor
.FromHex("#1E9E57"),
125
Warning:
PanelColor
.FromHex("#D98A00"),
126
Danger:
PanelColor
.FromHex("#BC3030"),
127
DangerFill:
PanelColor
.FromHex("#BC3030"),
128
Neutral:
PanelColor
.FromHex("#8E8E96"),
129
Banner:
PanelColor
.FromHex("#FFF4DB"),
130
BannerText:
PanelColor
.FromHex("#6B4500"),
141
Background:
PanelColor
.FromHex("#252529"),
142
Gutter:
PanelColor
.FromHex("#1E1E21"),
143
Separator:
PanelColor
.FromRgba(255, 255, 255, 0.08),
144
Border:
PanelColor
.FromRgba(255, 255, 255, 0.12),
145
TextPrimary:
PanelColor
.FromHex("#F2F2F5"),
146
TextSecondary:
PanelColor
.FromHex("#B4B4BC"),
147
TextTertiary:
PanelColor
.FromHex("#A8A8B0"),
148
Hover:
PanelColor
.FromRgba(255, 255, 255, 0.07),
149
Pressed:
PanelColor
.FromRgba(255, 255, 255, 0.11),
150
Accent:
PanelColor
.FromHex("#9C85F2"),
151
Success:
PanelColor
.FromHex("#34C46E"),
152
Warning:
PanelColor
.FromHex("#F2A93B"),
155
Danger:
PanelColor
.FromHex("#FC8C87"),
156
DangerFill:
PanelColor
.FromHex("#C8403C"),
157
Neutral:
PanelColor
.FromHex("#8E8E96"),
158
Banner:
PanelColor
.FromHex("#3A2F17"),
159
BannerText:
PanelColor
.FromHex("#F7D9A0"),
189
public static TrayPanelPalette FromSystemColors(
PanelColor
window,
PanelColor
windowText,
PanelColor
highlight,
190
PanelColor
grayText) => new(
224
private static
PanelColor
MarkOn(
PanelColor
fill,
PanelColor
preferred,
PanelColor
alternate)
src\Aspire.Tray\Common\TrayPanelScene.cs (3)
59
internal sealed record FillPathCommand(PanelPath Path,
PanelColor
Color) : PanelCommand;
62
internal sealed record StrokePathCommand(PanelPath Path,
PanelColor
Color, double Width) : PanelCommand;
75
PanelColor
Color,
TrayApplication.Panel.cs (5)
404
static
PanelColor
SystemColor(int index)
564
private static void FillPanelPath(nint graphics, PanelPath source,
PanelColor
color)
585
private static void StrokePanelPath(nint graphics, PanelPath source,
PanelColor
color, double width)
663
var
color = text.Color.A == 255 ? text.Color : text.Color.Over(palette.Background);
835
private static uint ToArgb(
PanelColor
color) => (uint)(color.A << 24 | color.R << 16 | color.G << 8 | color.B);