From cbc7b57669757c2897222c7bcac2900b5252c0b3 Mon Sep 17 00:00:00 2001 From: Rodrigo Braz Monteiro Date: Tue, 21 Feb 2006 07:21:07 +0000 Subject: [PATCH] Added options to change colors of grid Originally committed to SVN as r95. --- core/base_grid.cpp | 22 +++++++++++----------- core/options.cpp | 11 ++++++++++- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/core/base_grid.cpp b/core/base_grid.cpp index c0c8a6193..5bcc0fc49 100644 --- a/core/base_grid.cpp +++ b/core/base_grid.cpp @@ -266,12 +266,12 @@ void BaseGrid::DrawImage(wxDC &dc) { dc.SetFont(font); // Clear background - dc.SetBackground(wxBrush(wxColour(255,255,255))); + dc.SetBackground(wxBrush(Options.AsColour(_T("Grid Background")))); dc.Clear(); // Draw labels dc.SetPen(*wxTRANSPARENT_PEN); - dc.SetBrush(wxBrush(wxColour(196,236,201))); + dc.SetBrush(wxBrush(Options.AsColour(_T("Grid left column")))); dc.DrawRectangle(0,lineHeight,colWidth[0],h-lineHeight); // Visible lines @@ -282,10 +282,10 @@ void BaseGrid::DrawImage(wxDC &dc) { // Row colors std::vector rowColors; std::vector foreColors; - rowColors.push_back(wxBrush(wxColour(255,255,255))); // 0 = Standard - foreColors.push_back(wxColour(0,0,0)); - rowColors.push_back(wxBrush(wxColour(165,207,231))); // 1 = Header - foreColors.push_back(wxColour(0,0,0)); + rowColors.push_back(wxBrush(Options.AsColour(_T("Grid Background")))); // 0 = Standard + foreColors.push_back(Options.AsColour(_T("Grid standard foreground"))); + rowColors.push_back(wxBrush(Options.AsColour(_T("Grid Header")))); // 1 = Header + foreColors.push_back(Options.AsColour(_T("Grid standard foreground"))); rowColors.push_back(wxBrush(Options.AsColour(_T("Grid selection background")))); // 2 = Selected foreColors.push_back(Options.AsColour(_T("Grid selection foreground"))); rowColors.push_back(wxBrush(Options.AsColour(_T("Grid comment background")))); // 3 = Commented @@ -298,7 +298,7 @@ void BaseGrid::DrawImage(wxDC &dc) { // First grid row bool drawGrid = true; if (drawGrid) { - dc.SetPen(wxPen(wxColour(128,128,128))); + dc.SetPen(wxPen(Options.AsColour(_T("Grid lines")))); dc.DrawLine(0,0,w,0); dc.SetPen(*wxTRANSPARENT_PEN); } @@ -414,7 +414,7 @@ void BaseGrid::DrawImage(wxDC &dc) { } // Set text color - if (collides) dc.SetTextForeground(wxColour(255,0,0)); + if (collides) dc.SetTextForeground(Options.AsColour(_T("Grid collision foreground"))); else { dc.SetTextForeground(foreColors[curColor]); } @@ -442,7 +442,7 @@ void BaseGrid::DrawImage(wxDC &dc) { // Draw grid dc.DestroyClippingRegion(); if (drawGrid) { - dc.SetPen(wxPen(wxColour(128,128,128))); + dc.SetPen(wxPen(Options.AsColour(_T("Grid lines")))); dc.DrawLine(0,dy+lineHeight,w,dy+lineHeight); dc.SetPen(*wxTRANSPARENT_PEN); } @@ -451,7 +451,7 @@ void BaseGrid::DrawImage(wxDC &dc) { // Draw grid columns dx = 0; if (drawGrid) { - dc.SetPen(wxPen(wxColour(128,128,128))); + dc.SetPen(wxPen(Options.AsColour(_T("Grid lines")))); for (int i=0;i<10;i++) { dx += colWidth[i]; dc.DrawLine(dx,0,dx,maxH); @@ -461,7 +461,7 @@ void BaseGrid::DrawImage(wxDC &dc) { } // Draw currently active line border - dc.SetPen(wxPen(wxColour(255,91,239))); + dc.SetPen(wxPen(Options.AsColour(_T("Grid Active border")))); dc.SetBrush(*wxTRANSPARENT_BRUSH); dy = (editBox->linen+1-yPos) * lineHeight; dc.DrawRectangle(0,dy,w,lineHeight+1); diff --git a/core/options.cpp b/core/options.cpp index 27ce7f1ca..574901d18 100644 --- a/core/options.cpp +++ b/core/options.cpp @@ -40,6 +40,7 @@ #include #include #include +#include #include "options.h" #include "main.h" #include "text_file_reader.h" @@ -107,11 +108,19 @@ void OptionsManager::LoadDefaults() { SetInt(_T("Find Affect"),0); SetInt(_T("Find Field"),0); + SetColour(_T("Grid standard foreground"),wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT)); SetColour(_T("Grid selection background"),wxColour(206,255,231)); - SetColour(_T("Grid selection foreground"),wxColour(0,0,0)); + SetColour(_T("Grid selection foreground"),wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT)); SetColour(_T("Grid comment background"),wxColour(216,222,245)); + SetColour(_T("Grid collision foreground"),wxColour(255,0,0)); SetColour(_T("Grid selected comment background"),wxColour(211,238,238)); SetColour(_T("Grid inframe background"),wxColour(255,253,234)); + SetColour(_T("Grid background"),wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW)); + SetColour(_T("Grid header"),wxColour(165,207,231)); + SetColour(_T("Grid left column"),wxColour(196,236,201)); + SetColour(_T("Grid active border"),wxColour(255,91,239)); + SetColour(_T("Grid lines"),wxColour(128,128,128)); + SetInt(_T("Grid hide overrides"),1); wchar_t temp = 0x2600; SetText(_T("Grid hide overrides char"),temp);