Skip to content

Commit e48c0cf

Browse files
mfkeeq199458trae-solo-agent
authored andcommitted
fix: address PR review feedback round 3
Build warnings (CA1304): - ThemedImages: pass CultureInfo.CurrentUICulture to ResourceManager.GetObject API consistency: - PaintHelper.BookmarkMarkerTextColor property -> GetBookmarkMarkerTextColor(bool darkMode) method, matching other PaintHelper APIs Minor cleanup: - LogWindow.ApplyResourceImages: cache Application.IsDarkModeEnabled into local variable - LogTabWindow.ApplyThemedImages: early return in light mode to avoid unnecessary bitmap reloads PR description updates (per reviewer request): - Default dark-mode grid text changes from Color.White to Color.FromArgb(220, 220, 220) (soft gainsboro tone) - Removed assets (no code references remain): 13 light/dark icon pairs, LogExpert.bmp, LogExpert-Icon.gif, Icon1.ico, Icon2.ico, bubble.ico - Installer and ApplicationIcon already use logexpert.ico, cleanup is safe Pro_Filter note: - Pro_Filter uses neutral line art that is readable on both light and dark backgrounds, so no Pro_Filter_dark variant is needed.
1 parent 3048b64 commit e48c0cf

4 files changed

Lines changed: 20 additions & 9 deletions

File tree

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,23 @@
11
using System.Drawing;
2+
using System.Globalization;
23

34
namespace LogExpert;
45

56
public static class ThemedImages
67
{
78
public static Bitmap Get (string name, bool darkMode)
89
{
10+
var culture = CultureInfo.CurrentUICulture;
11+
912
if (darkMode)
1013
{
11-
if (Resources.ResourceManager.GetObject(name + "_dark") is Bitmap dark)
14+
if (Resources.ResourceManager.GetObject(name + "_dark", culture) is Bitmap dark)
1215
{
1316
return dark;
1417
}
1518
}
1619

17-
return (Bitmap)(Resources.ResourceManager.GetObject(name)
20+
return (Bitmap)(Resources.ResourceManager.GetObject(name, culture)
1821
?? throw new InvalidOperationException($"Themed image resource '{name}' (or '{name}_dark') was not found."));
1922
}
2023
}

‎src/LogExpert.UI/Controls/LogWindow/LogWindow.cs‎

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -531,10 +531,11 @@ private void SetResources ()
531531

532532
private void ApplyResourceImages ()
533533
{
534+
var darkImages = Application.IsDarkModeEnabled;
534535
pnlProFilterLabel.BackgroundImage = Resources.Pro_Filter;
535-
btnFilterDown.BackgroundImage = ThemedImages.Get("ArrowDown", Application.IsDarkModeEnabled);
536-
btnFilterUp.BackgroundImage = ThemedImages.Get("ArrowUp", Application.IsDarkModeEnabled);
537-
btnToggleHighlightPanel.Image = ThemedImages.Get("Arrow_menu_open", Application.IsDarkModeEnabled);
536+
btnFilterDown.BackgroundImage = ThemedImages.Get("ArrowDown", darkImages);
537+
btnFilterUp.BackgroundImage = ThemedImages.Get("ArrowUp", darkImages);
538+
btnToggleHighlightPanel.Image = ThemedImages.Get("Arrow_menu_open", darkImages);
538539
}
539540

540541
private void ApplyCheckBoxResources ()
@@ -6644,7 +6645,7 @@ public void CellPainting (bool focused, int rowIndex, int columnIndex, bool isFi
66446645
var fontName = isFilteredGridView ? FONT_VERDANA : FONT_COURIER_NEW;
66456646
var stringToDraw = isFilteredGridView ? "!" : "i";
66466647

6647-
using var brush2 = new SolidBrush(PaintHelper.BookmarkMarkerTextColor);
6648+
using var brush2 = new SolidBrush(PaintHelper.GetBookmarkMarkerTextColor(Application.IsDarkModeEnabled));
66486649
using var font = new Font(fontName, Preferences.Font.Size, FontStyle.Bold);
66496650
e.Graphics.DrawString(stringToDraw, font, brush2, new RectangleF(rect.Left, rect.Top, rect.Width, rect.Height), _format);
66506651
}

‎src/LogExpert.UI/Dialogs/LogTabWindow/LogTabWindow.cs‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -390,6 +390,11 @@ private void ApplyThemedImages ()
390390
{
391391
var dark = Application.IsDarkModeEnabled;
392392

393+
if (!dark)
394+
{
395+
return;
396+
}
397+
393398
openToolStripMenuItem.Image = ThemedImages.Get("File_open", dark);
394399
closeFileToolStripMenuItem.Image = ThemedImages.Get("Close", dark);
395400
reloadToolStripMenuItem.Image = ThemedImages.Get("Restart_alt", dark);

‎src/LogExpert.UI/Entities/PaintHelper.cs‎

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public static void CellPainting (ILogPaintContextUI logPaintCtx, bool focused, i
7575

7676
if (bookmark.Text.Length > 0)
7777
{
78-
using var brush2 = new SolidBrush(BookmarkMarkerTextColor);
78+
using var brush2 = new SolidBrush(GetBookmarkMarkerTextColor(Application.IsDarkModeEnabled));
7979
using var font = logPaintCtx.MonospacedFont;
8080
e.Graphics.DrawString("i", font, brush2, new RectangleF(r.Left, r.Top, r.Width, r.Height), _format);
8181
}
@@ -107,10 +107,12 @@ public static Color GetForeColorFromHighlightEntry (HighlightEntry? entry, bool
107107
return darkMode ? _darkModeForeColor : Color.Black;
108108
}
109109

110-
public static Color BookmarkMarkerTextColor =>
111-
Application.IsDarkModeEnabled
110+
public static Color GetBookmarkMarkerTextColor (bool darkMode)
111+
{
112+
return darkMode
112113
? Color.FromArgb(255, 90, 45, 0) // dark brown-orange, readable on the light bookmark fills used in dark mode
113114
: Color.FromArgb(255, 190, 100, 0); // DarkOrange baseline
115+
}
114116

115117
[SupportedOSPlatform("windows")]
116118
public static Brush GetBrushForFocusedControl (bool focused, Color selectionColor, bool darkMode)

0 commit comments

Comments
 (0)