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.
21 #include "DiffColors.h"
24 CDiffColors
& CDiffColors::GetInstance()
26 static CDiffColors instance
;
31 CDiffColors::CDiffColors()
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))
46 crBkgnd
= static_cast<DWORD
>(m_regDarkBackgroundColors
[static_cast<int>(state
)]);
47 crText
= static_cast<DWORD
>(m_regDarkForegroundColors
[static_cast<int>(state
)]);
51 crBkgnd
= static_cast<DWORD
>(m_regBackgroundColors
[static_cast<int>(state
)]);
52 crText
= static_cast<DWORD
>(m_regForegroundColors
[static_cast<int>(state
)]);
59 crBkgnd
= CTheme::darkBkColor
;
60 crText
= CTheme::darkTextColor
;
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))
76 m_regDarkBackgroundColors
[static_cast<int>(state
)] = crBkgnd
;
77 m_regDarkForegroundColors
[static_cast<int>(state
)] = crText
;
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();