mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
Header colored (#581)
This commit is contained in:
@@ -2,7 +2,7 @@ import {ColumnRec, DocModel, IRowModel, refListRecords, refRecord, ViewSectionRe
|
||||
import {formatterForRec} from 'app/client/models/entities/ColumnRec';
|
||||
import * as modelUtil from 'app/client/models/modelUtil';
|
||||
import {removeRule, RuleOwner} from 'app/client/models/RuleOwner';
|
||||
import {Style} from 'app/client/models/Styles';
|
||||
import { HeaderStyle, Style } from 'app/client/models/Styles';
|
||||
import {ViewFieldConfig} from 'app/client/models/ViewFieldConfig';
|
||||
import * as UserType from 'app/client/widgets/UserType';
|
||||
import {DocumentSettings} from 'app/common/DocumentSettings';
|
||||
@@ -76,8 +76,15 @@ export interface ViewFieldRec extends IRowModel<"_grist_Views_section_field">, R
|
||||
fontUnderline: modelUtil.KoSaveableObservable<boolean|undefined>;
|
||||
fontItalic: modelUtil.KoSaveableObservable<boolean|undefined>;
|
||||
fontStrikethrough: modelUtil.KoSaveableObservable<boolean|undefined>;
|
||||
// Helper computed to change style of a cell without saving it.
|
||||
headerTextColor: modelUtil.KoSaveableObservable<string|undefined>;
|
||||
headerFillColor: modelUtil.KoSaveableObservable<string|undefined>;
|
||||
headerFontBold: modelUtil.KoSaveableObservable<boolean|undefined>;
|
||||
headerFontUnderline: modelUtil.KoSaveableObservable<boolean|undefined>;
|
||||
headerFontItalic: modelUtil.KoSaveableObservable<boolean|undefined>;
|
||||
headerFontStrikethrough: modelUtil.KoSaveableObservable<boolean|undefined>;
|
||||
// Helper computed to change style of a cell and headerStyle without saving it.
|
||||
style: ko.PureComputed<Style>;
|
||||
headerStyle: ko.PureComputed<HeaderStyle>;
|
||||
|
||||
config: ViewFieldConfig;
|
||||
|
||||
@@ -236,6 +243,12 @@ export function createViewFieldRec(this: ViewFieldRec, docModel: DocModel): void
|
||||
this.fontUnderline = this.widgetOptionsJson.prop('fontUnderline');
|
||||
this.fontItalic = this.widgetOptionsJson.prop('fontItalic');
|
||||
this.fontStrikethrough = this.widgetOptionsJson.prop('fontStrikethrough');
|
||||
this.headerTextColor = this.widgetOptionsJson.prop('headerTextColor');
|
||||
this.headerFillColor = this.widgetOptionsJson.prop('headerFillColor');
|
||||
this.headerFontBold = this.widgetOptionsJson.prop('headerFontBold');
|
||||
this.headerFontUnderline = this.widgetOptionsJson.prop('headerFontUnderline');
|
||||
this.headerFontItalic = this.widgetOptionsJson.prop('headerFontItalic');
|
||||
this.headerFontStrikethrough = this.widgetOptionsJson.prop('headerFontStrikethrough');
|
||||
|
||||
this.documentSettings = ko.pureComputed(() => docModel.docInfoRow.documentSettingsJson());
|
||||
this.style = ko.pureComputed({
|
||||
@@ -251,6 +264,19 @@ export function createViewFieldRec(this: ViewFieldRec, docModel: DocModel): void
|
||||
this.widgetOptionsJson.update(style);
|
||||
},
|
||||
});
|
||||
this.headerStyle = ko.pureComputed({
|
||||
read: () => ({
|
||||
headerTextColor: this.headerTextColor(),
|
||||
headerFillColor: this.headerFillColor(),
|
||||
headerFontBold: this.headerFontBold(),
|
||||
headerFontUnderline: this.headerFontUnderline(),
|
||||
headerFontItalic: this.headerFontItalic(),
|
||||
headerFontStrikethrough: this.headerFontStrikethrough(),
|
||||
}) as HeaderStyle,
|
||||
write: (headerStyle: HeaderStyle) => {
|
||||
this.widgetOptionsJson.update(headerStyle);
|
||||
},
|
||||
});
|
||||
|
||||
this.tableId = ko.pureComputed(() => this.column().table().tableId());
|
||||
this.rulesList = ko.pureComputed(() => this._fieldOrColumn().rules());
|
||||
|
||||
Reference in New Issue
Block a user