diff options
Diffstat (limited to 'src/client/views/PropertiesView.tsx')
| -rw-r--r-- | src/client/views/PropertiesView.tsx | 70 |
1 files changed, 23 insertions, 47 deletions
diff --git a/src/client/views/PropertiesView.tsx b/src/client/views/PropertiesView.tsx index bbe422e9e..6383d4947 100644 --- a/src/client/views/PropertiesView.tsx +++ b/src/client/views/PropertiesView.tsx @@ -813,6 +813,9 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps return Field.toString(this.selectedDoc?.[DocData][key] as FieldType); } + @computed get selectedStrokes() { + return this.containsInkDoc ? DocListCast(this.selectedDoc[DocData].data) : this.selectedDoc ? [this.selectedDoc] : []; + } @computed get shapeXps() { return NumCast(this.selectedDoc?.x); } // prettier-ignore set shapeXps(value) { this.selectedDoc && (this.selectedDoc.x = Math.round(value * 100) / 100); } // prettier-ignore @computed get shapeYps() { return NumCast(this.selectedDoc?.y); } // prettier-ignore @@ -822,16 +825,11 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps @computed get shapeHgt() { return NumCast(this.selectedDoc?._height); } // prettier-ignore set shapeHgt(value) { this.selectedDoc && (this.selectedDoc._height = Math.round(value * 100) / 100); } // prettier-ignore @computed get strokeThk(){ return this.containsInkDoc ? NumCast(this.inkDoc?.[DocData].stroke_width) : NumCast(this.selectedDoc?.[DocData].stroke_width); } // prettier-ignore - set strokeThk(value) { - if (this.containsInkDoc) { - const childDocs = DocListCast(this.selectedDoc[DocData].data); - childDocs.forEach(doc => { - doc[DocData].stroke_width = Math.round(value * 100) / 100; - }) - } else { - this.selectedDoc && (this.selectedDoc[DocData].stroke_width = Math.round(value * 100) / 100); - } - } // prettier-ignore + set strokeThk(value) { + this.selectedStrokes.forEach(doc => { + doc[DocData].stroke_width = Math.round(value * 100) / 100; + }); + } @computed get hgtInput() { return this.inputBoxDuo( @@ -885,14 +883,9 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps } @computed get colorStk() { return this.containsInkDoc ? StrCast(this.inkDoc?.[DocData].color) : StrCast(this.selectedDoc?.[DocData].color); } // prettier-ignore set colorStk(value) { - if (this.containsInkDoc) { - const childDocs = DocListCast(this.selectedDoc[DocData].data); - childDocs.forEach(doc => { - doc[DocData].color = value || undefined; - }); - } else { - this.selectedDoc && (this.selectedDoc[DocData].color = value || undefined); - } + this.selectedStrokes.forEach(doc => { + doc[DocData].color = value || undefined; + }); } colorButton(value: string, type: string, setter: () => void) { @@ -1019,14 +1012,9 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps @computed get dashdStk() { return this.containsInkDoc? this.inkDoc?.stroke_dash || '' : this.selectedDoc?.stroke_dash || ''; } // prettier-ignore set dashdStk(value) { value && (this._lastDash = value as string); - if (this.containsInkDoc) { - const childDocs = DocListCast(this.selectedDoc[DocData].data); - childDocs.forEach(doc => { - doc[DocData].stroke_dash = value ? this._lastDash : undefined; - }); - } else { - this.selectedDoc && (this.selectedDoc[DocData].stroke_dash = value ? this._lastDash : undefined); - } + this.selectedStrokes.forEach(doc => { + doc[DocData].stroke_dash = value ? this._lastDash : undefined; + }); } @computed get widthStk() { return this.getField('stroke_width') || '1'; } // prettier-ignore set widthStk(value) { @@ -1034,13 +1022,9 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps } @computed get markScal() { return Number(this.getField('stroke_markerScale') || '1'); } // prettier-ignore set markScal(value) { - if (this.containsInkDoc) { - const childDocs = DocListCast(this.selectedDoc[DocData].data); - childDocs.forEach(doc => { - doc[DocData].stroke_markerScale = Number(value); - }); - } - this.selectedDoc && (this.selectedDoc[DocData].stroke_markerScale = Number(value)); + this.selectedStrokes.forEach(doc => { + doc[DocData].stroke_markerScale = Number(value); + }); } @computed get smoothAmt() { return Number(this.getField('stroke_smoothAmount') || '10'); } // prettier-ignore set smoothAmt(value) { @@ -1048,23 +1032,15 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps } @computed get markHead() { return this.getField('stroke_startMarker') || ''; } // prettier-ignore set markHead(value) { - if (this.containsInkDoc) { - const childDocs = DocListCast(this.selectedDoc[DocData].data); - childDocs.forEach(doc => { - doc[DocData].stroke_startMarker = value; - }); - } - this.selectedDoc && (this.selectedDoc[DocData].stroke_startMarker = value); + this.selectedStrokes.forEach(doc => { + doc[DocData].stroke_startMarker = value; + }); } @computed get markTail() { return this.getField('stroke_endMarker') || ''; } // prettier-ignore set markTail(value) { - if (this.containsInkDoc) { - const childDocs = DocListCast(this.selectedDoc[DocData].data); - childDocs.forEach(doc => { - doc[DocData].stroke_endMarker = value; - }); - } - this.selectedDoc && (this.selectedDoc[DocData].stroke_endMarker = value); + this.selectedStrokes.forEach(doc => { + doc[DocData].stroke_endMarker = value; + }); } regInput = (key: string, value: string | number | undefined, setter: (val: string) => void) => ( |
