@wcardinal/wcardinal-ui 0.299.0 → 0.301.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-text-impl.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-text-impl.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Texture } from \"pixi.js\";\nimport { DDiagramSerializedText } from \"../../d-diagram-serialized\";\nimport { DeepPartial } from \"../../util/deep-partial\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport {\n\tEShapeText,\n\tEShapeTextAtlas,\n\tEShapeTextLike,\n\tEShapeTextStyle,\n\tEShapeTextWeight\n} from \"../e-shape-text\";\nimport { EShapeTextAlign } from \"../e-shape-text-align\";\nimport { EShapeTextAlignHorizontal } from \"../e-shape-text-align-horizontal\";\nimport { EShapeTextAlignVertical } from \"../e-shape-text-align-vertical\";\nimport { EShapeTextDirection } from \"../e-shape-text-direction\";\nimport { EShapeTextOffset } from \"../e-shape-text-offset\";\nimport { EShapeTextOutline } from \"../e-shape-text-outline\";\nimport { EShapeTextAlignImpl } from \"./e-shape-text-align-impl\";\nimport { EShapeTextImplParent } from \"./e-shape-text-impl-parent\";\nimport { EShapeTextOffsetImpl } from \"./e-shape-text-offset-impl\";\nimport { EShapeTextOutlineImpl } from \"./e-shape-text-outline-impl\";\n\nexport class EShapeTextImpl implements EShapeText {\n\tprotected _parent: EShapeTextImplParent;\n\tprotected _enable: boolean;\n\tprotected _value: string;\n\tprotected _family: string;\n\tprotected _color: number;\n\tprotected _alpha: number;\n\tprotected _size: number;\n\tprotected _weight: EShapeTextWeight;\n\treadonly align: EShapeTextAlign;\n\treadonly offset: EShapeTextOffset;\n\tprotected _style: EShapeTextStyle;\n\treadonly outline: EShapeTextOutline;\n\treadonly spacing: EShapeTextOffset;\n\tprotected _direction: EShapeTextDirection;\n\treadonly padding: EShapeTextOffset;\n\tprotected _clipping: boolean;\n\n\ttexture?: Texture; // Used for rendering and updated when rendered\n\tatlas?: EShapeTextAtlas; // Used for rendering and updated when rendered\n\tworld?: number[]; // Updated when rendered\n\n\tconstructor(\n\t\tparent: EShapeTextImplParent,\n\t\tvalue: string,\n\t\tcolor: number,\n\t\talpha: number,\n\t\tfamily: string,\n\t\tsize: number\n\t) {\n\t\tthis._parent = parent;\n\t\tthis._enable = true;\n\t\tthis._value = value;\n\t\tthis._color = color;\n\t\tthis._alpha = alpha;\n\t\tthis._family = family;\n\t\tthis._size = size;\n\t\tthis._weight = EShapeTextWeight.NORMAL;\n\t\tthis.align = new EShapeTextAlignImpl(\n\t\t\tparent,\n\t\t\tEShapeTextAlignHorizontal.CENTER,\n\t\t\tEShapeTextAlignVertical.MIDDLE\n\t\t);\n\t\tthis.offset = new EShapeTextOffsetImpl(parent, 0, 0);\n\t\tthis._style = EShapeTextStyle.NORMAL;\n\t\tthis.spacing = new EShapeTextOffsetImpl(parent, 0, 0);\n\t\tthis.outline = new EShapeTextOutlineImpl(parent, false, 0xffffff, 1.0, 0.5);\n\t\tthis._direction = EShapeTextDirection.LEFT_TO_RIGHT;\n\t\tthis.padding = new EShapeTextOffsetImpl(parent, 10, 10);\n\t\tthis._clipping = false;\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._enable;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._enable !== enable) {\n\t\t\tthis._enable = enable;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget value(): string {\n\t\treturn this._value;\n\t}\n\n\tset value(value: string) {\n\t\tif (this._value !== value) {\n\t\t\tthis._value = value;\n\n\t\t\t// Compatibility check\n\t\t\tconst parent = this._parent;\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded == null || !uploaded.isCompatible(parent)) {\n\t\t\t\tthis.atlas = undefined;\n\t\t\t\tparent.toDirty();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Character code check\n\t\t\tconst atlas = this.atlas;\n\t\t\tconst characters = atlas && atlas.characters;\n\t\t\tif (characters != null) {\n\t\t\t\tfor (let i = 0, imax = value.length; i < imax; ++i) {\n\t\t\t\t\tconst char = value[i];\n\t\t\t\t\tif (!(char in characters)) {\n\t\t\t\t\t\tthis.atlas = undefined;\n\t\t\t\t\t\tparent.toDirty();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.atlas = undefined;\n\t\t\t\tparent.toDirty();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Update uploaded\n\t\t\tparent.updateUploaded();\n\t\t}\n\t}\n\n\tget family(): string {\n\t\treturn this._family;\n\t}\n\n\tset family(family: string) {\n\t\tif (this._family !== family) {\n\t\t\tthis._family = family;\n\t\t\tthis._parent.toDirty();\n\t\t}\n\t}\n\n\tget color(): number {\n\t\treturn this._color;\n\t}\n\n\tset color(color: number) {\n\t\tif (this._color !== color) {\n\t\t\tthis._color = color;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget alpha(): number {\n\t\treturn this._alpha;\n\t}\n\n\tset alpha(alpha: number) {\n\t\tif (this._alpha !== alpha) {\n\t\t\tthis._alpha = alpha;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget size(): number {\n\t\treturn this._size;\n\t}\n\n\tset size(size: number) {\n\t\tif (this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget weight(): EShapeTextWeight {\n\t\treturn this._weight;\n\t}\n\n\tset weight(weight: EShapeTextWeight) {\n\t\tif (this._weight !== weight) {\n\t\t\tthis._weight = weight;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget style(): EShapeTextStyle {\n\t\treturn this._style;\n\t}\n\n\tset style(style: EShapeTextStyle) {\n\t\tif (this._style !== style) {\n\t\t\tthis._style = style;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget direction(): EShapeTextDirection {\n\t\treturn this._direction;\n\t}\n\n\tset direction(direction: EShapeTextDirection) {\n\t\tif (this._direction !== direction) {\n\t\t\tthis._direction = direction;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget clipping(): boolean {\n\t\treturn this._clipping;\n\t}\n\n\tset clipping(clipping: boolean) {\n\t\tif (this._clipping !== clipping) {\n\t\t\tthis._clipping = clipping;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tcopy(target?: DeepPartial<EShapeTextLike>): this {\n\t\tif (target) {\n\t\t\tthis.set(\n\t\t\t\ttarget.value,\n\t\t\t\ttarget.color,\n\t\t\t\ttarget.alpha,\n\t\t\t\ttarget.family,\n\t\t\t\ttarget.size,\n\t\t\t\ttarget.weight,\n\t\t\t\ttarget.style,\n\t\t\t\ttarget.direction,\n\t\t\t\ttarget.clipping\n\t\t\t);\n\t\t\tthis.align.copy(target.align);\n\t\t\tthis.offset.copy(target.offset);\n\t\t\tthis.outline.copy(target.outline);\n\t\t\tthis.spacing.copy(target.spacing);\n\t\t\tthis.padding.copy(target.padding);\n\t\t}\n\t\treturn this;\n\t}\n\n\tset(\n\t\tvalue?: string,\n\t\tcolor?: number,\n\t\talpha?: number,\n\t\tfamily?: string,\n\t\tsize?: number,\n\t\tweight?: EShapeTextWeight,\n\t\tstyle?: EShapeTextStyle,\n\t\tdirection?: EShapeTextDirection,\n\t\tclipping?: boolean\n\t): this {\n\t\tlet isChangedDirty = false;\n\t\tlet isChangedUploaded = false;\n\n\t\tif (value != null && this._value !== value) {\n\t\t\tthis._value = value;\n\t\t\tisChangedDirty = true;\n\t\t}\n\n\t\tif (color != null && this._color !== color) {\n\t\t\tthis._color = color;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (alpha != null && this._alpha !== alpha) {\n\t\t\tthis._alpha = alpha;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (family != null && this._family !== family) {\n\t\t\tthis._family = family;\n\t\t\tisChangedDirty = true;\n\t\t}\n\n\t\tif (size != null && this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (weight != null && this._weight !== weight) {\n\t\t\tthis._weight = weight;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (style != null && this._style !== style) {\n\t\t\tthis._style = style;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (direction != null && this._direction !== direction) {\n\t\t\tthis._direction = direction;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (clipping != null && this._clipping !== clipping) {\n\t\t\tthis._clipping = clipping;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (isChangedDirty) {\n\t\t\tthis._parent.toDirty();\n\t\t} else if (isChangedUploaded) {\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttoObject(): EShapeTextLike {\n\t\treturn {\n\t\t\tvalue: this._value,\n\t\t\tcolor: this._color,\n\t\t\talpha: this._alpha,\n\t\t\tfamily: this._family,\n\t\t\tsize: this._size,\n\t\t\tweight: this._weight,\n\t\t\talign: this.align.toObject(),\n\t\t\toffset: this.offset.toObject(),\n\t\t\tstyle: this._style,\n\t\t\toutline: this.outline.toObject(),\n\t\t\tdirection: this._direction,\n\t\t\tspacing: this.spacing.toObject(),\n\t\t\tpadding: this.padding.toObject(),\n\t\t\tclipping: this._clipping\n\t\t};\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\tconst valueId = manager.addResource(this._value);\n\t\tconst familyId = manager.addResource(this._family);\n\t\tconst alignId = this.align.serialize(manager);\n\t\tconst offsetId = this.offset.serialize(manager);\n\t\tconst outlineId = this.outline.serialize(manager);\n\t\tconst spacingId = this.spacing.serialize(manager);\n\t\tconst paddingId = this.padding.serialize(manager);\n\t\tconst serialized =\n\t\t\t`[${valueId},${this._color},${this._alpha},${familyId},${this._size},` +\n\t\t\t`${this._weight},${alignId},${offsetId},${this._style},${outlineId},` +\n\t\t\t`${spacingId},${this._direction},${paddingId},${this._clipping ? 1 : 0}]`;\n\t\treturn manager.addResource(serialized);\n\t}\n\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): void {\n\t\tconst resources = manager.resources;\n\t\tif (0 <= target && target < resources.length) {\n\t\t\tlet parsed = manager.getText(target);\n\t\t\tif (parsed == null) {\n\t\t\t\tparsed = JSON.parse(resources[target]) as DDiagramSerializedText;\n\t\t\t\tmanager.setText(target, parsed);\n\t\t\t}\n\t\t\tthis.set(\n\t\t\t\tresources[parsed[0]] || \"\",\n\t\t\t\tparsed[1],\n\t\t\t\tparsed[2],\n\t\t\t\tresources[parsed[3]] || \"auto\",\n\t\t\t\tparsed[4],\n\t\t\t\tparsed[5],\n\t\t\t\tparsed[8],\n\t\t\t\tparsed[11],\n\t\t\t\t!!parsed[13]\n\t\t\t);\n\t\t\tthis.align.deserialize(parsed[6], manager);\n\t\t\tthis.offset.deserialize(parsed[7], manager);\n\t\t\tthis.outline.deserialize(parsed[9], manager);\n\t\t\tthis.spacing.deserialize(parsed[10], manager);\n\t\t\tthis.padding.deserialize(parsed[12], manager);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-text-impl.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-text-impl.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Texture } from \"pixi.js\";\nimport { DDiagramSerializedText } from \"../../d-diagram-serialized\";\nimport { DeepPartial } from \"../../util/deep-partial\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport {\n\tEShapeText,\n\tEShapeTextAtlas,\n\tEShapeTextLike,\n\tEShapeTextStyle,\n\tEShapeTextWeight\n} from \"../e-shape-text\";\nimport { EShapeTextAlign } from \"../e-shape-text-align\";\nimport { EShapeTextAlignHorizontal } from \"../e-shape-text-align-horizontal\";\nimport { EShapeTextAlignVertical } from \"../e-shape-text-align-vertical\";\nimport { EShapeTextDirection } from \"../e-shape-text-direction\";\nimport { EShapeTextOffset } from \"../e-shape-text-offset\";\nimport { EShapeTextOutline } from \"../e-shape-text-outline\";\nimport { EShapeTextAlignImpl } from \"./e-shape-text-align-impl\";\nimport { EShapeTextImplParent } from \"./e-shape-text-impl-parent\";\nimport { EShapeTextOffsetImpl } from \"./e-shape-text-offset-impl\";\nimport { EShapeTextOutlineImpl } from \"./e-shape-text-outline-impl\";\n\nexport class EShapeTextImpl implements EShapeText {\n\tprotected _parent: EShapeTextImplParent;\n\tprotected _enable: boolean;\n\tprotected _value: string;\n\tprotected _family: string;\n\tprotected _color: number;\n\tprotected _alpha: number;\n\tprotected _size: number;\n\tprotected _weight: EShapeTextWeight;\n\treadonly align: EShapeTextAlign;\n\treadonly offset: EShapeTextOffset;\n\tprotected _style: EShapeTextStyle;\n\treadonly outline: EShapeTextOutline;\n\treadonly spacing: EShapeTextOffset;\n\tprotected _direction: EShapeTextDirection;\n\treadonly padding: EShapeTextOffset;\n\tprotected _clipping: boolean;\n\tprotected _fitting: boolean;\n\n\ttexture?: Texture; // Used for rendering and updated when rendered\n\tatlas?: EShapeTextAtlas; // Used for rendering and updated when rendered\n\tworld?: number[]; // Updated when rendered\n\n\tconstructor(\n\t\tparent: EShapeTextImplParent,\n\t\tvalue: string,\n\t\tcolor: number,\n\t\talpha: number,\n\t\tfamily: string,\n\t\tsize: number\n\t) {\n\t\tthis._parent = parent;\n\t\tthis._enable = true;\n\t\tthis._value = value;\n\t\tthis._color = color;\n\t\tthis._alpha = alpha;\n\t\tthis._family = family;\n\t\tthis._size = size;\n\t\tthis._weight = EShapeTextWeight.NORMAL;\n\t\tthis.align = new EShapeTextAlignImpl(\n\t\t\tparent,\n\t\t\tEShapeTextAlignHorizontal.CENTER,\n\t\t\tEShapeTextAlignVertical.MIDDLE\n\t\t);\n\t\tthis.offset = new EShapeTextOffsetImpl(parent, 0, 0);\n\t\tthis._style = EShapeTextStyle.NORMAL;\n\t\tthis.spacing = new EShapeTextOffsetImpl(parent, 0, 0);\n\t\tthis.outline = new EShapeTextOutlineImpl(parent, false, 0xffffff, 1.0, 0.5);\n\t\tthis._direction = EShapeTextDirection.LEFT_TO_RIGHT;\n\t\tthis.padding = new EShapeTextOffsetImpl(parent, 10, 10);\n\t\tthis._clipping = false;\n\t\tthis._fitting = false;\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._enable;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._enable !== enable) {\n\t\t\tthis._enable = enable;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget value(): string {\n\t\treturn this._value;\n\t}\n\n\tset value(value: string) {\n\t\tif (this._value !== value) {\n\t\t\tthis._value = value;\n\n\t\t\t// Compatibility check\n\t\t\tconst parent = this._parent;\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded == null || !uploaded.isCompatible(parent)) {\n\t\t\t\tthis.atlas = undefined;\n\t\t\t\tparent.toDirty();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Character code check\n\t\t\tconst atlas = this.atlas;\n\t\t\tconst characters = atlas && atlas.characters;\n\t\t\tif (characters != null) {\n\t\t\t\tfor (let i = 0, imax = value.length; i < imax; ++i) {\n\t\t\t\t\tconst char = value[i];\n\t\t\t\t\tif (!(char in characters)) {\n\t\t\t\t\t\tthis.atlas = undefined;\n\t\t\t\t\t\tparent.toDirty();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.atlas = undefined;\n\t\t\t\tparent.toDirty();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Update uploaded\n\t\t\tparent.updateUploaded();\n\t\t}\n\t}\n\n\tget family(): string {\n\t\treturn this._family;\n\t}\n\n\tset family(family: string) {\n\t\tif (this._family !== family) {\n\t\t\tthis._family = family;\n\t\t\tthis._parent.toDirty();\n\t\t}\n\t}\n\n\tget color(): number {\n\t\treturn this._color;\n\t}\n\n\tset color(color: number) {\n\t\tif (this._color !== color) {\n\t\t\tthis._color = color;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget alpha(): number {\n\t\treturn this._alpha;\n\t}\n\n\tset alpha(alpha: number) {\n\t\tif (this._alpha !== alpha) {\n\t\t\tthis._alpha = alpha;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget size(): number {\n\t\treturn this._size;\n\t}\n\n\tset size(size: number) {\n\t\tif (this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget weight(): EShapeTextWeight {\n\t\treturn this._weight;\n\t}\n\n\tset weight(weight: EShapeTextWeight) {\n\t\tif (this._weight !== weight) {\n\t\t\tthis._weight = weight;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget style(): EShapeTextStyle {\n\t\treturn this._style;\n\t}\n\n\tset style(style: EShapeTextStyle) {\n\t\tif (this._style !== style) {\n\t\t\tthis._style = style;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget direction(): EShapeTextDirection {\n\t\treturn this._direction;\n\t}\n\n\tset direction(direction: EShapeTextDirection) {\n\t\tif (this._direction !== direction) {\n\t\t\tthis._direction = direction;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget clipping(): boolean {\n\t\treturn this._clipping;\n\t}\n\n\tset clipping(clipping: boolean) {\n\t\tif (this._clipping !== clipping) {\n\t\t\tthis._clipping = clipping;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tget fitting(): boolean {\n\t\treturn this._fitting;\n\t}\n\n\tset fitting(fitting: boolean) {\n\t\tif (this._fitting !== fitting) {\n\t\t\tthis._fitting = fitting;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tcopy(target?: DeepPartial<EShapeTextLike>): this {\n\t\tif (target) {\n\t\t\tthis.set(\n\t\t\t\ttarget.value,\n\t\t\t\ttarget.color,\n\t\t\t\ttarget.alpha,\n\t\t\t\ttarget.family,\n\t\t\t\ttarget.size,\n\t\t\t\ttarget.weight,\n\t\t\t\ttarget.style,\n\t\t\t\ttarget.direction,\n\t\t\t\ttarget.clipping,\n\t\t\t\ttarget.fitting\n\t\t\t);\n\t\t\tthis.align.copy(target.align);\n\t\t\tthis.offset.copy(target.offset);\n\t\t\tthis.outline.copy(target.outline);\n\t\t\tthis.spacing.copy(target.spacing);\n\t\t\tthis.padding.copy(target.padding);\n\t\t}\n\t\treturn this;\n\t}\n\n\tset(\n\t\tvalue?: string,\n\t\tcolor?: number,\n\t\talpha?: number,\n\t\tfamily?: string,\n\t\tsize?: number,\n\t\tweight?: EShapeTextWeight,\n\t\tstyle?: EShapeTextStyle,\n\t\tdirection?: EShapeTextDirection,\n\t\tclipping?: boolean,\n\t\tfitting?: boolean\n\t): this {\n\t\tlet isChangedDirty = false;\n\t\tlet isChangedUploaded = false;\n\n\t\tif (value != null && this._value !== value) {\n\t\t\tthis._value = value;\n\t\t\tisChangedDirty = true;\n\t\t}\n\n\t\tif (color != null && this._color !== color) {\n\t\t\tthis._color = color;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (alpha != null && this._alpha !== alpha) {\n\t\t\tthis._alpha = alpha;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (family != null && this._family !== family) {\n\t\t\tthis._family = family;\n\t\t\tisChangedDirty = true;\n\t\t}\n\n\t\tif (size != null && this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (weight != null && this._weight !== weight) {\n\t\t\tthis._weight = weight;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (style != null && this._style !== style) {\n\t\t\tthis._style = style;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (direction != null && this._direction !== direction) {\n\t\t\tthis._direction = direction;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (clipping != null && this._clipping !== clipping) {\n\t\t\tthis._clipping = clipping;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (fitting != null && this._fitting !== fitting) {\n\t\t\tthis._fitting = fitting;\n\t\t\tisChangedUploaded = true;\n\t\t}\n\n\t\tif (isChangedDirty) {\n\t\t\tthis._parent.toDirty();\n\t\t} else if (isChangedUploaded) {\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttoObject(): EShapeTextLike {\n\t\treturn {\n\t\t\tvalue: this._value,\n\t\t\tcolor: this._color,\n\t\t\talpha: this._alpha,\n\t\t\tfamily: this._family,\n\t\t\tsize: this._size,\n\t\t\tweight: this._weight,\n\t\t\talign: this.align.toObject(),\n\t\t\toffset: this.offset.toObject(),\n\t\t\tstyle: this._style,\n\t\t\toutline: this.outline.toObject(),\n\t\t\tdirection: this._direction,\n\t\t\tspacing: this.spacing.toObject(),\n\t\t\tpadding: this.padding.toObject(),\n\t\t\tclipping: this._clipping,\n\t\t\tfitting: this._fitting\n\t\t};\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\tconst valueId = manager.addResource(this._value);\n\t\tconst familyId = manager.addResource(this._family);\n\t\tconst alignId = this.align.serialize(manager);\n\t\tconst offsetId = this.offset.serialize(manager);\n\t\tconst outlineId = this.outline.serialize(manager);\n\t\tconst spacingId = this.spacing.serialize(manager);\n\t\tconst paddingId = this.padding.serialize(manager);\n\t\tconst clipping = this._clipping ? 1 : 0;\n\t\tconst fitting = this._fitting ? 1 : 0;\n\t\tconst serialized =\n\t\t\t`[${valueId},${this._color},${this._alpha},${familyId},${this._size},` +\n\t\t\t`${this._weight},${alignId},${offsetId},${this._style},${outlineId},` +\n\t\t\t`${spacingId},${this._direction},${paddingId},${clipping},${fitting}]`;\n\t\treturn manager.addResource(serialized);\n\t}\n\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): void {\n\t\tconst resources = manager.resources;\n\t\tif (0 <= target && target < resources.length) {\n\t\t\tlet parsed = manager.getText(target);\n\t\t\tif (parsed == null) {\n\t\t\t\tparsed = JSON.parse(resources[target]) as DDiagramSerializedText;\n\t\t\t\tmanager.setText(target, parsed);\n\t\t\t}\n\t\t\tthis.set(\n\t\t\t\tresources[parsed[0]] || \"\",\n\t\t\t\tparsed[1],\n\t\t\t\tparsed[2],\n\t\t\t\tresources[parsed[3]] || \"auto\",\n\t\t\t\tparsed[4],\n\t\t\t\tparsed[5],\n\t\t\t\tparsed[8],\n\t\t\t\tparsed[11],\n\t\t\t\t!!parsed[13],\n\t\t\t\t!!parsed[14]\n\t\t\t);\n\t\t\tthis.align.deserialize(parsed[6], manager);\n\t\t\tthis.offset.deserialize(parsed[7], manager);\n\t\t\tthis.outline.deserialize(parsed[9], manager);\n\t\t\tthis.spacing.deserialize(parsed[10], manager);\n\t\t\tthis.padding.deserialize(parsed[12], manager);\n\t\t}\n\t}\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.299.0
2
+ Winter Cardinal UI v0.301.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.299.0
2
+ Winter Cardinal UI v0.301.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.299.0
2
+ Winter Cardinal UI v0.301.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.299.0
2
+ Winter Cardinal UI v0.301.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.299.0
2
+ Winter Cardinal UI v0.301.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -832,7 +832,7 @@ var invertAlignVertical = function (align) {
832
832
  return EShapeTextAlignVertical.OUTSIDE_TOP;
833
833
  }
834
834
  };
835
- var buildTextVertex = function (vertices, uvs, voffset, vcount, originX, originY, sizeX, sizeY, textAtlas, textSize, textValue, textStyle, textAlignHorizontal, textAlignVertical, textOffsetHorizontal, textOffsetVertical, textSpacingHorizontal, textSpacingVertical, textDirection, textPaddingHorizontal, textPaddingVertical, textClipping, textWorld, textureUvs, internalTransform) {
835
+ var buildTextVertex = function (vertices, uvs, voffset, vcount, originX, originY, sizeX, sizeY, textAtlas, textSize, textValue, textStyle, textAlignHorizontal, textAlignVertical, textOffsetHorizontal, textOffsetVertical, textSpacingHorizontal, textSpacingVertical, textDirection, textPaddingHorizontal, textPaddingVertical, textClipping, textFitting, textWorld, textureUvs, internalTransform) {
836
836
  // Calculate the transformed positions
837
837
  //
838
838
  // 0 1
@@ -922,6 +922,7 @@ var buildTextVertex = function (vertices, uvs, voffset, vcount, originX, originY
922
922
  var textSizeY = textSize * vnl;
923
923
  var lineHeight = Math.max(0, textSize + textSpacingVertical) * vnl;
924
924
  var lineWidth = 0;
925
+ var lineCount = 1;
925
926
  var textAtlasCharacters = textAtlas.characters;
926
927
  var iterator = UtilCharacterIterator.from(textValue);
927
928
  var advancePrevious = 0;
@@ -946,16 +947,41 @@ var buildTextVertex = function (vertices, uvs, voffset, vcount, originX, originY
946
947
  width = Math.max(width, lineWidth);
947
948
  lineWidth = 0;
948
949
  height += lineHeight;
950
+ lineCount += 1;
949
951
  }
950
952
  }
953
+ lineWidth += advancePrevious;
954
+ width = Math.max(width, lineWidth);
955
+ height += textSizeY;
956
+ lineWidth = 0;
957
+ if (textFitting && isIn(textAlignHorizontal, textAlignVertical)) {
958
+ var w0 = 0;
959
+ var h0 = 0;
960
+ switch (textDirection) {
961
+ case EShapeTextDirection.LEFT_TO_RIGHT:
962
+ case EShapeTextDirection.RIGHT_TO_LEFT:
963
+ w0 = Math.max(0, hl - textPaddingHorizontal * 2);
964
+ h0 = Math.max(0, vl - textPaddingVertical * 2);
965
+ break;
966
+ case EShapeTextDirection.TOP_TO_BOTTOM:
967
+ case EShapeTextDirection.BOTTOM_TO_TOP:
968
+ w0 = Math.max(0, vl - textPaddingVertical * 2);
969
+ h0 = Math.max(0, hl - textPaddingHorizontal * 2);
970
+ break;
971
+ }
972
+ var w1 = width * hnl * (textSize / textAtlas.font.size);
973
+ var h1 = height;
974
+ var s = Math.min(1, Math.min(w0 / w1, h0 / h1));
975
+ textSize *= s;
976
+ textSizeY *= s;
977
+ lineHeight *= s;
978
+ height *= s;
979
+ }
951
980
  var scaleZ = textSize / textAtlas.font.size;
952
981
  var scaleX = hnl * scaleZ;
953
982
  var scaleY = vnl * scaleZ;
954
- lineWidth += advancePrevious;
955
- width = Math.max(width, lineWidth) * scaleX;
956
- lineWidth = 0;
983
+ width *= scaleX;
957
984
  heightChar *= scaleY;
958
- height += textSizeY;
959
985
  //
960
986
  var tx0 = 0;
961
987
  var ty0 = 0;
@@ -965,80 +991,32 @@ var buildTextVertex = function (vertices, uvs, voffset, vcount, originX, originY
965
991
  getTextBBox(textAlignHorizontal, textAlignVertical, textOffsetHorizontal, textOffsetVertical, textPaddingHorizontal, textPaddingVertical, width, height, x0, y0, x1, y1, x2, y2, x3, y3, hnx, hny, vnx, vny, work);
966
992
  tx0 = work.x;
967
993
  ty0 = work.y;
968
- if (textClipping) {
969
- switch (textAlignHorizontal) {
970
- case EShapeTextAlignHorizontal.LEFT:
971
- case EShapeTextAlignHorizontal.CENTER:
972
- case EShapeTextAlignHorizontal.RIGHT:
973
- switch (textAlignVertical) {
974
- case EShapeTextAlignVertical.TOP:
975
- case EShapeTextAlignVertical.MIDDLE:
976
- case EShapeTextAlignVertical.BOTTOM:
977
- lineWidthMaximum = hl - textPaddingHorizontal * 2;
978
- break;
979
- }
980
- break;
981
- }
994
+ if (textClipping && isIn(textAlignHorizontal, textAlignVertical)) {
995
+ lineWidthMaximum = hl - textPaddingHorizontal * 2;
982
996
  }
983
997
  break;
984
998
  case EShapeTextDirection.TOP_TO_BOTTOM:
985
999
  getTextBBox(rotateAlignVerticalRight(textAlignVertical), rotateAlignHorizontalRight(textAlignHorizontal), textOffsetVertical, textOffsetHorizontal, textPaddingVertical, textPaddingHorizontal, width, height, x1, y1, x2, y2, x3, y3, x0, y0, hnx, hny, vnx, vny, work);
986
1000
  tx0 = work.x;
987
1001
  ty0 = work.y;
988
- if (textClipping) {
989
- switch (textAlignVertical) {
990
- case EShapeTextAlignVertical.TOP:
991
- case EShapeTextAlignVertical.MIDDLE:
992
- case EShapeTextAlignVertical.BOTTOM:
993
- switch (textAlignHorizontal) {
994
- case EShapeTextAlignHorizontal.LEFT:
995
- case EShapeTextAlignHorizontal.CENTER:
996
- case EShapeTextAlignHorizontal.RIGHT:
997
- lineWidthMaximum = vl - textPaddingVertical * 2;
998
- break;
999
- }
1000
- break;
1001
- }
1002
+ if (textClipping && isIn(textAlignHorizontal, textAlignVertical)) {
1003
+ lineWidthMaximum = vl - textPaddingVertical * 2;
1002
1004
  }
1003
1005
  break;
1004
1006
  case EShapeTextDirection.BOTTOM_TO_TOP:
1005
1007
  getTextBBox(rotateAlignVerticalLeft(textAlignVertical), rotateAlignHorizontalLeft(textAlignHorizontal), textOffsetVertical, textOffsetHorizontal, textPaddingVertical, textPaddingHorizontal, width, height, x3, y3, x0, y0, x1, y1, x2, y2, hnx, hny, vnx, vny, work);
1006
1008
  tx0 = work.x;
1007
1009
  ty0 = work.y;
1008
- if (textClipping) {
1009
- switch (textAlignVertical) {
1010
- case EShapeTextAlignVertical.TOP:
1011
- case EShapeTextAlignVertical.MIDDLE:
1012
- case EShapeTextAlignVertical.BOTTOM:
1013
- switch (textAlignHorizontal) {
1014
- case EShapeTextAlignHorizontal.LEFT:
1015
- case EShapeTextAlignHorizontal.CENTER:
1016
- case EShapeTextAlignHorizontal.RIGHT:
1017
- lineWidthMaximum = vl - textPaddingVertical * 2;
1018
- break;
1019
- }
1020
- break;
1021
- }
1010
+ if (textClipping && isIn(textAlignHorizontal, textAlignVertical)) {
1011
+ lineWidthMaximum = vl - textPaddingVertical * 2;
1022
1012
  }
1023
1013
  break;
1024
1014
  case EShapeTextDirection.RIGHT_TO_LEFT:
1025
1015
  getTextBBox(invertAlignHorizontal(textAlignHorizontal), invertAlignVertical(textAlignVertical), textOffsetHorizontal, textOffsetVertical, textPaddingHorizontal, textPaddingVertical, width, height, x2, y2, x3, y3, x0, y0, x1, y1, hnx, hny, vnx, vny, work);
1026
1016
  tx0 = work.x;
1027
1017
  ty0 = work.y;
1028
- if (textClipping) {
1029
- switch (textAlignHorizontal) {
1030
- case EShapeTextAlignHorizontal.LEFT:
1031
- case EShapeTextAlignHorizontal.CENTER:
1032
- case EShapeTextAlignHorizontal.RIGHT:
1033
- switch (textAlignVertical) {
1034
- case EShapeTextAlignVertical.TOP:
1035
- case EShapeTextAlignVertical.MIDDLE:
1036
- case EShapeTextAlignVertical.BOTTOM:
1037
- lineWidthMaximum = hl - textPaddingHorizontal * 2;
1038
- break;
1039
- }
1040
- break;
1041
- }
1018
+ if (textClipping && isIn(textAlignHorizontal, textAlignVertical)) {
1019
+ lineWidthMaximum = hl - textPaddingHorizontal * 2;
1042
1020
  }
1043
1021
  break;
1044
1022
  }
@@ -1099,7 +1077,7 @@ var buildTextVertex = function (vertices, uvs, voffset, vcount, originX, originY
1099
1077
  lineWidth = 0;
1100
1078
  advancePrevious = 0;
1101
1079
  iterator.position = 0;
1102
- var lineCount = 0;
1080
+ lineCount = 0;
1103
1081
  var iv = voffset * 2;
1104
1082
  for (; iterator.hasNext(); iv += 8) {
1105
1083
  var character = iterator.next();
@@ -1187,6 +1165,21 @@ var buildTextVertex = function (vertices, uvs, voffset, vcount, originX, originY
1187
1165
  uvs[iv + 1] = uvy0;
1188
1166
  }
1189
1167
  };
1168
+ var isIn = function (textAlignHorizontal, textAlignVertical) {
1169
+ switch (textAlignHorizontal) {
1170
+ case EShapeTextAlignHorizontal.LEFT:
1171
+ case EShapeTextAlignHorizontal.CENTER:
1172
+ case EShapeTextAlignHorizontal.RIGHT:
1173
+ switch (textAlignVertical) {
1174
+ case EShapeTextAlignVertical.TOP:
1175
+ case EShapeTextAlignVertical.MIDDLE:
1176
+ case EShapeTextAlignVertical.BOTTOM:
1177
+ return true;
1178
+ }
1179
+ break;
1180
+ }
1181
+ return false;
1182
+ };
1190
1183
  var writeCharacterEmpty = function (vertices, uvs, iv, cx0, cy0, cx3, cy3, uvx0, uvy0, uvx3, uvy3) {
1191
1184
  vertices[iv + 0] = cx0;
1192
1185
  vertices[iv + 1] = cy0;
@@ -7251,6 +7244,7 @@ var EShapeTextImpl = /** @class */ (function () {
7251
7244
  this._direction = EShapeTextDirection.LEFT_TO_RIGHT;
7252
7245
  this.padding = new EShapeTextOffsetImpl(parent, 10, 10);
7253
7246
  this._clipping = false;
7247
+ this._fitting = false;
7254
7248
  }
7255
7249
  Object.defineProperty(EShapeTextImpl.prototype, "enable", {
7256
7250
  get: function () {
@@ -7409,9 +7403,22 @@ var EShapeTextImpl = /** @class */ (function () {
7409
7403
  enumerable: false,
7410
7404
  configurable: true
7411
7405
  });
7406
+ Object.defineProperty(EShapeTextImpl.prototype, "fitting", {
7407
+ get: function () {
7408
+ return this._fitting;
7409
+ },
7410
+ set: function (fitting) {
7411
+ if (this._fitting !== fitting) {
7412
+ this._fitting = fitting;
7413
+ this._parent.updateUploaded();
7414
+ }
7415
+ },
7416
+ enumerable: false,
7417
+ configurable: true
7418
+ });
7412
7419
  EShapeTextImpl.prototype.copy = function (target) {
7413
7420
  if (target) {
7414
- this.set(target.value, target.color, target.alpha, target.family, target.size, target.weight, target.style, target.direction, target.clipping);
7421
+ this.set(target.value, target.color, target.alpha, target.family, target.size, target.weight, target.style, target.direction, target.clipping, target.fitting);
7415
7422
  this.align.copy(target.align);
7416
7423
  this.offset.copy(target.offset);
7417
7424
  this.outline.copy(target.outline);
@@ -7420,7 +7427,7 @@ var EShapeTextImpl = /** @class */ (function () {
7420
7427
  }
7421
7428
  return this;
7422
7429
  };
7423
- EShapeTextImpl.prototype.set = function (value, color, alpha, family, size, weight, style, direction, clipping) {
7430
+ EShapeTextImpl.prototype.set = function (value, color, alpha, family, size, weight, style, direction, clipping, fitting) {
7424
7431
  var isChangedDirty = false;
7425
7432
  var isChangedUploaded = false;
7426
7433
  if (value != null && this._value !== value) {
@@ -7459,6 +7466,10 @@ var EShapeTextImpl = /** @class */ (function () {
7459
7466
  this._clipping = clipping;
7460
7467
  isChangedUploaded = true;
7461
7468
  }
7469
+ if (fitting != null && this._fitting !== fitting) {
7470
+ this._fitting = fitting;
7471
+ isChangedUploaded = true;
7472
+ }
7462
7473
  if (isChangedDirty) {
7463
7474
  this._parent.toDirty();
7464
7475
  }
@@ -7482,7 +7493,8 @@ var EShapeTextImpl = /** @class */ (function () {
7482
7493
  direction: this._direction,
7483
7494
  spacing: this.spacing.toObject(),
7484
7495
  padding: this.padding.toObject(),
7485
- clipping: this._clipping
7496
+ clipping: this._clipping,
7497
+ fitting: this._fitting
7486
7498
  };
7487
7499
  };
7488
7500
  EShapeTextImpl.prototype.serialize = function (manager) {
@@ -7493,9 +7505,11 @@ var EShapeTextImpl = /** @class */ (function () {
7493
7505
  var outlineId = this.outline.serialize(manager);
7494
7506
  var spacingId = this.spacing.serialize(manager);
7495
7507
  var paddingId = this.padding.serialize(manager);
7508
+ var clipping = this._clipping ? 1 : 0;
7509
+ var fitting = this._fitting ? 1 : 0;
7496
7510
  var serialized = "[".concat(valueId, ",").concat(this._color, ",").concat(this._alpha, ",").concat(familyId, ",").concat(this._size, ",") +
7497
7511
  "".concat(this._weight, ",").concat(alignId, ",").concat(offsetId, ",").concat(this._style, ",").concat(outlineId, ",") +
7498
- "".concat(spacingId, ",").concat(this._direction, ",").concat(paddingId, ",").concat(this._clipping ? 1 : 0, "]");
7512
+ "".concat(spacingId, ",").concat(this._direction, ",").concat(paddingId, ",").concat(clipping, ",").concat(fitting, "]");
7499
7513
  return manager.addResource(serialized);
7500
7514
  };
7501
7515
  EShapeTextImpl.prototype.deserialize = function (target, manager) {
@@ -7506,7 +7520,7 @@ var EShapeTextImpl = /** @class */ (function () {
7506
7520
  parsed = JSON.parse(resources[target]);
7507
7521
  manager.setText(target, parsed);
7508
7522
  }
7509
- this.set(resources[parsed[0]] || "", parsed[1], parsed[2], resources[parsed[3]] || "auto", parsed[4], parsed[5], parsed[8], parsed[11], !!parsed[13]);
7523
+ this.set(resources[parsed[0]] || "", parsed[1], parsed[2], resources[parsed[3]] || "auto", parsed[4], parsed[5], parsed[8], parsed[11], !!parsed[13], !!parsed[14]);
7510
7524
  this.align.deserialize(parsed[6], manager);
7511
7525
  this.offset.deserialize(parsed[7], manager);
7512
7526
  this.outline.deserialize(parsed[9], manager);
@@ -8086,6 +8100,7 @@ var BuilderText = /** @class */ (function () {
8086
8100
  this.paddingHorizontal = NaN;
8087
8101
  this.paddingVertical = NaN;
8088
8102
  this.clipping = false;
8103
+ this.fitting = false;
8089
8104
  }
8090
8105
  BuilderText.prototype.init = function (buffer) {
8091
8106
  var vcount = this.vertexCount;
@@ -8136,6 +8151,7 @@ var BuilderText = /** @class */ (function () {
8136
8151
  var textPaddingHorizontal = text.padding.horizontal;
8137
8152
  var textPaddingVertical = text.padding.vertical;
8138
8153
  var textClipping = text.clipping;
8154
+ var textFitting = text.fitting;
8139
8155
  var textTexture = text.texture || pixi_js.Texture.WHITE;
8140
8156
  var textTextureTransformId = toTextureTransformId(textTexture);
8141
8157
  var isCharChanged = textValue !== this.value || textFamily !== this.family;
@@ -8151,6 +8167,7 @@ var BuilderText = /** @class */ (function () {
8151
8167
  textPaddingVertical !== this.paddingVertical;
8152
8168
  var isCharDirectionChanged = textDirection !== this.direction;
8153
8169
  var isClippingChanged = this.clipping !== textClipping;
8170
+ var isFittingChanged = this.fitting !== textFitting;
8154
8171
  var isTextureChanged = textTexture !== this.texture || textTextureTransformId !== this.textureTransformId;
8155
8172
  if (isSizeChanged ||
8156
8173
  isTransformChanged ||
@@ -8162,6 +8179,7 @@ var BuilderText = /** @class */ (function () {
8162
8179
  isCharSpacingChanged ||
8163
8180
  isCharDirectionChanged ||
8164
8181
  isClippingChanged ||
8182
+ isFittingChanged ||
8165
8183
  isTextureChanged) {
8166
8184
  this.size = textSize;
8167
8185
  this.family = textFamily;
@@ -8177,9 +8195,10 @@ var BuilderText = /** @class */ (function () {
8177
8195
  this.paddingHorizontal = textPaddingHorizontal;
8178
8196
  this.paddingVertical = textPaddingVertical;
8179
8197
  this.clipping = textClipping;
8198
+ this.fitting = textFitting;
8180
8199
  this.texture = textTexture;
8181
8200
  this.textureTransformId = textTextureTransformId;
8182
- if (isCharSizeChanged) {
8201
+ if (isCharSizeChanged || isFittingChanged || (textFitting && isSizeChanged)) {
8183
8202
  // Invalidate the text weight to update the text steps.
8184
8203
  this.weight = NaN;
8185
8204
  }
@@ -8192,7 +8211,7 @@ var BuilderText = /** @class */ (function () {
8192
8211
  textWorld = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0];
8193
8212
  text.world = textWorld;
8194
8213
  }
8195
- buildTextVertex(buffer.vertices, buffer.uvs, this.vertexOffset, this.vertexCount, 0, 0, shapeSize.x, shapeSize.y, textAtlas, textSize, textValue, textStyle, textAlignHorizontal, textAlignVertical, textOffsetHorizontal, textOffsetVertical, textSpacingHorizontal, textSpacingVertical, textDirection, textPaddingHorizontal, textPaddingVertical, textClipping, textWorld, toTextureUvs(textTexture), shape.transform.internalTransform);
8214
+ buildTextVertex(buffer.vertices, buffer.uvs, this.vertexOffset, this.vertexCount, 0, 0, shapeSize.x, shapeSize.y, textAtlas, textSize, textValue, textStyle, textAlignHorizontal, textAlignVertical, textOffsetHorizontal, textOffsetVertical, textSpacingHorizontal, textSpacingVertical, textDirection, textPaddingHorizontal, textPaddingVertical, textClipping, textFitting, textWorld, toTextureUvs(textTexture), shape.transform.internalTransform);
8196
8215
  }
8197
8216
  };
8198
8217
  BuilderText.prototype.updateColorFill = function (buffer, shape) {
@@ -28840,13 +28859,15 @@ var DButtonBase = /** @class */ (function (_super) {
28840
28859
  }
28841
28860
  };
28842
28861
  this.on(UtilPointerEvent.down, function () {
28843
- _this.state.isPressed = true;
28844
- var layer = DApplications.getLayer(_this);
28845
- if (layer) {
28846
- interactionManager = layer.renderer.plugins.interaction;
28847
- interactionManager.on(UtilPointerEvent.up, onUp);
28848
- interactionManager.on(UtilPointerEvent.upoutside, onUp);
28849
- interactionManager.on(UtilPointerEvent.cancel, onUp);
28862
+ if (_this.state.isActionable) {
28863
+ _this.state.isPressed = true;
28864
+ var layer = DApplications.getLayer(_this);
28865
+ if (layer) {
28866
+ interactionManager = layer.renderer.plugins.interaction;
28867
+ interactionManager.on(UtilPointerEvent.up, onUp);
28868
+ interactionManager.on(UtilPointerEvent.upoutside, onUp);
28869
+ interactionManager.on(UtilPointerEvent.cancel, onUp);
28870
+ }
28850
28871
  }
28851
28872
  });
28852
28873
  };
@@ -28941,6 +28962,23 @@ var DButtonBase = /** @class */ (function (_super) {
28941
28962
  }
28942
28963
  return _super.prototype.onKeyUp.call(this, e);
28943
28964
  };
28965
+ DButtonBase.prototype.onStateChange = function (newState, oldState) {
28966
+ _super.prototype.onStateChange.call(this, newState, oldState);
28967
+ if (newState.isPressed) {
28968
+ if (!oldState.isPressed) {
28969
+ this.onPress();
28970
+ }
28971
+ }
28972
+ else if (oldState.isPressed) {
28973
+ this.onUnpress();
28974
+ }
28975
+ };
28976
+ DButtonBase.prototype.onPress = function () {
28977
+ this.emit("press", this);
28978
+ };
28979
+ DButtonBase.prototype.onUnpress = function () {
28980
+ this.emit("unpress", this);
28981
+ };
28944
28982
  DButtonBase.prototype.destroy = function () {
28945
28983
  var _a, _b;
28946
28984
  (_b = (_a = this._options) === null || _a === void 0 ? void 0 : _a.group) === null || _b === void 0 ? void 0 : _b.remove(this);