diff --git a/RunCat365/Program.cs b/RunCat365/Program.cs index ea426e7f..81e680ab 100644 --- a/RunCat365/Program.cs +++ b/RunCat365/Program.cs @@ -146,6 +146,13 @@ public RunCat365ApplicationContext() cpuTimer.Start(); } + private static Bitmap? GetRunnerThumbnailBitmap(Runner runner) + { + var iconName = $"{Theme.Light.GetString()}_{runner.GetString()}_0".ToLower(); + var obj = Resources.ResourceManager.GetObject(iconName); + return obj is Icon icon ? icon.ToBitmap() : null; + } + private static ToolStripMenuItem CreateMenuFromEnum( string title, Func getTitle, @@ -156,7 +163,9 @@ Func isChecked var items = new List(); foreach (T value in Enum.GetValues(typeof(T))) { - var item = new ToolStripMenuItem(getTitle(value), null, onClickEvent) + string entityName = getTitle(value); + Image? iconImage = value is Runner runner ? GetRunnerThumbnailBitmap(runner) : null; + var item = new ToolStripMenuItem(entityName, iconImage, onClickEvent) { Checked = isChecked(value) };