UNPKG

cheetah-grid

Version:

Cheetah Grid is a high performance grid engine that works on canvas

47 lines (45 loc) 1.51 kB
import type { CheckHeaderStyleOption, ColorDef } from "../../ts-types"; import { StdTextBaseStyle } from "./StdTextBaseStyle"; import { defaults } from "../../internal/utils"; let defaultStyle: CheckHeaderStyle; export class CheckHeaderStyle extends StdTextBaseStyle { private _uncheckBgColor?: ColorDef; private _checkBgColor?: ColorDef; private _borderColor?: ColorDef; static get DEFAULT(): CheckHeaderStyle { return defaultStyle ? defaultStyle : (defaultStyle = new CheckHeaderStyle()); } constructor(style: CheckHeaderStyleOption = {}) { super(defaults(style, { textAlign: "center" })); const { uncheckBgColor, checkBgColor, borderColor } = style; this._uncheckBgColor = uncheckBgColor; this._checkBgColor = checkBgColor; this._borderColor = borderColor; } get uncheckBgColor(): ColorDef | undefined { return this._uncheckBgColor; } set uncheckBgColor(uncheckBgColor: ColorDef | undefined) { this._uncheckBgColor = uncheckBgColor; this.doChangeStyle(); } get checkBgColor(): ColorDef | undefined { return this._checkBgColor; } set checkBgColor(checkBgColor: ColorDef | undefined) { this._checkBgColor = checkBgColor; this.doChangeStyle(); } get borderColor(): ColorDef | undefined { return this._borderColor; } set borderColor(borderColor: ColorDef | undefined) { this._borderColor = borderColor; this.doChangeStyle(); } clone(): CheckHeaderStyle { return new CheckHeaderStyle(this); } }