From 255dea138b8de268dcfcb8624cd23069657d71d3 Mon Sep 17 00:00:00 2001 From: dnesov Date: Tue, 24 Jun 2025 23:04:17 +0200 Subject: [PATCH] Make all predefined colors in Color readonly. --- Voile/Source/Utils/Color.cs | 283 ++++++++++++++++++------------------ 1 file changed, 141 insertions(+), 142 deletions(-) diff --git a/Voile/Source/Utils/Color.cs b/Voile/Source/Utils/Color.cs index 3629acc..31f18e7 100644 --- a/Voile/Source/Utils/Color.cs +++ b/Voile/Source/Utils/Color.cs @@ -6,147 +6,146 @@ namespace Voile /// public record struct Color { - public static Color AliceBlue = new(0xF0F8FF); - public static Color AntiqueWhite = new(0xFAEBD7); - public static Color Aqua = new(0x00FFFF); - public static Color Aquamarine = new(0x7FFFD4); - public static Color Azure = new(0xF0FFFF); - public static Color Beige = new(0xF5F5DC); - public static Color Bisque = new(0xFFE4C4); - public static Color Black = new(0x000000); - public static Color BlanchedAlmond = new(0xFFEBCD); - public static Color Blue = new(0x0000FF); - public static Color BlueViolet = new(0x8A2BE2); - public static Color Brown = new(0xA52A2A); - public static Color BurlyWood = new(0xDEB887); - public static Color CadetBlue = new(0x5F9EA0); - public static Color Chartreuse = new(0x7FFF00); - public static Color Chocolate = new(0xD2691E); - public static Color Coral = new(0xFF7F50); - public static Color CornflowerBlue = new(0x6495ED); - public static Color Cornsilk = new(0xFFF8DC); - public static Color Crimson = new(0xDC143C); - public static Color Cyan = new(0x00FFFF); - public static Color DarkBlue = new(0x00008B); - public static Color DarkCyan = new(0x008B8B); - public static Color White = new(0xFFFFFF); - public static Color Green = new(0x00FF00); - public static Color Red = new(0xFF0000); - public static Color DarkGoldenRod = new(0xB8860B); - public static Color DarkGray = new(0xA9A9A9); - public static Color DarkGreen = new(0x006400); - public static Color DarkKhaki = new(0xBDB76B); - public static Color DarkMagenta = new(0x8B008B); - public static Color DarkOliveGreen = new(0x556B2F); - public static Color DarkOrange = new(0xFF8C00); - public static Color DarkOrchid = new(0x9932CC); - public static Color DarkRed = new(0x8B0000); - public static Color DarkSalmon = new(0xE9967A); - public static Color DarkSeaGreen = new(0x8FBC8F); - public static Color DarkSlateBlue = new(0x483D8B); - public static Color DarkSlateGray = new(0x2F4F4F); - public static Color DarkTurquoise = new(0x00CED1); - public static Color DarkViolet = new(0x9400D3); - public static Color DeepPink = new(0xFF1493); - public static Color DeepSkyBlue = new(0x00BFFF); - public static Color DimGray = new(0x696969); - public static Color DodgerBlue = new(0x1E90FF); - public static Color FireBrick = new(0xB22222); - public static Color FloralWhite = new(0xFFFAF0); - public static Color ForestGreen = new(0x228B22); - public static Color Gainsboro = new(0xDCDCDC); - public static Color GhostWhite = new(0xF8F8FF); - public static Color Gold = new(0xFFD700); - public static Color GoldenRod = new(0xDAA520); - public static Color Gray = new(0x808080); - public static Color GreenYellow = new(0xADFF2F); - public static Color HoneyDew = new(0xF0FFF0); - public static Color HotPink = new(0xFF69B4); - public static Color IndianRed = new(0xCD5C5C); - public static Color Indigo = new(0x4B0082); - public static Color Ivory = new(0xFFFFF0); - public static Color Khaki = new(0xF0E68C); - public static Color Lavender = new(0xE6E6FA); - public static Color LavenderBlush = new(0xFFF0F5); - public static Color LawnGreen = new(0x7CFC00); - public static Color LemonChiffon = new(0xFFFACD); - public static Color LightBlue = new(0xADD8E6); - public static Color LightCoral = new(0xF08080); - public static Color LightCyan = new(0xE0FFFF); - public static Color LightGoldenRodYellow = new(0xFAFAD2); - public static Color LightGray = new(0xD3D3D3); - public static Color LightGreen = new(0x90EE90); - public static Color LightPink = new(0xFFB6C1); - public static Color LightSalmon = new(0xFFA07A); - public static Color LightSeaGreen = new(0x20B2AA); - public static Color LightSkyBlue = new(0x87CEFA); - public static Color LightSlateGray = new(0x778899); - public static Color LightSteelBlue = new(0xB0C4DE); - public static Color LightYellow = new(0xFFFFE0); - public static Color Lime = new(0x00FF00); - public static Color LimeGreen = new(0x32CD32); - public static Color Linen = new(0xFAF0E6); - public static Color Magenta = new(0xFF00FF); - public static Color Maroon = new(0x800000); - public static Color MediumAquaMarine = new(0x66CDAA); - public static Color MediumBlue = new(0x0000CD); - public static Color MediumOrchid = new(0xBA55D3); - public static Color MediumPurple = new(0x9370DB); - public static Color MediumSeaGreen = new(0x3CB371); - public static Color MediumSlateBlue = new(0x7B68EE); - public static Color MediumSpringGreen = new(0x00FA9A); - public static Color MediumTurquoise = new(0x48D1CC); - public static Color MediumVioletRed = new(0xC71585); - public static Color MidnightBlue = new(0x191970); - public static Color MintCream = new(0xF5FFFA); - public static Color MistyRose = new(0xFFE4E1); - public static Color Moccasin = new(0xFFE4B5); - public static Color NavajoWhite = new(0xFFDEAD); - public static Color Navy = new(0x000080); - public static Color OldLace = new(0xFDF5E6); - public static Color Olive = new(0x808000); - public static Color OliveDrab = new(0x6B8E23); - public static Color Orange = new(0xFFA500); - public static Color OrangeRed = new(0xFF4500); - public static Color Orchid = new(0xDA70D6); - public static Color PaleGoldenRod = new(0xEEE8AA); - public static Color PaleGreen = new(0x98FB98); - public static Color PaleTurquoise = new(0xAFEEEE); - public static Color PaleVioletRed = new(0xDB7093); - public static Color PapayaWhip = new(0xFFEFD5); - public static Color PeachPuff = new(0xFFDAB9); - public static Color Peru = new(0xCD853F); - public static Color Pink = new(0xFFC0CB); - public static Color Plum = new(0xDDA0DD); - public static Color PowderBlue = new(0xB0E0E6); - public static Color Purple = new(0x800080); - public static Color RebeccaPurple = new(0x663399); - public static Color RosyBrown = new(0xBC8F8F); - public static Color RoyalBlue = new(0x4169E1); - public static Color SaddleBrown = new(0x8B4513); - public static Color Salmon = new(0xFA8072); - public static Color SandyBrown = new(0xF4A460); - public static Color SeaGreen = new(0x2E8B57); - public static Color Seashell = new(0xFFF5EE); - public static Color Sienna = new(0xA0522D); - public static Color Silver = new(0xC0C0C0); - public static Color SkyBlue = new(0x87CEEB); - public static Color SlateBlue = new(0x6A5ACD); - public static Color SlateGray = new(0x708090); - public static Color Snow = new(0xFFFAFA); - public static Color SpringGreen = new(0x00FF7F); - public static Color SteelBlue = new(0x4682B4); - public static Color Tan = new(0xD2B48C); - public static Color Teal = new(0x008080); - public static Color Thistle = new(0xD8BFD8); - public static Color Tomato = new(0xFF6347); - public static Color Turquoise = new(0x40E0D0); - public static Color Violet = new(0xEE82EE); - public static Color Wheat = new(0xF5DEB3); - public static Color WhiteSmoke = new(0xF5F5F5); - public static Color Yellow = new(0xFFFF00); - public static Color YellowGreen = new(0x9ACD32); - + public static readonly Color AliceBlue = new(0xF0F8FF); + public static readonly Color AntiqueWhite = new(0xFAEBD7); + public static readonly Color Aqua = new(0x00FFFF); + public static readonly Color Aquamarine = new(0x7FFFD4); + public static readonly Color Azure = new(0xF0FFFF); + public static readonly Color Beige = new(0xF5F5DC); + public static readonly Color Bisque = new(0xFFE4C4); + public static readonly Color Black = new(0x000000); + public static readonly Color BlanchedAlmond = new(0xFFEBCD); + public static readonly Color Blue = new(0x0000FF); + public static readonly Color BlueViolet = new(0x8A2BE2); + public static readonly Color Brown = new(0xA52A2A); + public static readonly Color BurlyWood = new(0xDEB887); + public static readonly Color CadetBlue = new(0x5F9EA0); + public static readonly Color Chartreuse = new(0x7FFF00); + public static readonly Color Chocolate = new(0xD2691E); + public static readonly Color Coral = new(0xFF7F50); + public static readonly Color CornflowerBlue = new(0x6495ED); + public static readonly Color Cornsilk = new(0xFFF8DC); + public static readonly Color Crimson = new(0xDC143C); + public static readonly Color Cyan = new(0x00FFFF); + public static readonly Color DarkBlue = new(0x00008B); + public static readonly Color DarkCyan = new(0x008B8B); + public static readonly Color White = new(0xFFFFFF); + public static readonly Color Green = new(0x00FF00); + public static readonly Color Red = new(0xFF0000); + public static readonly Color DarkGoldenRod = new(0xB8860B); + public static readonly Color DarkGray = new(0xA9A9A9); + public static readonly Color DarkGreen = new(0x006400); + public static readonly Color DarkKhaki = new(0xBDB76B); + public static readonly Color DarkMagenta = new(0x8B008B); + public static readonly Color DarkOliveGreen = new(0x556B2F); + public static readonly Color DarkOrange = new(0xFF8C00); + public static readonly Color DarkOrchid = new(0x9932CC); + public static readonly Color DarkRed = new(0x8B0000); + public static readonly Color DarkSalmon = new(0xE9967A); + public static readonly Color DarkSeaGreen = new(0x8FBC8F); + public static readonly Color DarkSlateBlue = new(0x483D8B); + public static readonly Color DarkSlateGray = new(0x2F4F4F); + public static readonly Color DarkTurquoise = new(0x00CED1); + public static readonly Color DarkViolet = new(0x9400D3); + public static readonly Color DeepPink = new(0xFF1493); + public static readonly Color DeepSkyBlue = new(0x00BFFF); + public static readonly Color DimGray = new(0x696969); + public static readonly Color DodgerBlue = new(0x1E90FF); + public static readonly Color FireBrick = new(0xB22222); + public static readonly Color FloralWhite = new(0xFFFAF0); + public static readonly Color ForestGreen = new(0x228B22); + public static readonly Color Gainsboro = new(0xDCDCDC); + public static readonly Color GhostWhite = new(0xF8F8FF); + public static readonly Color Gold = new(0xFFD700); + public static readonly Color GoldenRod = new(0xDAA520); + public static readonly Color Gray = new(0x808080); + public static readonly Color GreenYellow = new(0xADFF2F); + public static readonly Color HoneyDew = new(0xF0FFF0); + public static readonly Color HotPink = new(0xFF69B4); + public static readonly Color IndianRed = new(0xCD5C5C); + public static readonly Color Indigo = new(0x4B0082); + public static readonly Color Ivory = new(0xFFFFF0); + public static readonly Color Khaki = new(0xF0E68C); + public static readonly Color Lavender = new(0xE6E6FA); + public static readonly Color LavenderBlush = new(0xFFF0F5); + public static readonly Color LawnGreen = new(0x7CFC00); + public static readonly Color LemonChiffon = new(0xFFFACD); + public static readonly Color LightBlue = new(0xADD8E6); + public static readonly Color LightCoral = new(0xF08080); + public static readonly Color LightCyan = new(0xE0FFFF); + public static readonly Color LightGoldenRodYellow = new(0xFAFAD2); + public static readonly Color LightGray = new(0xD3D3D3); + public static readonly Color LightGreen = new(0x90EE90); + public static readonly Color LightPink = new(0xFFB6C1); + public static readonly Color LightSalmon = new(0xFFA07A); + public static readonly Color LightSeaGreen = new(0x20B2AA); + public static readonly Color LightSkyBlue = new(0x87CEFA); + public static readonly Color LightSlateGray = new(0x778899); + public static readonly Color LightSteelBlue = new(0xB0C4DE); + public static readonly Color LightYellow = new(0xFFFFE0); + public static readonly Color Lime = new(0x00FF00); + public static readonly Color LimeGreen = new(0x32CD32); + public static readonly Color Linen = new(0xFAF0E6); + public static readonly Color Magenta = new(0xFF00FF); + public static readonly Color Maroon = new(0x800000); + public static readonly Color MediumAquaMarine = new(0x66CDAA); + public static readonly Color MediumBlue = new(0x0000CD); + public static readonly Color MediumOrchid = new(0xBA55D3); + public static readonly Color MediumPurple = new(0x9370DB); + public static readonly Color MediumSeaGreen = new(0x3CB371); + public static readonly Color MediumSlateBlue = new(0x7B68EE); + public static readonly Color MediumSpringGreen = new(0x00FA9A); + public static readonly Color MediumTurquoise = new(0x48D1CC); + public static readonly Color MediumVioletRed = new(0xC71585); + public static readonly Color MidnightBlue = new(0x191970); + public static readonly Color MintCream = new(0xF5FFFA); + public static readonly Color MistyRose = new(0xFFE4E1); + public static readonly Color Moccasin = new(0xFFE4B5); + public static readonly Color NavajoWhite = new(0xFFDEAD); + public static readonly Color Navy = new(0x000080); + public static readonly Color OldLace = new(0xFDF5E6); + public static readonly Color Olive = new(0x808000); + public static readonly Color OliveDrab = new(0x6B8E23); + public static readonly Color Orange = new(0xFFA500); + public static readonly Color OrangeRed = new(0xFF4500); + public static readonly Color Orchid = new(0xDA70D6); + public static readonly Color PaleGoldenRod = new(0xEEE8AA); + public static readonly Color PaleGreen = new(0x98FB98); + public static readonly Color PaleTurquoise = new(0xAFEEEE); + public static readonly Color PaleVioletRed = new(0xDB7093); + public static readonly Color PapayaWhip = new(0xFFEFD5); + public static readonly Color PeachPuff = new(0xFFDAB9); + public static readonly Color Peru = new(0xCD853F); + public static readonly Color Pink = new(0xFFC0CB); + public static readonly Color Plum = new(0xDDA0DD); + public static readonly Color PowderBlue = new(0xB0E0E6); + public static readonly Color Purple = new(0x800080); + public static readonly Color RebeccaPurple = new(0x663399); + public static readonly Color RosyBrown = new(0xBC8F8F); + public static readonly Color RoyalBlue = new(0x4169E1); + public static readonly Color SaddleBrown = new(0x8B4513); + public static readonly Color Salmon = new(0xFA8072); + public static readonly Color SandyBrown = new(0xF4A460); + public static readonly Color SeaGreen = new(0x2E8B57); + public static readonly Color Seashell = new(0xFFF5EE); + public static readonly Color Sienna = new(0xA0522D); + public static readonly Color Silver = new(0xC0C0C0); + public static readonly Color SkyBlue = new(0x87CEEB); + public static readonly Color SlateBlue = new(0x6A5ACD); + public static readonly Color SlateGray = new(0x708090); + public static readonly Color Snow = new(0xFFFAFA); + public static readonly Color SpringGreen = new(0x00FF7F); + public static readonly Color SteelBlue = new(0x4682B4); + public static readonly Color Tan = new(0xD2B48C); + public static readonly Color Teal = new(0x008080); + public static readonly Color Thistle = new(0xD8BFD8); + public static readonly Color Tomato = new(0xFF6347); + public static readonly Color Turquoise = new(0x40E0D0); + public static readonly Color Violet = new(0xEE82EE); + public static readonly Color Wheat = new(0xF5DEB3); + public static readonly Color WhiteSmoke = new(0xF5F5F5); + public static readonly Color Yellow = new(0xFFFF00); + public static readonly Color YellowGreen = new(0x9ACD32); public byte R { get; set; } public byte G { get; set; } @@ -194,7 +193,7 @@ namespace Voile } } - public static Color FromHexString(string hex) + public static readonly Color FromHexString(string hex) { if (hex.StartsWith("#")) {