Fix wxGrid handling of system color change

Fix wxGrid for system color change for colors that were assigned
defaults in Init(), and therefore did not update. These colors are
now determined as needed during drawing.

The grid sample "Colours" menu gets additional commands so you can set
all these colors.

Closes #26729.
This commit is contained in:
Steve Cornett
2026-07-23 23:47:12 +02:00
committed by Vadim Zeitlin
parent 95a47a88a9
commit 58dfc19c96
4 changed files with 95 additions and 17 deletions
+5 -7
View File
@@ -1933,10 +1933,10 @@ public:
wxString GetColLabelValue( int col ) const;
wxString GetCornerLabelValue() const;
wxColour GetCellHighlightColour() const { return m_cellHighlightColour; }
wxColour GetCellHighlightColour() const;
int GetCellHighlightPenWidth() const { return m_cellHighlightPenWidth; }
int GetCellHighlightROPenWidth() const { return m_cellHighlightROPenWidth; }
wxColor GetGridFrozenBorderColour() const { return m_gridFrozenBorderColour; }
wxColor GetGridFrozenBorderColour() const;
int GetGridFrozenBorderPenWidth() const { return m_gridFrozenBorderPenWidth; }
// this one will use wxHeaderCtrl for the column labels
@@ -2073,7 +2073,7 @@ public:
// this can be used to change the global grid lines colour
void SetGridLineColour(const wxColour& col);
wxColour GetGridLineColour() const { return m_gridLineColour; }
wxColour GetGridLineColour() const;
// these methods may be overridden to customize individual grid lines
// appearance
@@ -2421,10 +2421,8 @@ public:
const wxRect& renderExtent) const;
// Access or update the selection fore/back colours
wxColour GetSelectionBackground() const
{ return m_selectionBackground; }
wxColour GetSelectionForeground() const
{ return m_selectionForeground; }
wxColour GetSelectionBackground() const;
wxColour GetSelectionForeground() const;
void SetSelectionBackground(const wxColour& c) { m_selectionBackground = c; }
void SetSelectionForeground(const wxColour& c) { m_selectionForeground = c; }