Typo error
[mono.git] / mcs / class / System.Windows.Forms / System.Windows.Forms / ProfessionalColorTable.cs
1 //
2 // ProfessionalColorTable.cs
3 //
4 // Permission is hereby granted, free of charge, to any person obtaining
5 // a copy of this software and associated documentation files (the
6 // "Software"), to deal in the Software without restriction, including
7 // without limitation the rights to use, copy, modify, merge, publish,
8 // distribute, sublicense, and/or sell copies of the Software, and to
9 // permit persons to whom the Software is furnished to do so, subject to
10 // the following conditions:
11 // 
12 // The above copyright notice and this permission notice shall be
13 // included in all copies or substantial portions of the Software.
14 // 
15 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 //
23 // Copyright (c) 2006 Novell, Inc.
24 //
25 // Authors:
26 //      Jonathan Pobst (monkey@jpobst.com)
27 //
28
29 using System.Drawing;
30 using System.Windows.Forms.VisualStyles;
31
32 namespace System.Windows.Forms
33 {
34         public class ProfessionalColorTable
35         {
36                 #region Private Variables
37                 private bool use_system_colors = false;
38
39                 private Color button_checked_gradient_begin;
40                 private Color button_checked_gradient_end;
41                 private Color button_checked_gradient_middle;
42                 private Color button_checked_highlight;
43                 private Color button_checked_highlight_border;
44                 private Color button_pressed_border;
45                 private Color button_pressed_gradient_begin;
46                 private Color button_pressed_gradient_end;
47                 private Color button_pressed_gradient_middle;
48                 private Color button_pressed_highlight;
49                 private Color button_pressed_highlight_border;
50                 private Color button_selected_border;
51                 private Color button_selected_gradient_begin;
52                 private Color button_selected_gradient_end;
53                 private Color button_selected_gradient_middle;
54                 private Color button_selected_highlight;
55                 private Color button_selected_highlight_border;
56                 private Color check_background;
57                 private Color check_pressed_background;
58                 private Color check_selected_background;
59                 private Color grip_dark;
60                 private Color grip_light;
61                 private Color image_margin_gradient_begin;
62                 private Color image_margin_gradient_end;
63                 private Color image_margin_gradient_middle;
64                 private Color image_margin_revealed_gradient_begin;
65                 private Color image_margin_revealed_gradient_end;
66                 private Color image_margin_revealed_gradient_middle;
67                 private Color menu_border;
68                 private Color menu_item_border;
69                 private Color menu_item_pressed_gradient_begin;
70                 private Color menu_item_pressed_gradient_end;
71                 private Color menu_item_pressed_gradient_middle;
72                 private Color menu_item_selected;
73                 private Color menu_item_selected_gradient_begin;
74                 private Color menu_item_selected_gradient_end;
75                 private Color menu_strip_gradient_begin;
76                 private Color menu_strip_gradient_end;
77                 private Color overflow_button_gradient_begin;
78                 private Color overflow_button_gradient_end;
79                 private Color overflow_button_gradient_middle;
80                 private Color rafting_container_gradient_begin;
81                 private Color rafting_container_gradient_end;
82                 private Color separator_dark;
83                 private Color separator_light;
84                 private Color status_strip_gradient_begin;
85                 private Color status_strip_gradient_end;
86                 private Color tool_strip_border;
87                 private Color tool_strip_content_panel_gradient_begin;
88                 private Color tool_strip_content_panel_gradient_end;
89                 private Color tool_strip_drop_down_background;
90                 private Color tool_strip_gradient_begin;
91                 private Color tool_strip_gradient_end;
92                 private Color tool_strip_gradient_middle;
93                 private Color tool_strip_panel_gradient_begin;
94                 private Color tool_strip_panel_gradient_end;
95                 #endregion
96
97                 #region Public Constructor
98                 public ProfessionalColorTable ()
99                 {
100                         CalculateColors ();
101                 }
102                 #endregion
103
104                 #region Public Properties
105                 public virtual Color ButtonCheckedGradientBegin { get { return this.button_checked_gradient_begin; } }
106                 public virtual Color ButtonCheckedGradientEnd { get { return this.button_checked_gradient_end; } }
107                 public virtual Color ButtonCheckedGradientMiddle { get { return this.button_checked_gradient_middle; } }
108                 public virtual Color ButtonCheckedHighlight { get { return this.button_checked_highlight; } }
109                 public virtual Color ButtonCheckedHighlightBorder { get { return this.button_checked_highlight_border; } }
110                 public virtual Color ButtonPressedBorder { get { return this.button_pressed_border; } }
111                 public virtual Color ButtonPressedGradientBegin { get { return this.button_pressed_gradient_begin; } }
112                 public virtual Color ButtonPressedGradientEnd { get { return this.button_pressed_gradient_end; } }
113                 public virtual Color ButtonPressedGradientMiddle { get { return this.button_pressed_gradient_middle; } }
114                 public virtual Color ButtonPressedHighlight { get { return this.button_pressed_highlight; } }
115                 public virtual Color ButtonPressedHighlightBorder { get { return this.button_pressed_highlight_border; } }
116                 public virtual Color ButtonSelectedBorder { get { return this.button_selected_border; } }
117                 public virtual Color ButtonSelectedGradientBegin { get { return this.button_selected_gradient_begin; } }
118                 public virtual Color ButtonSelectedGradientEnd { get { return this.button_selected_gradient_end; } }
119                 public virtual Color ButtonSelectedGradientMiddle { get { return this.button_selected_gradient_middle; } }
120                 public virtual Color ButtonSelectedHighlight { get { return this.button_selected_highlight; } }
121                 public virtual Color ButtonSelectedHighlightBorder { get { return this.button_selected_highlight_border; } }
122                 public virtual Color CheckBackground { get { return this.check_background; } }
123                 public virtual Color CheckPressedBackground { get { return this.check_pressed_background; } }
124                 public virtual Color CheckSelectedBackground { get { return this.check_selected_background; } }
125                 public virtual Color GripDark { get { return this.grip_dark; } }
126                 public virtual Color GripLight { get { return this.grip_light; } }
127                 public virtual Color ImageMarginGradientBegin { get { return this.image_margin_gradient_begin; } }
128                 public virtual Color ImageMarginGradientEnd { get { return this.image_margin_gradient_end; } }
129                 public virtual Color ImageMarginGradientMiddle { get { return this.image_margin_gradient_middle; } }
130                 public virtual Color ImageMarginRevealedGradientBegin { get { return this.image_margin_revealed_gradient_begin; } }
131                 public virtual Color ImageMarginRevealedGradientEnd { get { return this.image_margin_revealed_gradient_end; } }
132                 public virtual Color ImageMarginRevealedGradientMiddle { get { return this.image_margin_revealed_gradient_middle; } }
133                 public virtual Color MenuBorder { get { return this.menu_border; } }
134                 public virtual Color MenuItemBorder { get { return this.menu_item_border; } }
135                 public virtual Color MenuItemPressedGradientBegin { get { return this.menu_item_pressed_gradient_begin; } }
136                 public virtual Color MenuItemPressedGradientEnd { get { return this.menu_item_pressed_gradient_end; } }
137                 public virtual Color MenuItemPressedGradientMiddle { get { return this.menu_item_pressed_gradient_middle; } }
138                 public virtual Color MenuItemSelected { get { return this.menu_item_selected; } }
139                 public virtual Color MenuItemSelectedGradientBegin { get { return this.menu_item_selected_gradient_begin; } }
140                 public virtual Color MenuItemSelectedGradientEnd { get { return this.menu_item_selected_gradient_end; } }
141                 public virtual Color MenuStripGradientBegin { get { return this.menu_strip_gradient_begin; } }
142                 public virtual Color MenuStripGradientEnd { get { return this.menu_strip_gradient_end; } }
143                 public virtual Color OverflowButtonGradientBegin { get { return this.overflow_button_gradient_begin; } }
144                 public virtual Color OverflowButtonGradientEnd { get { return this.overflow_button_gradient_end; } }
145                 public virtual Color OverflowButtonGradientMiddle { get { return this.overflow_button_gradient_middle; } }
146                 public virtual Color RaftingContainerGradientBegin { get { return this.rafting_container_gradient_begin; } }
147                 public virtual Color RaftingContainerGradientEnd { get { return this.rafting_container_gradient_end; } }
148                 public virtual Color SeparatorDark { get { return this.separator_dark; } }
149                 public virtual Color SeparatorLight { get { return this.separator_light; } }
150                 public virtual Color StatusStripGradientBegin { get { return this.status_strip_gradient_begin; } }
151                 public virtual Color StatusStripGradientEnd { get { return this.status_strip_gradient_end; } }
152                 public virtual Color ToolStripBorder { get { return this.tool_strip_border; } }
153                 public virtual Color ToolStripContentPanelGradientBegin { get { return this.tool_strip_content_panel_gradient_begin; } }
154                 public virtual Color ToolStripContentPanelGradientEnd { get { return this.tool_strip_content_panel_gradient_end; } }
155                 public virtual Color ToolStripDropDownBackground { get { return this.tool_strip_drop_down_background; } }
156                 public virtual Color ToolStripGradientBegin { get { return this.tool_strip_gradient_begin; } }
157                 public virtual Color ToolStripGradientEnd { get { return this.tool_strip_gradient_end; } }
158                 public virtual Color ToolStripGradientMiddle { get { return this.tool_strip_gradient_middle; } }
159                 public virtual Color ToolStripPanelGradientBegin { get { return this.tool_strip_panel_gradient_begin; } }
160                 public virtual Color ToolStripPanelGradientEnd { get { return this.tool_strip_panel_gradient_end; } }
161                 public bool UseSystemColors {
162                         get { return use_system_colors; }
163                         set {
164                                 if (value != use_system_colors) {
165                                         use_system_colors = value; CalculateColors ();
166                                 }
167                         }
168                 }
169                 #endregion
170
171                 #region Private Methods
172                 private void CalculateColors ()
173                 {
174                         switch (GetCurrentStyle ()) {
175                                 case ColorSchemes.Classic:
176                                         button_checked_gradient_begin = Color.Empty;
177                                         button_checked_gradient_end = Color.Empty;
178                                         button_checked_gradient_middle = Color.Empty;
179                                         button_checked_highlight = Color.FromArgb (184, 191, 211);
180                                         button_checked_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
181
182                                         button_pressed_border = Color.FromKnownColor (KnownColor.Highlight);
183                                         button_pressed_gradient_begin = Color.FromArgb (133, 146, 181);
184                                         button_pressed_gradient_end = Color.FromArgb (133, 146, 181);
185                                         button_pressed_gradient_middle = Color.FromArgb (133, 146, 181);
186                                         button_pressed_highlight = Color.FromArgb (131, 144, 179);
187                                         button_pressed_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
188
189                                         button_selected_border = Color.FromKnownColor (KnownColor.Highlight);
190                                         button_selected_gradient_begin = Color.FromArgb (182, 189, 210);
191                                         button_selected_gradient_end = Color.FromArgb (182, 189, 210);
192                                         button_selected_gradient_middle = Color.FromArgb (182, 189, 210);
193                                         button_selected_highlight = Color.FromArgb (184, 191, 211);
194                                         button_selected_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
195
196                                         check_background = Color.FromKnownColor (KnownColor.Highlight);
197                                         check_pressed_background = Color.FromArgb (133, 146, 181);
198                                         check_selected_background = Color.FromArgb (133, 146, 181);
199
200                                         grip_dark = Color.FromArgb (160, 160, 160);
201                                         grip_light = SystemColors.Window;
202
203                                         image_margin_gradient_begin = Color.FromArgb (245, 244, 242);
204                                         image_margin_gradient_end = SystemColors.Control;
205                                         image_margin_gradient_middle = Color.FromArgb (234, 232, 228);
206                                         image_margin_revealed_gradient_begin = Color.FromArgb (238, 236, 233);
207                                         image_margin_revealed_gradient_end = Color.FromArgb (216, 213, 206);
208                                         image_margin_revealed_gradient_middle = Color.FromArgb (225, 222, 217);
209
210                                         menu_border = Color.FromArgb (102, 102, 102);
211                                         menu_item_border = SystemColors.Highlight;
212
213                                         menu_item_pressed_gradient_begin = Color.FromArgb (245, 244, 242);
214                                         menu_item_pressed_gradient_end = Color.FromArgb (234, 232, 228);
215                                         menu_item_pressed_gradient_middle = Color.FromArgb (225, 222, 217);
216                                         menu_item_selected = SystemColors.Window;
217                                         menu_item_selected_gradient_begin = Color.FromArgb (182, 189, 210);
218                                         menu_item_selected_gradient_end = Color.FromArgb (182, 189, 210);
219
220                                         menu_strip_gradient_begin = SystemColors.ButtonFace;
221                                         menu_strip_gradient_end = Color.FromArgb (246, 245, 244);
222
223                                         overflow_button_gradient_begin = Color.FromArgb (225, 222, 217);
224                                         overflow_button_gradient_end = SystemColors.ButtonShadow;
225                                         overflow_button_gradient_middle = Color.FromArgb (216, 213, 206);
226
227                                         rafting_container_gradient_begin = SystemColors.ButtonFace;
228                                         rafting_container_gradient_end = Color.FromArgb (246, 245, 244);
229
230                                         separator_dark = Color.FromArgb (166, 166, 166);
231                                         separator_light = SystemColors.ButtonHighlight;
232
233                                         status_strip_gradient_begin = SystemColors.ButtonFace;
234                                         status_strip_gradient_end = Color.FromArgb (246, 245, 244);
235
236                                         tool_strip_border = Color.FromArgb (219, 216, 209);
237                                         tool_strip_content_panel_gradient_begin = SystemColors.ButtonFace;
238                                         tool_strip_content_panel_gradient_end = Color.FromArgb (246, 245, 244);
239                                         tool_strip_drop_down_background = SystemColors.Window;
240
241                                         tool_strip_gradient_begin = Color.FromArgb (245, 244, 242);
242                                         tool_strip_gradient_end = SystemColors.ButtonFace;
243                                         tool_strip_gradient_middle = Color.FromArgb (234, 232, 228);
244
245                                         tool_strip_panel_gradient_begin = SystemColors.ButtonFace;
246                                         tool_strip_panel_gradient_end = Color.FromArgb (246, 245, 244);
247                                         break;
248                                 case ColorSchemes.NormalColor:
249                                         button_checked_gradient_begin = use_system_colors ? Color.Empty : Color.FromArgb (255, 223, 154);
250                                         button_checked_gradient_end = use_system_colors ? Color.Empty : Color.FromArgb (255, 166, 76);
251                                         button_checked_gradient_middle = use_system_colors ? Color.Empty : Color.FromArgb (255, 195, 116);
252                                         button_checked_highlight = Color.FromArgb (195, 211, 237);
253                                         button_checked_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
254                                         button_pressed_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (0, 0, 128);
255                                         button_pressed_gradient_begin = use_system_colors ? Color.FromArgb (152, 181, 226) : Color.FromArgb (254, 128, 62);
256                                         button_pressed_gradient_end = use_system_colors ? Color.FromArgb (152, 181, 226) : Color.FromArgb (255, 223, 154);
257                                         button_pressed_gradient_middle = use_system_colors ? Color.FromArgb (152, 181, 226) : Color.FromArgb (255, 177, 109);
258                                         button_pressed_highlight = use_system_colors ? Color.FromArgb (150, 179, 225) : Color.FromArgb (150, 179, 225);
259                                         button_pressed_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
260                                         button_selected_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (0, 0, 128);
261                                         button_selected_gradient_begin = use_system_colors ? Color.FromArgb (193, 210, 238) : Color.FromArgb (255, 255, 222);
262                                         button_selected_gradient_end = use_system_colors ? Color.FromArgb (193, 210, 238) : Color.FromArgb (255, 203, 136);
263                                         button_selected_gradient_middle = use_system_colors ? Color.FromArgb (193, 210, 238) : Color.FromArgb (255, 225, 172);
264                                         button_selected_highlight = use_system_colors ? Color.FromArgb (195, 211, 237) : Color.FromArgb (195, 211, 237);
265                                         button_selected_highlight_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (0, 0, 128);
266
267                                         check_background = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (255, 192, 111);
268                                         check_pressed_background = use_system_colors ? Color.FromArgb (152, 181, 226) : Color.FromArgb (254, 128, 62);
269                                         check_selected_background = use_system_colors ? Color.FromArgb (152, 181, 226) : Color.FromArgb (254, 128, 62);
270
271                                         grip_dark = use_system_colors ? Color.FromArgb (193, 190, 179) : Color.FromArgb (39, 65, 118);
272                                         grip_light = use_system_colors ? SystemColors.Window : Color.FromArgb (255, 255, 255);
273
274                                         image_margin_gradient_begin = use_system_colors ? Color.FromArgb (251, 250, 246) : Color.FromArgb (227, 239, 255);
275                                         image_margin_gradient_end = use_system_colors ? SystemColors.Control : Color.FromArgb (123, 164, 224);
276                                         image_margin_gradient_middle = use_system_colors ? Color.FromArgb (246, 244, 236) : Color.FromArgb (203, 225, 252);
277                                         image_margin_revealed_gradient_begin = use_system_colors ? Color.FromArgb (247, 246, 239) : Color.FromArgb (203, 221, 246);
278                                         image_margin_revealed_gradient_end = use_system_colors ? Color.FromArgb (238, 235, 220) : Color.FromArgb (114, 155, 215);
279                                         image_margin_revealed_gradient_middle = use_system_colors ? Color.FromArgb (242, 240, 228) : Color.FromArgb (161, 197, 249);
280
281                                         menu_border = use_system_colors ? Color.FromArgb (138, 134, 122) : Color.FromArgb (0, 45, 150);
282                                         menu_item_border = use_system_colors ? SystemColors.Highlight : Color.FromArgb (0, 0, 128);
283
284                                         menu_item_pressed_gradient_begin = use_system_colors ? Color.FromArgb (251, 250, 246) : Color.FromArgb (227, 239, 255);
285                                         menu_item_pressed_gradient_end = use_system_colors ? Color.FromArgb (246, 244, 236) : Color.FromArgb (123, 164, 224);
286                                         menu_item_pressed_gradient_middle = use_system_colors ? Color.FromArgb (242, 240, 228) : Color.FromArgb (161, 197, 249);
287                                         menu_item_selected = use_system_colors ? SystemColors.Window : Color.FromArgb (255, 238, 194);
288                                         menu_item_selected_gradient_begin = use_system_colors ? Color.FromArgb (193, 210, 238) : Color.FromArgb (255, 255, 222);
289                                         menu_item_selected_gradient_end = use_system_colors ? Color.FromArgb (193, 210, 238) : Color.FromArgb (255, 203, 136);
290
291                                         menu_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (158, 190, 245);
292                                         menu_strip_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (196, 218, 250);
293
294                                         overflow_button_gradient_begin = use_system_colors ? Color.FromArgb (242, 240, 228) : Color.FromArgb (127, 177, 250);
295                                         overflow_button_gradient_end = use_system_colors ? SystemColors.ButtonShadow : Color.FromArgb (0, 53, 145);
296                                         overflow_button_gradient_middle = use_system_colors ? Color.FromArgb (238, 235, 220) : Color.FromArgb (82, 127, 208);
297
298                                         rafting_container_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (158, 190, 245);
299                                         rafting_container_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (196, 218, 250);
300
301                                         separator_dark = use_system_colors ? Color.FromArgb (197, 194, 184) : Color.FromArgb (106, 140, 203);
302                                         separator_light = use_system_colors ? SystemColors.ButtonHighlight : Color.FromArgb (241, 249, 255);
303
304                                         status_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (158, 190, 245);
305                                         status_strip_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (196, 218, 250);
306
307                                         tool_strip_border = use_system_colors ? Color.FromArgb (239, 237, 222) : Color.FromArgb (59, 97, 156);
308                                         tool_strip_content_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (158, 190, 245);
309                                         tool_strip_content_panel_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (196, 218, 250);
310                                         tool_strip_drop_down_background = use_system_colors ? Color.FromArgb (252, 252, 249) : Color.FromArgb (246, 246, 246);
311
312                                         tool_strip_gradient_begin = use_system_colors ? Color.FromArgb (251, 250, 246) : Color.FromArgb (227, 239, 255);
313                                         tool_strip_gradient_end = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (123, 164, 224);
314                                         tool_strip_gradient_middle = use_system_colors ? Color.FromArgb (246, 244, 236) : Color.FromArgb (203, 225, 252);
315
316                                         tool_strip_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (158, 190, 245);
317                                         tool_strip_panel_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (196, 218, 250);
318                                         break;
319                                 case ColorSchemes.HomeStead:
320                                         button_checked_gradient_begin = use_system_colors ? Color.Empty : Color.FromArgb (255, 223, 154);
321                                         button_checked_gradient_end = use_system_colors ? Color.Empty : Color.FromArgb (255, 166, 76);
322                                         button_checked_gradient_middle = use_system_colors ? Color.Empty : Color.FromArgb (255, 195, 116);
323                                         button_checked_highlight = Color.FromArgb (223, 227, 213);
324                                         button_checked_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
325
326                                         button_pressed_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (63, 93, 56);
327                                         button_pressed_gradient_begin = use_system_colors ? Color.FromArgb (201, 208, 184) : Color.FromArgb (254, 128, 62);
328                                         button_pressed_gradient_end = use_system_colors ? Color.FromArgb (201, 208, 184) : Color.FromArgb (255, 223, 154);
329                                         button_pressed_gradient_middle = use_system_colors ? Color.FromArgb (201, 208, 184) : Color.FromArgb (255, 177, 109);
330                                         button_pressed_highlight = use_system_colors ? Color.FromArgb (200, 206, 182) : Color.FromArgb (200, 206, 182);
331                                         button_pressed_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
332
333                                         button_selected_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (63, 93, 56);
334                                         button_selected_gradient_begin = use_system_colors ? Color.FromArgb (223, 227, 212) : Color.FromArgb (255, 255, 222);
335                                         button_selected_gradient_end = use_system_colors ? Color.FromArgb (223, 227, 212) : Color.FromArgb (255, 203, 136);
336                                         button_selected_gradient_middle = use_system_colors ? Color.FromArgb (223, 227, 212) : Color.FromArgb (255, 225, 172);
337                                         button_selected_highlight = use_system_colors ? Color.FromArgb (223, 227, 213) : Color.FromArgb (223, 227, 213);
338                                         button_selected_highlight_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (63, 93, 56);
339
340                                         check_background = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (255, 192, 111);
341                                         check_pressed_background = use_system_colors ? Color.FromArgb (201, 208, 184) : Color.FromArgb (254, 128, 62);
342                                         check_selected_background = use_system_colors ? Color.FromArgb (201, 208, 184) : Color.FromArgb (254, 128, 62);
343
344                                         grip_dark = use_system_colors ? Color.FromArgb (193, 190, 179) : Color.FromArgb (81, 94, 51);
345                                         grip_light = use_system_colors ? SystemColors.Window : Color.FromArgb (255, 255, 255);
346
347                                         image_margin_gradient_begin = use_system_colors ? Color.FromArgb (251, 250, 246) : Color.FromArgb (255, 255, 237);
348                                         image_margin_gradient_end = use_system_colors ? SystemColors.Control : Color.FromArgb (181, 196, 143);
349                                         image_margin_gradient_middle = use_system_colors ? Color.FromArgb (246, 244, 236) : Color.FromArgb (206, 220, 167);
350                                         image_margin_revealed_gradient_begin = use_system_colors ? Color.FromArgb (247, 246, 239) : Color.FromArgb (230, 230, 209);
351                                         image_margin_revealed_gradient_end = use_system_colors ? Color.FromArgb (238, 235, 220) : Color.FromArgb (160, 177, 116);
352                                         image_margin_revealed_gradient_middle = use_system_colors ? Color.FromArgb (242, 240, 228) : Color.FromArgb (186, 201, 143);
353
354                                         menu_border = use_system_colors ? Color.FromArgb (138, 134, 122) : Color.FromArgb (117, 141, 94);
355                                         menu_item_border = use_system_colors ? SystemColors.Highlight : Color.FromArgb (63, 93, 56);
356
357                                         menu_item_pressed_gradient_begin = use_system_colors ? Color.FromArgb (251, 250, 246) : Color.FromArgb (237, 240, 214);
358                                         menu_item_pressed_gradient_end = use_system_colors ? Color.FromArgb (246, 244, 236) : Color.FromArgb (181, 196, 143);
359                                         menu_item_pressed_gradient_middle = use_system_colors ? Color.FromArgb (242, 240, 228) : Color.FromArgb (186, 201, 143);
360                                         menu_item_selected = use_system_colors ? SystemColors.Window : Color.FromArgb (255, 238, 194);
361                                         menu_item_selected_gradient_begin = use_system_colors ? Color.FromArgb (223, 227, 212) : Color.FromArgb (255, 255, 222);
362                                         menu_item_selected_gradient_end = use_system_colors ? Color.FromArgb (223, 227, 212) : Color.FromArgb (255, 203, 136);
363
364                                         menu_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (217, 217, 167);
365                                         menu_strip_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (242, 241, 228);
366
367                                         overflow_button_gradient_begin = use_system_colors ? Color.FromArgb (242, 240, 228) : Color.FromArgb (186, 204, 150);
368                                         overflow_button_gradient_end = use_system_colors ? SystemColors.ButtonShadow : Color.FromArgb (96, 119, 107);
369                                         overflow_button_gradient_middle = use_system_colors ? Color.FromArgb (238, 235, 220) : Color.FromArgb (141, 160, 107);
370
371                                         rafting_container_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (217, 217, 167);
372                                         rafting_container_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (242, 241, 228);
373
374                                         separator_dark = use_system_colors ? Color.FromArgb (197, 194, 184) : Color.FromArgb (96, 128, 88);
375                                         separator_light = use_system_colors ? SystemColors.ButtonHighlight : Color.FromArgb (244, 247, 222);
376
377                                         status_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (217, 217, 167);
378                                         status_strip_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (242, 241, 228);
379
380                                         tool_strip_border = use_system_colors ? Color.FromArgb (239, 237, 222) : Color.FromArgb (96, 128, 88);
381                                         tool_strip_content_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (217, 217, 167);
382                                         tool_strip_content_panel_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (242, 241, 228);
383                                         tool_strip_drop_down_background = use_system_colors ? Color.FromArgb (252, 252, 249) : Color.FromArgb (244, 244, 238);
384
385                                         tool_strip_gradient_begin = use_system_colors ? Color.FromArgb (251, 250, 246) : Color.FromArgb (255, 255, 237);
386                                         tool_strip_gradient_end = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (181, 196, 143);
387                                         tool_strip_gradient_middle = use_system_colors ? Color.FromArgb (246, 244, 236) : Color.FromArgb (206, 220, 167);
388
389                                         tool_strip_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (217, 217, 167);
390                                         tool_strip_panel_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 247) : Color.FromArgb (242, 241, 228);
391                                         break;
392                                 case ColorSchemes.Metallic:
393                                         button_checked_gradient_begin = use_system_colors ? Color.Empty : Color.FromArgb (255, 223, 154);
394                                         button_checked_gradient_end = use_system_colors ? Color.Empty : Color.FromArgb (255, 166, 76);
395                                         button_checked_gradient_middle = use_system_colors ? Color.Empty : Color.FromArgb (255, 195, 116);
396                                         button_checked_highlight = Color.FromArgb (231, 232, 235);
397                                         button_checked_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
398
399                                         button_pressed_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (75, 75, 111);
400                                         button_pressed_gradient_begin = use_system_colors ? Color.FromArgb (217, 218, 223) : Color.FromArgb (254, 128, 62);
401                                         button_pressed_gradient_end = use_system_colors ? Color.FromArgb (217, 218, 223) : Color.FromArgb (255, 223, 154);
402                                         button_pressed_gradient_middle = use_system_colors ? Color.FromArgb (217, 218, 223) : Color.FromArgb (255, 177, 109);
403                                         button_pressed_highlight = use_system_colors ? Color.FromArgb (215, 216, 222) : Color.FromArgb (215, 216, 222);
404                                         button_pressed_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
405
406                                         button_selected_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (75, 75, 111);
407                                         button_selected_gradient_begin = use_system_colors ? Color.FromArgb (232, 233, 236) : Color.FromArgb (255, 255, 222);
408                                         button_selected_gradient_end = use_system_colors ? Color.FromArgb (232, 233, 236) : Color.FromArgb (255, 203, 136);
409                                         button_selected_gradient_middle = use_system_colors ? Color.FromArgb (232, 233, 236) : Color.FromArgb (255, 225, 172);
410                                         button_selected_highlight = use_system_colors ? Color.FromArgb (231, 232, 235) : Color.FromArgb (231, 232, 235);
411                                         button_selected_highlight_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (75, 75, 111);
412
413                                         check_background = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (255, 192, 111);
414                                         check_pressed_background = use_system_colors ? Color.FromArgb (217, 218, 223) : Color.FromArgb (254, 128, 62);
415                                         check_selected_background = use_system_colors ? Color.FromArgb (217, 218, 223) : Color.FromArgb (254, 128, 62);
416
417                                         grip_dark = use_system_colors ? Color.FromArgb (182, 182, 185) : Color.FromArgb (84, 84, 117);
418                                         grip_light = use_system_colors ? SystemColors.Window : Color.FromArgb (255, 255, 255);
419
420                                         image_margin_gradient_begin = use_system_colors ? Color.FromArgb (248, 248, 249) : Color.FromArgb (249, 249, 255);
421                                         image_margin_gradient_end = use_system_colors ? SystemColors.Control : Color.FromArgb (147, 145, 176);
422                                         image_margin_gradient_middle = use_system_colors ? Color.FromArgb (240, 239, 241) : Color.FromArgb (225, 226, 236);
423                                         image_margin_revealed_gradient_begin = use_system_colors ? Color.FromArgb (243, 242, 244) : Color.FromArgb (215, 215, 226);
424                                         image_margin_revealed_gradient_end = use_system_colors ? Color.FromArgb (227, 226, 230) : Color.FromArgb (118, 116, 151);
425                                         image_margin_revealed_gradient_middle = use_system_colors ? Color.FromArgb (233, 233, 235) : Color.FromArgb (184, 185, 202);
426
427                                         menu_border = use_system_colors ? Color.FromArgb (126, 126, 129) : Color.FromArgb (124, 124, 148);
428                                         menu_item_border = use_system_colors ? SystemColors.Highlight : Color.FromArgb (75, 75, 111);
429
430                                         menu_item_pressed_gradient_begin = use_system_colors ? Color.FromArgb (248, 248, 249) : Color.FromArgb (232, 233, 242);
431                                         menu_item_pressed_gradient_end = use_system_colors ? Color.FromArgb (240, 239, 241) : Color.FromArgb (172, 170, 194);
432                                         menu_item_pressed_gradient_middle = use_system_colors ? Color.FromArgb (233, 233, 235) : Color.FromArgb (184, 185, 202);
433                                         menu_item_selected = use_system_colors ? SystemColors.Window : Color.FromArgb (255, 238, 194);
434                                         menu_item_selected_gradient_begin = use_system_colors ? Color.FromArgb (232, 233, 236) : Color.FromArgb (255, 255, 222);
435                                         menu_item_selected_gradient_end = use_system_colors ? Color.FromArgb (232, 233, 236) : Color.FromArgb (255, 203, 136);
436
437                                         menu_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (215, 215, 229);
438                                         menu_strip_gradient_end = use_system_colors ? Color.FromArgb (249, 248, 249) : Color.FromArgb (243, 243, 247);
439
440                                         overflow_button_gradient_begin = use_system_colors ? Color.FromArgb (233, 233, 235) : Color.FromArgb (186, 185, 206);
441                                         overflow_button_gradient_end = use_system_colors ? SystemColors.ButtonShadow : Color.FromArgb (118, 116, 146);
442                                         overflow_button_gradient_middle = use_system_colors ? Color.FromArgb (227, 226, 230) : Color.FromArgb (156, 155, 180);
443
444                                         rafting_container_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (215, 215, 229);
445                                         rafting_container_gradient_end = use_system_colors ? Color.FromArgb (249, 248, 249) : Color.FromArgb (243, 243, 247);
446
447                                         separator_dark = use_system_colors ? Color.FromArgb (186, 186, 189) : Color.FromArgb (110, 109, 143);
448                                         separator_light = use_system_colors ? SystemColors.ButtonHighlight : Color.FromArgb (255, 255, 255);
449
450                                         status_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (215, 215, 229);
451                                         status_strip_gradient_end = use_system_colors ? Color.FromArgb (249, 248, 249) : Color.FromArgb (243, 243, 247);
452
453                                         tool_strip_border = use_system_colors ? Color.FromArgb (229, 228, 232) : Color.FromArgb (124, 124, 148);
454                                         tool_strip_content_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (215, 215, 229);
455                                         tool_strip_content_panel_gradient_end = use_system_colors ? Color.FromArgb (249, 248, 249) : Color.FromArgb (243, 243, 247);
456                                         tool_strip_drop_down_background = use_system_colors ? Color.FromArgb (251, 250, 251) : Color.FromArgb (253, 250, 255);
457
458                                         tool_strip_gradient_begin = use_system_colors ? Color.FromArgb (248, 248, 249) : Color.FromArgb (249, 249, 255);
459                                         tool_strip_gradient_end = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (147, 145, 176);
460                                         tool_strip_gradient_middle = use_system_colors ? Color.FromArgb (240, 239, 241) : Color.FromArgb (225, 226, 236);
461
462                                         tool_strip_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (215, 215, 229);
463                                         tool_strip_panel_gradient_end = use_system_colors ? Color.FromArgb (249, 248, 249) : Color.FromArgb (243, 243, 247);
464                                         break;
465                                 case ColorSchemes.MediaCenter:
466                                         button_checked_gradient_begin = use_system_colors ? Color.Empty : Color.FromArgb (226, 229, 238);
467                                         button_checked_gradient_end = use_system_colors ? Color.Empty : Color.FromArgb (226, 229, 238);
468                                         button_checked_gradient_middle = use_system_colors ? Color.Empty : Color.FromArgb (226, 229, 238);
469                                         button_checked_highlight = Color.FromArgb (196, 208, 229);
470                                         button_checked_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
471
472                                         button_pressed_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (51, 94, 168);
473                                         button_pressed_gradient_begin = use_system_colors ? Color.FromArgb (153, 175, 212) : Color.FromArgb (153, 175, 212);
474                                         button_pressed_gradient_end = use_system_colors ? Color.FromArgb (153, 175, 212) : Color.FromArgb (153, 175, 212);
475                                         button_pressed_gradient_middle = use_system_colors ? Color.FromArgb (153, 175, 212) : Color.FromArgb (153, 175, 212);
476                                         button_pressed_highlight = use_system_colors ? Color.FromArgb (152, 173, 210) : Color.FromArgb (152, 173, 210);
477                                         button_pressed_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
478
479                                         button_selected_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (51, 94, 168);
480                                         button_selected_gradient_begin = use_system_colors ? Color.FromArgb (194, 207, 229) : Color.FromArgb (194, 207, 229);
481                                         button_selected_gradient_end = use_system_colors ? Color.FromArgb (194, 207, 229) : Color.FromArgb (194, 207, 229);
482                                         button_selected_gradient_middle = use_system_colors ? Color.FromArgb (194, 207, 229) : Color.FromArgb (194, 207, 229);
483                                         button_selected_highlight = use_system_colors ? Color.FromArgb (196, 208, 229) : Color.FromArgb (196, 208, 229);
484                                         button_selected_highlight_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (51, 94, 168);
485
486                                         check_background = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (226, 229, 238);
487                                         check_pressed_background = use_system_colors ? Color.FromArgb (153, 175, 212) : Color.FromArgb (51, 94, 168);
488                                         check_selected_background = use_system_colors ? Color.FromArgb (153, 175, 212) : Color.FromArgb (51, 94, 168);
489
490                                         grip_dark = use_system_colors ? Color.FromArgb (189, 188, 191) : Color.FromArgb (189, 188, 191);
491                                         grip_light = use_system_colors ? SystemColors.Window : Color.FromArgb (255, 255, 255);
492
493                                         image_margin_gradient_begin = use_system_colors ? Color.FromArgb (250, 250, 251) : Color.FromArgb (252, 252, 252);
494                                         image_margin_gradient_end = use_system_colors ? SystemColors.Control : Color.FromArgb (235, 233, 237);
495                                         image_margin_gradient_middle = use_system_colors ? Color.FromArgb (245, 244, 246) : Color.FromArgb (245, 244, 246);
496                                         image_margin_revealed_gradient_begin = use_system_colors ? Color.FromArgb (247, 246, 248) : Color.FromArgb (247, 246, 248);
497                                         image_margin_revealed_gradient_end = use_system_colors ? Color.FromArgb (237, 235, 239) : Color.FromArgb (228, 226, 230);
498                                         image_margin_revealed_gradient_middle = use_system_colors ? Color.FromArgb (241, 240, 242) : Color.FromArgb (241, 240, 242);
499
500                                         menu_border = use_system_colors ? Color.FromArgb (134, 133, 136) : Color.FromArgb (134, 133, 136);
501                                         menu_item_border = use_system_colors ? SystemColors.Highlight : Color.FromArgb (51, 94, 168);
502
503                                         menu_item_pressed_gradient_begin = use_system_colors ? Color.FromArgb (250, 250, 251) : Color.FromArgb (252, 252, 252);
504                                         menu_item_pressed_gradient_end = use_system_colors ? Color.FromArgb (245, 244, 246) : Color.FromArgb (245, 244, 246);
505                                         menu_item_pressed_gradient_middle = use_system_colors ? Color.FromArgb (241, 240, 242) : Color.FromArgb (241, 240, 242);
506                                         menu_item_selected = use_system_colors ? SystemColors.Window : Color.FromArgb (194, 207, 229);
507                                         menu_item_selected_gradient_begin = use_system_colors ? Color.FromArgb (194, 207, 229) : Color.FromArgb (194, 207, 229);
508                                         menu_item_selected_gradient_end = use_system_colors ? Color.FromArgb (194, 207, 229) : Color.FromArgb (194, 207, 229);
509
510                                         menu_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (235, 233, 237);
511                                         menu_strip_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 251) : Color.FromArgb (251, 250, 251);
512
513                                         overflow_button_gradient_begin = use_system_colors ? Color.FromArgb (241, 240, 242) : Color.FromArgb (242, 242, 242);
514                                         overflow_button_gradient_end = use_system_colors ? SystemColors.ButtonShadow : Color.FromArgb (167, 166, 170);
515                                         overflow_button_gradient_middle = use_system_colors ? Color.FromArgb (237, 235, 239) : Color.FromArgb (224, 224, 225);
516
517                                         rafting_container_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (235, 233, 237);
518                                         rafting_container_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 251) : Color.FromArgb (251, 250, 251);
519
520                                         separator_dark = use_system_colors ? Color.FromArgb (193, 193, 196) : Color.FromArgb (193, 193, 196);
521                                         separator_light = use_system_colors ? SystemColors.ButtonHighlight : Color.FromArgb (255, 255, 255);
522
523                                         status_strip_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (235, 233, 237);
524                                         status_strip_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 251) : Color.FromArgb (251, 250, 251);
525
526                                         tool_strip_border = use_system_colors ? Color.FromArgb (238, 237, 240) : Color.FromArgb (238, 237, 240);
527                                         tool_strip_content_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (235, 233, 237);
528                                         tool_strip_content_panel_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 251) : Color.FromArgb (251, 250, 251);
529                                         tool_strip_drop_down_background = use_system_colors ? Color.FromArgb (252, 252, 252) : Color.FromArgb (252, 252, 252);
530
531                                         tool_strip_gradient_begin = use_system_colors ? Color.FromArgb (250, 250, 251) : Color.FromArgb (252, 252, 252);
532                                         tool_strip_gradient_end = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (235, 233, 237);
533                                         tool_strip_gradient_middle = use_system_colors ? Color.FromArgb (245, 244, 246) : Color.FromArgb (245, 244, 246);
534
535                                         tool_strip_panel_gradient_begin = use_system_colors ? SystemColors.ButtonFace : Color.FromArgb (235, 233, 237);
536                                         tool_strip_panel_gradient_end = use_system_colors ? Color.FromArgb (251, 250, 251) : Color.FromArgb (251, 250, 251);
537                                         break;
538                                 case ColorSchemes.Aero:
539                                         button_checked_gradient_begin = Color.Empty;
540                                         button_checked_gradient_end = Color.Empty;
541                                         button_checked_gradient_middle = Color.Empty;
542                                         button_checked_highlight = Color.FromArgb (196, 225, 255);
543                                         button_checked_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
544
545                                         button_pressed_border = Color.FromKnownColor (KnownColor.Highlight);
546                                         button_pressed_gradient_begin = Color.FromArgb (153, 204, 255);
547                                         button_pressed_gradient_end = Color.FromArgb (153, 204, 255);
548                                         button_pressed_gradient_middle = Color.FromArgb (153, 204, 255);
549                                         button_pressed_highlight = Color.FromArgb (152, 203, 255);
550                                         button_pressed_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
551
552                                         button_selected_border = use_system_colors ? Color.FromKnownColor (KnownColor.Highlight) : Color.FromArgb (51, 94, 168);
553                                         button_selected_gradient_begin = Color.FromArgb (194, 224, 255);
554                                         button_selected_gradient_end = Color.FromArgb (194, 224, 255);
555                                         button_selected_gradient_middle = Color.FromArgb (194, 224, 255);
556                                         button_selected_highlight = Color.FromArgb (196, 225, 255);
557                                         button_selected_highlight_border = Color.FromKnownColor (KnownColor.Highlight);
558
559                                         check_background = Color.FromKnownColor (KnownColor.Highlight);
560                                         check_pressed_background = Color.FromArgb (153, 204, 255);
561                                         check_selected_background = Color.FromArgb (153, 204, 255);
562
563                                         grip_dark = Color.FromArgb (184, 184, 184);
564                                         grip_light = SystemColors.Window;
565
566                                         image_margin_gradient_begin = Color.FromArgb (252, 252, 252);
567                                         image_margin_gradient_end = SystemColors.Control;
568                                         image_margin_gradient_middle = Color.FromArgb (250, 250, 250);
569                                         image_margin_revealed_gradient_begin = Color.FromArgb (251, 251, 251);
570                                         image_margin_revealed_gradient_end = Color.FromArgb (245, 245, 245);
571                                         image_margin_revealed_gradient_middle = Color.FromArgb (247, 247, 247);
572
573                                         menu_border = Color.FromArgb (128, 128, 128);
574                                         menu_item_border = SystemColors.Highlight;
575
576                                         menu_item_pressed_gradient_begin = Color.FromArgb (252, 252, 252);
577                                         menu_item_pressed_gradient_end = Color.FromArgb (250, 250, 250);
578                                         menu_item_pressed_gradient_middle = Color.FromArgb (247, 247, 247);
579                                         menu_item_selected = SystemColors.Window;
580                                         menu_item_selected_gradient_begin = Color.FromArgb (194, 224, 255);
581                                         menu_item_selected_gradient_end = Color.FromArgb (194, 224, 255);
582
583                                         menu_strip_gradient_begin = SystemColors.ButtonFace;
584                                         menu_strip_gradient_end = Color.FromArgb (253, 253, 253);
585
586                                         overflow_button_gradient_begin = Color.FromArgb (247, 247, 247);
587                                         overflow_button_gradient_end = SystemColors.ButtonShadow;
588                                         overflow_button_gradient_middle = Color.FromArgb (245, 245, 245);
589
590                                         rafting_container_gradient_begin = SystemColors.ButtonFace;
591                                         rafting_container_gradient_end = Color.FromArgb (253, 253, 253);
592
593                                         separator_dark = Color.FromArgb (189, 189, 189);
594                                         separator_light = SystemColors.ButtonHighlight;
595
596                                         status_strip_gradient_begin = SystemColors.ButtonFace;
597                                         status_strip_gradient_end = Color.FromArgb (253, 253, 253);
598
599                                         tool_strip_border = Color.FromArgb (246, 246, 246);
600                                         tool_strip_content_panel_gradient_begin = SystemColors.ButtonFace;
601                                         tool_strip_content_panel_gradient_end = Color.FromArgb (253, 253, 253);
602                                         tool_strip_drop_down_background = Color.FromArgb (253, 253, 253);
603
604                                         tool_strip_gradient_begin = Color.FromArgb (252, 252, 252);
605                                         tool_strip_gradient_end = SystemColors.ButtonFace;
606                                         tool_strip_gradient_middle = Color.FromArgb (250, 250, 250);
607
608                                         tool_strip_panel_gradient_begin = SystemColors.ButtonFace;
609                                         tool_strip_panel_gradient_end = Color.FromArgb (253, 253, 253);
610                                         break;
611                         }
612                 }
613                 
614                 private ColorSchemes GetCurrentStyle ()
615                 {
616                         if (!VisualStyleInformation.IsEnabledByUser || string.IsNullOrEmpty (VisualStylesEngine.Instance.VisualStyleInformationFileName))
617
618
619                                 return ColorSchemes.Classic;
620                         else {
621                                 switch (System.IO.Path.GetFileNameWithoutExtension (VisualStylesEngine.Instance.VisualStyleInformationFileName).ToLowerInvariant ()) {
622                                         case "aero":
623                                                 return ColorSchemes.Aero;
624                                         case "royale":
625                                                 return ColorSchemes.MediaCenter;
626                                         default:
627                                                 switch (VisualStyleInformation.ColorScheme) {
628                                                         case "NormalColor":
629                                                                 return ColorSchemes.NormalColor;
630                                                         case "HomeStead":
631                                                                 return ColorSchemes.HomeStead;
632                                                         case "Metallic":
633                                                                 return ColorSchemes.Metallic;
634                                                         default:
635                                                                 return ColorSchemes.Classic;
636                                                 }
637                                 }
638                         }
639                 }
640                 #endregion
641
642                 #region Private Enums
643                 private enum ColorSchemes
644                 {
645                         Classic,        // Windows Classic (No theme)
646                         NormalColor,    // Luna Blue
647                         HomeStead,      // Luna Olive
648                         Metallic,       // Luna Silver
649                         MediaCenter,    // Media Center (Energy Blue)
650                         Aero            // Windows Vista
651                 }
652                 #endregion
653         }
654 }