1 // TortoiseSVN - a Windows shell extension for easy version control
\r
3 // Copyright (C) 2003-2007 - TortoiseSVN
\r
5 // This program is free software; you can redistribute it and/or
\r
6 // modify it under the terms of the GNU General Public License
\r
7 // as published by the Free Software Foundation; either version 2
\r
8 // of the License, or (at your option) any later version.
\r
10 // This program is distributed in the hope that it will be useful,
\r
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
\r
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
\r
13 // GNU General Public License for more details.
\r
15 // You should have received a copy of the GNU General Public License
\r
16 // along with this program; if not, write to the Free Software Foundation,
\r
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
\r
20 #include ".\colors.h"
\r
22 CColors::CColors(void) : m_regAdded(_T("Software\\TortoiseSVN\\Colors\\Added"), RGB(100, 0, 100))
\r
23 , m_regCmd(_T("Software\\TortoiseSVN\\Colors\\Cmd"), ::GetSysColor(COLOR_GRAYTEXT))
\r
24 , m_regConflict(_T("Software\\TortoiseSVN\\Colors\\Conflict"), RGB(255, 0, 0))
\r
25 , m_regModified(_T("Software\\TortoiseSVN\\Colors\\Modified"), RGB(0, 50, 160))
\r
26 , m_regMerged(_T("Software\\TortoiseSVN\\Colors\\Merged"), RGB(0, 100, 0))
\r
27 , m_regDeleted(_T("Software\\TortoiseSVN\\Colors\\Deleted"), RGB(100, 0, 0))
\r
28 , m_regLastCommit(_T("Software\\TortoiseSVN\\Colors\\LastCommit"), RGB(100, 100, 100))
\r
29 , m_regDeletedNode(_T("Software\\TortoiseSVN\\Colors\\DeletedNode"), RGB(255, 0, 0))
\r
30 , m_regAddedNode(_T("Software\\TortoiseSVN\\Colors\\AddedNode"), RGB(0, 255, 0))
\r
31 , m_regReplacedNode(_T("Software\\TortoiseSVN\\Colors\\ReplacedNode"), RGB(0, 255, 0))
\r
32 , m_regRenamedNode(_T("Software\\TortoiseSVN\\Colors\\RenamedNode"), RGB(0, 0, 255))
\r
33 , m_regLastCommitNode(_T("Software\\TortoiseSVN\\Colors\\LastCommitNode"), RGB(200, 200, 200))
\r
34 , m_regPropertyChanged(_T("Software\\TortoiseSVN\\Colors\\PropertyChanged"), RGB(0, 50, 160))
\r
38 CColors::~CColors(void)
\r
42 COLORREF CColors::GetColor(Colors col, bool bDefault /*=true*/)
\r
48 return ::GetSysColor(COLOR_GRAYTEXT);
\r
49 return (COLORREF)(DWORD)m_regCmd;
\r
52 return RGB(255, 0, 0);
\r
53 return (COLORREF)(DWORD)m_regConflict;
\r
56 return RGB(0, 50, 160);
\r
57 return (COLORREF)(DWORD)m_regModified;
\r
60 return RGB(0, 100, 0);
\r
61 return (COLORREF)(DWORD)m_regMerged;
\r
64 return RGB(100, 0, 0);
\r
65 return (COLORREF)(DWORD)m_regDeleted;
\r
68 return RGB(100, 0, 100);
\r
69 return (COLORREF)(DWORD)m_regAdded;
\r
72 return RGB(100, 100, 100);
\r
73 return (COLORREF)(DWORD)m_regAdded;
\r
76 return RGB(255, 0, 0);
\r
77 return (COLORREF)(DWORD)m_regDeletedNode;
\r
80 return RGB(0, 255, 0);
\r
81 return (COLORREF)(DWORD)m_regAddedNode;
\r
84 return RGB(0, 255, 0);
\r
85 return (COLORREF)(DWORD)m_regReplacedNode;
\r
88 return RGB(0, 0, 255);
\r
89 return (COLORREF)(DWORD)m_regRenamedNode;
\r
90 case LastCommitNode:
\r
92 return RGB(200, 200, 200);
\r
93 return (COLORREF)(DWORD)m_regLastCommitNode;
\r
94 case PropertyChanged:
\r
96 return RGB(0, 50, 160);
\r
97 return (COLORREF)(DWORD)m_regPropertyChanged;
\r
102 void CColors::SetColor(Colors col, COLORREF cr)
\r
110 m_regConflict = cr;
\r
113 m_regModified = cr;
\r
125 m_regDeletedNode = cr;
\r
128 m_regAddedNode = cr;
\r
131 m_regReplacedNode = cr;
\r
134 m_regRenamedNode = cr;
\r
137 m_regLastCommit = cr;
\r
139 case PropertyChanged:
\r
140 m_regPropertyChanged = cr;
\r