Remember "subfolder" as correctly spelled
[TortoiseGit.git] / src / TortoiseMerge / DiffColors.cpp
blob6da9005c64f9e989f495e0c61805306c3894bc56
1 // TortoiseGitMerge - a Diff/Patch program
3 // Copyright (C) 2023 - TortoiseGit
4 // Copyright (C) 2007-2008, 2010, 2013-2014, 2017, 2020 - TortoiseSVN
6 // This program is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU General Public License
8 // as published by the Free Software Foundation; either version 2
9 // of the License, or (at your option) any later version.
11 // This program is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License
17 // along with this program; if not, write to the Free Software Foundation,
18 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 #include "stdafx.h"
21 #include "DiffColors.h"
24 CDiffColors& CDiffColors::GetInstance()
26 static CDiffColors instance;
27 return instance;
31 CDiffColors::CDiffColors()
33 LoadRegistry();
36 CDiffColors::~CDiffColors()
40 void CDiffColors::GetColors(DiffState state, bool darkMode, COLORREF& crBkgnd, COLORREF& crText)
42 if ((state < DiffState::End) && (static_cast<int>(state) >= 0))
44 if (darkMode)
46 crBkgnd = static_cast<DWORD>(m_regDarkBackgroundColors[static_cast<int>(state)]);
47 crText = static_cast<DWORD>(m_regDarkForegroundColors[static_cast<int>(state)]);
49 else
51 crBkgnd = static_cast<DWORD>(m_regBackgroundColors[static_cast<int>(state)]);
52 crText = static_cast<DWORD>(m_regForegroundColors[static_cast<int>(state)]);
55 else
57 if (darkMode)
59 crBkgnd = CTheme::darkBkColor;
60 crText = CTheme::darkTextColor;
62 else
64 crBkgnd = ::GetSysColor(COLOR_WINDOW);
65 crText = ::GetSysColor(COLOR_WINDOWTEXT);
70 void CDiffColors::SetColors(DiffState state, bool darkMode, const COLORREF& crBkgnd, const COLORREF& crText)
72 if ((state < DiffState::End) && (static_cast<int>(state) >= 0))
74 if (darkMode)
76 m_regDarkBackgroundColors[static_cast<int>(state)] = crBkgnd;
77 m_regDarkForegroundColors[static_cast<int>(state)] = crText;
79 else
81 m_regBackgroundColors[static_cast<int>(state)] = crBkgnd;
82 m_regForegroundColors[static_cast<int>(state)] = crText;
87 void CDiffColors::LoadRegistry()
89 m_regForegroundColors[static_cast<int>(DiffState::Unknown)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorUnknownF", DIFFSTATE_UNKNOWN_DEFAULT_FG);
90 m_regForegroundColors[static_cast<int>(DiffState::Normal)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorNormalF", DIFFSTATE_NORMAL_DEFAULT_FG);
91 m_regForegroundColors[static_cast<int>(DiffState::Removed)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorRemovedF", DIFFSTATE_REMOVED_DEFAULT_FG);
92 m_regForegroundColors[static_cast<int>(DiffState::RemovedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorRemovedWhitespaceF", DIFFSTATE_REMOVEDWHITESPACE_DEFAULT_FG);
93 m_regForegroundColors[static_cast<int>(DiffState::Added)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorAddedF", DIFFSTATE_ADDED_DEFAULT_FG);
94 m_regForegroundColors[static_cast<int>(DiffState::AddedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorAddedWhitespaceF", DIFFSTATE_ADDEDWHITESPACE_DEFAULT_FG);
95 m_regForegroundColors[static_cast<int>(DiffState::Whitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorWhitespaceF", DIFFSTATE_WHITESPACE_DEFAULT_FG);
96 m_regForegroundColors[static_cast<int>(DiffState::WhitespaceDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorWhitespaceDiffF", DIFFSTATE_WHITESPACE_DIFF_DEFAULT_FG);
97 m_regForegroundColors[static_cast<int>(DiffState::Empty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorEmptyF", DIFFSTATE_EMPTY_DEFAULT_FG);
98 m_regForegroundColors[static_cast<int>(DiffState::Conflicted)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedF", DIFFSTATE_CONFLICTED_DEFAULT_FG);
99 m_regForegroundColors[static_cast<int>(DiffState::Conflicted_Ignored)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedIgnoredF", DIFFSTATE_CONFLICTED_IGNORED_DEFAULT_FG);
100 m_regForegroundColors[static_cast<int>(DiffState::ConflictAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedAddedF", DIFFSTATE_CONFLICTADDED_DEFAULT_FG);
101 m_regForegroundColors[static_cast<int>(DiffState::ConflictEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedEmptyF", DIFFSTATE_CONFLICTEMPTY_DEFAULT_FG);
102 m_regForegroundColors[static_cast<int>(DiffState::ConflictResolved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ConflictResolvedF", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_FG);
103 m_regForegroundColors[static_cast<int>(DiffState::ConflictResolvedEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ConflictResolvedEmptyF", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_FG);
104 m_regForegroundColors[static_cast<int>(DiffState::IdenticalRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorIdenticalRemovedF", DIFFSTATE_IDENTICALREMOVED_DEFAULT_FG);
105 m_regForegroundColors[static_cast<int>(DiffState::IdenticalAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorIdenticalAddedF", DIFFSTATE_IDENTICALADDED_DEFAULT_FG);
106 m_regForegroundColors[static_cast<int>(DiffState::TheirsRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorTheirsRemovedF", DIFFSTATE_THEIRSREMOVED_DEFAULT_FG);
107 m_regForegroundColors[static_cast<int>(DiffState::TheirsAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorTheirsAddedF", DIFFSTATE_THEIRSADDED_DEFAULT_FG);
108 m_regForegroundColors[static_cast<int>(DiffState::YoursRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorYoursRemovedF", DIFFSTATE_YOURSREMOVED_DEFAULT_FG);
109 m_regForegroundColors[static_cast<int>(DiffState::YoursAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorYoursAddedF", DIFFSTATE_YOURSADDED_DEFAULT_FG);
110 m_regForegroundColors[static_cast<int>(DiffState::Edited)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorEditedF", DIFFSTATE_EDITED_DEFAULT_FG);
111 m_regForegroundColors[static_cast<int>(DiffState::FilteredDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorFilteredF", DIFFSTATE_EDITED_DEFAULT_FG);
113 m_regBackgroundColors[static_cast<int>(DiffState::Unknown)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorUnknownB", DIFFSTATE_UNKNOWN_DEFAULT_BG);
114 m_regBackgroundColors[static_cast<int>(DiffState::Normal)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorNormalB", DIFFSTATE_NORMAL_DEFAULT_BG);
115 m_regBackgroundColors[static_cast<int>(DiffState::Removed)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorRemovedB", DIFFSTATE_REMOVED_DEFAULT_BG);
116 m_regBackgroundColors[static_cast<int>(DiffState::RemovedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorRemovedWhitespaceB", DIFFSTATE_REMOVEDWHITESPACE_DEFAULT_BG);
117 m_regBackgroundColors[static_cast<int>(DiffState::Added)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorAddedB", DIFFSTATE_ADDED_DEFAULT_BG);
118 m_regBackgroundColors[static_cast<int>(DiffState::AddedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorAddedWhitespaceB", DIFFSTATE_ADDEDWHITESPACE_DEFAULT_BG);
119 m_regBackgroundColors[static_cast<int>(DiffState::Whitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorWhitespaceB", DIFFSTATE_WHITESPACE_DEFAULT_BG);
120 m_regBackgroundColors[static_cast<int>(DiffState::WhitespaceDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorWhitespaceDiffB", DIFFSTATE_WHITESPACE_DIFF_DEFAULT_BG);
121 m_regBackgroundColors[static_cast<int>(DiffState::Empty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorEmptyB", DIFFSTATE_EMPTY_DEFAULT_BG);
122 m_regBackgroundColors[static_cast<int>(DiffState::Conflicted)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedB", DIFFSTATE_CONFLICTED_DEFAULT_BG);
123 m_regBackgroundColors[static_cast<int>(DiffState::Conflicted_Ignored)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedIgnoredB", DIFFSTATE_CONFLICTED_IGNORED_DEFAULT_BG);
124 m_regBackgroundColors[static_cast<int>(DiffState::ConflictAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedAddedB", DIFFSTATE_CONFLICTADDED_DEFAULT_BG);
125 m_regBackgroundColors[static_cast<int>(DiffState::ConflictEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorConflictedEmptyB", DIFFSTATE_CONFLICTEMPTY_DEFAULT_BG);
126 m_regBackgroundColors[static_cast<int>(DiffState::ConflictResolved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ConflictResolvedB", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_BG);
127 m_regBackgroundColors[static_cast<int>(DiffState::ConflictResolvedEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ConflictResolvedEmptyB", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_BG);
128 m_regBackgroundColors[static_cast<int>(DiffState::IdenticalRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorIdenticalRemovedB", DIFFSTATE_IDENTICALREMOVED_DEFAULT_BG);
129 m_regBackgroundColors[static_cast<int>(DiffState::IdenticalAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorIdenticalAddedB", DIFFSTATE_IDENTICALADDED_DEFAULT_BG);
130 m_regBackgroundColors[static_cast<int>(DiffState::TheirsRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorTheirsRemovedB", DIFFSTATE_THEIRSREMOVED_DEFAULT_BG);
131 m_regBackgroundColors[static_cast<int>(DiffState::TheirsAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorTheirsAddedB", DIFFSTATE_THEIRSADDED_DEFAULT_BG);
132 m_regBackgroundColors[static_cast<int>(DiffState::YoursRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorYoursRemovedB", DIFFSTATE_YOURSREMOVED_DEFAULT_BG);
133 m_regBackgroundColors[static_cast<int>(DiffState::YoursAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorYoursAddedB", DIFFSTATE_YOURSADDED_DEFAULT_BG);
134 m_regBackgroundColors[static_cast<int>(DiffState::Edited)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorEditedB", DIFFSTATE_EDITED_DEFAULT_BG);
135 m_regBackgroundColors[static_cast<int>(DiffState::FilteredDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\ColorFilteredB", DIFFSTATE_FILTERED_DEFAULT_BG);
137 m_regDarkForegroundColors[static_cast<int>(DiffState::Unknown)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorUnknownF", DIFFSTATE_UNKNOWN_DEFAULT_DARK_FG);
138 m_regDarkForegroundColors[static_cast<int>(DiffState::Normal)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorNormalF", DIFFSTATE_NORMAL_DEFAULT_DARK_FG);
139 m_regDarkForegroundColors[static_cast<int>(DiffState::Removed)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorRemovedF", DIFFSTATE_REMOVED_DEFAULT_DARK_FG);
140 m_regDarkForegroundColors[static_cast<int>(DiffState::RemovedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorRemovedWhitespaceF", DIFFSTATE_REMOVEDWHITESPACE_DEFAULT_DARK_FG);
141 m_regDarkForegroundColors[static_cast<int>(DiffState::Added)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorAddedF", DIFFSTATE_ADDED_DEFAULT_DARK_FG);
142 m_regDarkForegroundColors[static_cast<int>(DiffState::AddedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorAddedWhitespaceF", DIFFSTATE_ADDEDWHITESPACE_DEFAULT_DARK_FG);
143 m_regDarkForegroundColors[static_cast<int>(DiffState::Whitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorWhitespaceF", DIFFSTATE_WHITESPACE_DEFAULT_DARK_FG);
144 m_regDarkForegroundColors[static_cast<int>(DiffState::WhitespaceDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorWhitespaceDiffF", DIFFSTATE_WHITESPACE_DIFF_DEFAULT_DARK_FG);
145 m_regDarkForegroundColors[static_cast<int>(DiffState::Empty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorEmptyF", DIFFSTATE_EMPTY_DEFAULT_DARK_FG);
146 m_regDarkForegroundColors[static_cast<int>(DiffState::Conflicted)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedF", DIFFSTATE_CONFLICTED_DEFAULT_DARK_FG);
147 m_regDarkForegroundColors[static_cast<int>(DiffState::Conflicted_Ignored)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedIgnoredF", DIFFSTATE_CONFLICTED_IGNORED_DEFAULT_DARK_FG);
148 m_regDarkForegroundColors[static_cast<int>(DiffState::ConflictAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedAddedF", DIFFSTATE_CONFLICTADDED_DEFAULT_DARK_FG);
149 m_regDarkForegroundColors[static_cast<int>(DiffState::ConflictEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedEmptyF", DIFFSTATE_CONFLICTEMPTY_DEFAULT_DARK_FG);
150 m_regDarkForegroundColors[static_cast<int>(DiffState::ConflictResolved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkConflictResolvedF", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_DARK_FG);
151 m_regDarkForegroundColors[static_cast<int>(DiffState::ConflictResolvedEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkConflictResolvedEmptyF", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_DARK_FG);
152 m_regDarkForegroundColors[static_cast<int>(DiffState::IdenticalRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorIdenticalRemovedF", DIFFSTATE_IDENTICALREMOVED_DEFAULT_DARK_FG);
153 m_regDarkForegroundColors[static_cast<int>(DiffState::IdenticalAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorIdenticalAddedF", DIFFSTATE_IDENTICALADDED_DEFAULT_DARK_FG);
154 m_regDarkForegroundColors[static_cast<int>(DiffState::TheirsRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorTheirsRemovedF", DIFFSTATE_THEIRSREMOVED_DEFAULT_DARK_FG);
155 m_regDarkForegroundColors[static_cast<int>(DiffState::TheirsAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorTheirsAddedF", DIFFSTATE_THEIRSADDED_DEFAULT_DARK_FG);
156 m_regDarkForegroundColors[static_cast<int>(DiffState::YoursRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorYoursRemovedF", DIFFSTATE_YOURSREMOVED_DEFAULT_DARK_FG);
157 m_regDarkForegroundColors[static_cast<int>(DiffState::YoursAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorYoursAddedF", DIFFSTATE_YOURSADDED_DEFAULT_DARK_FG);
158 m_regDarkForegroundColors[static_cast<int>(DiffState::Edited)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorEditedF", DIFFSTATE_EDITED_DEFAULT_DARK_FG);
159 m_regDarkForegroundColors[static_cast<int>(DiffState::FilteredDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorFilteredF", DIFFSTATE_EDITED_DEFAULT_DARK_FG);
161 m_regDarkBackgroundColors[static_cast<int>(DiffState::Unknown)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorUnknownB", DIFFSTATE_UNKNOWN_DEFAULT_DARK_BG);
162 m_regDarkBackgroundColors[static_cast<int>(DiffState::Normal)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorNormalB", DIFFSTATE_NORMAL_DEFAULT_DARK_BG);
163 m_regDarkBackgroundColors[static_cast<int>(DiffState::Removed)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorRemovedB", DIFFSTATE_REMOVED_DEFAULT_DARK_BG);
164 m_regDarkBackgroundColors[static_cast<int>(DiffState::RemovedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorRemovedWhitespaceB", DIFFSTATE_REMOVEDWHITESPACE_DEFAULT_DARK_BG);
165 m_regDarkBackgroundColors[static_cast<int>(DiffState::Added)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorAddedB", DIFFSTATE_ADDED_DEFAULT_DARK_BG);
166 m_regDarkBackgroundColors[static_cast<int>(DiffState::AddedWhitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorAddedWhitespaceB", DIFFSTATE_ADDEDWHITESPACE_DEFAULT_DARK_BG);
167 m_regDarkBackgroundColors[static_cast<int>(DiffState::Whitespace)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorWhitespaceB", DIFFSTATE_WHITESPACE_DEFAULT_DARK_BG);
168 m_regDarkBackgroundColors[static_cast<int>(DiffState::WhitespaceDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorWhitespaceDiffB", DIFFSTATE_WHITESPACE_DIFF_DEFAULT_DARK_BG);
169 m_regDarkBackgroundColors[static_cast<int>(DiffState::Empty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorEmptyB", DIFFSTATE_EMPTY_DEFAULT_DARK_BG);
170 m_regDarkBackgroundColors[static_cast<int>(DiffState::Conflicted)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedB", DIFFSTATE_CONFLICTED_DEFAULT_DARK_BG);
171 m_regDarkBackgroundColors[static_cast<int>(DiffState::Conflicted_Ignored)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedIgnoredB", DIFFSTATE_CONFLICTED_IGNORED_DEFAULT_DARK_BG);
172 m_regDarkBackgroundColors[static_cast<int>(DiffState::ConflictAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedAddedB", DIFFSTATE_CONFLICTADDED_DEFAULT_DARK_BG);
173 m_regDarkBackgroundColors[static_cast<int>(DiffState::ConflictEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorConflictedEmptyB", DIFFSTATE_CONFLICTEMPTY_DEFAULT_DARK_BG);
174 m_regDarkBackgroundColors[static_cast<int>(DiffState::ConflictResolved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkConflictResolvedB", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_DARK_BG);
175 m_regDarkBackgroundColors[static_cast<int>(DiffState::ConflictResolvedEmpty)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkConflictResolvedEmptyB", DIFFSTATE_CONFLICTRESOLVED_DEFAULT_DARK_BG);
176 m_regDarkBackgroundColors[static_cast<int>(DiffState::IdenticalRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorIdenticalRemovedB", DIFFSTATE_IDENTICALREMOVED_DEFAULT_DARK_BG);
177 m_regDarkBackgroundColors[static_cast<int>(DiffState::IdenticalAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorIdenticalAddedB", DIFFSTATE_IDENTICALADDED_DEFAULT_DARK_BG);
178 m_regDarkBackgroundColors[static_cast<int>(DiffState::TheirsRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorTheirsRemovedB", DIFFSTATE_THEIRSREMOVED_DEFAULT_DARK_BG);
179 m_regDarkBackgroundColors[static_cast<int>(DiffState::TheirsAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorTheirsAddedB", DIFFSTATE_THEIRSADDED_DEFAULT_DARK_BG);
180 m_regDarkBackgroundColors[static_cast<int>(DiffState::YoursRemoved)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorYoursRemovedB", DIFFSTATE_YOURSREMOVED_DEFAULT_DARK_BG);
181 m_regDarkBackgroundColors[static_cast<int>(DiffState::YoursAdded)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorYoursAddedB", DIFFSTATE_YOURSADDED_DEFAULT_DARK_BG);
182 m_regDarkBackgroundColors[static_cast<int>(DiffState::Edited)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorEditedB", DIFFSTATE_EDITED_DEFAULT_DARK_BG);
183 m_regDarkBackgroundColors[static_cast<int>(DiffState::FilteredDiff)] = CRegDWORD(L"Software\\TortoiseGitMerge\\Colors\\DarkColorFilteredB", DIFFSTATE_FILTERED_DEFAULT_DARK_BG);
185 for (int i = 0; i < static_cast<int>(DiffState::End); ++i)
187 m_regForegroundColors[i].read();
188 m_regBackgroundColors[i].read();
189 m_regDarkForegroundColors[i].read();
190 m_regDarkBackgroundColors[i].read();