public override Color GetBackColor2(PaletteBackStyle style, PaletteState state)
{
// Only override system palette if a recognized office 2003 color scheme is used
if (_usingOffice2003)
{
switch (style)
{
case PaletteBackStyle.ContextMenuItemHighlight:
switch (state)
{
case PaletteState.Disabled:
return SystemColors.Control;
case PaletteState.Normal:
return Color.Empty;
case PaletteState.Tracking:
return ColorTable.MenuItemSelectedGradientBegin;
}
break;
case PaletteBackStyle.HeaderDockInactive:
if (state == PaletteState.Disabled)
return SystemColors.Control;
else
return ColorTable.ButtonCheckedHighlight;
case PaletteBackStyle.HeaderDockActive:
if (state == PaletteState.Disabled)
return SystemColors.Control;
else
return SystemColors.Highlight;
case PaletteBackStyle.TabDock:
switch (state)
{
case PaletteState.Disabled:
return SystemColors.Control;
case PaletteState.Normal:
return MergeColors(SystemColors.Window, 0.1f, ColorTable.ButtonCheckedHighlight, 0.9f);
case PaletteState.Pressed:
case PaletteState.Tracking:
return MergeColors(SystemColors.Window, 0.4f, ColorTable.ButtonCheckedGradientMiddle, 0.6f);
case PaletteState.CheckedNormal:
case PaletteState.CheckedPressed:
case PaletteState.CheckedTracking:
return SystemColors.Window;
}
break;
}
}
return base.GetBackColor2(style, state);
}