/// <summary> /// Initialize a new instance of the PaletteTripleOverride class. /// </summary> /// <param name="normalTriple">Normal palette to use.</param> /// <param name="overrideTriple">Override palette to use.</param> /// <param name="overrideState">State used by the override.</param> public PaletteTripleOverride(IPaletteTriple normalTriple, IPaletteTriple overrideTriple, PaletteState overrideState) { Debug.Assert(normalTriple != null); Debug.Assert(overrideTriple != null); // Validate incoming references if (normalTriple == null) { throw new ArgumentNullException(nameof(normalTriple)); } if (overrideTriple == null) { throw new ArgumentNullException(nameof(overrideTriple)); } // Create the triple override instances _overrideBack = new PaletteBackInheritOverride(normalTriple.PaletteBack, overrideTriple.PaletteBack); _overrideBorder = new PaletteBorderInheritOverride(normalTriple.PaletteBorder, overrideTriple.PaletteBorder); _overrideContent = new PaletteContentInheritOverride(normalTriple.PaletteContent, overrideTriple.PaletteContent); // Do not apply an override by default Apply = false; // Always override the state Override = true; OverrideState = overrideState; }
/// <summary> /// Initialize a new instance of the PaletteDoubleOverride class. /// </summary> /// <param name="normalTriple">Normal palette to use.</param> /// <param name="overrideTriple">Override palette to use.</param> /// <param name="overrideState">State used by the override.</param> public PaletteDoubleOverride(IPaletteDouble normalTriple, IPaletteDouble overrideTriple, PaletteState overrideState) { Debug.Assert(normalTriple != null); Debug.Assert(overrideTriple != null); if (normalTriple == null) { throw new ArgumentNullException("normalTriple"); } if (overrideTriple == null) { throw new ArgumentNullException("overrideTriple"); } // Create the triple override instances _overrideBack = new PaletteBackInheritOverride(normalTriple.PaletteBack, overrideTriple.PaletteBack); _overrideBorder = new PaletteBorderInheritOverride(normalTriple.PaletteBorder, overrideTriple.PaletteBorder); // Do not apply an override by default Apply = false; // Always override the state Override = true; OverrideState = overrideState; }
/// <summary> /// Initialize a new instance of the PaletteDoubleOverride class. /// </summary> /// <param name="normalTriple">Normal palette to use.</param> /// <param name="overrideTriple">Override palette to use.</param> /// <param name="overrideState">State used by the override.</param> public PaletteDoubleOverride(IPaletteDouble normalTriple, IPaletteDouble overrideTriple, PaletteState overrideState) { Debug.Assert(normalTriple != null); Debug.Assert(overrideTriple != null); if (normalTriple == null) throw new ArgumentNullException("normalTriple"); if (overrideTriple == null) throw new ArgumentNullException("overrideTriple"); // Create the triple override instances _overrideBack = new PaletteBackInheritOverride(normalTriple.PaletteBack, overrideTriple.PaletteBack); _overrideBorder = new PaletteBorderInheritOverride(normalTriple.PaletteBorder, overrideTriple.PaletteBorder); // Do not apply an override by default Apply = false; // Always override the state Override = true; OverrideState = overrideState; }