internal KryptonPaletteHeaders(PaletteRedirect redirector,
NeedPaintHandler needPaint)
{
Debug.Assert(redirector != null);
// Create the button style specific and common palettes
_headerCommon = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderPrimary, PaletteBorderStyle.HeaderPrimary, PaletteContentStyle.HeaderPrimary, needPaint);
_headerPrimary = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderPrimary, PaletteBorderStyle.HeaderPrimary, PaletteContentStyle.HeaderPrimary, needPaint);
_headerSecondary = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderSecondary, PaletteBorderStyle.HeaderSecondary, PaletteContentStyle.HeaderSecondary, needPaint);
_headerDockInactive = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderDockInactive, PaletteBorderStyle.HeaderDockInactive, PaletteContentStyle.HeaderDockInactive, needPaint);
_headerDockActive = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderDockActive, PaletteBorderStyle.HeaderDockActive, PaletteContentStyle.HeaderDockActive, needPaint);
_headerCalendar = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderCalendar, PaletteBorderStyle.HeaderCalendar, PaletteContentStyle.HeaderCalendar, needPaint);
_headerForm = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderForm, PaletteBorderStyle.HeaderForm, PaletteContentStyle.HeaderForm, needPaint);
_headerCustom1 = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderCustom1, PaletteBorderStyle.HeaderCustom1, PaletteContentStyle.HeaderCustom1, needPaint);
_headerCustom2 = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderCustom2, PaletteBorderStyle.HeaderCustom2, PaletteContentStyle.HeaderCustom2, needPaint);
// Create redirectors for inheriting from style specific to style common
PaletteRedirectTripleMetric redirectCommon = new PaletteRedirectTripleMetric(redirector,
_headerCommon.StateDisabled, _headerCommon.StateDisabled,
_headerCommon.StateNormal, _headerCommon.StateNormal);
// Inform the button style to use the new redirector
_headerPrimary.SetRedirector(redirectCommon);
_headerSecondary.SetRedirector(redirectCommon);
_headerDockInactive.SetRedirector(redirectCommon);
_headerDockActive.SetRedirector(redirectCommon);
_headerCalendar.SetRedirector(redirectCommon);
_headerForm.SetRedirector(redirectCommon);
_headerCustom1.SetRedirector(redirectCommon);
_headerCustom2.SetRedirector(redirectCommon);
}