@aurigma/design-atoms
Version:
Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.
64 lines • 2.27 kB
JavaScript
import { BaseTextItemHandler } from "./BaseTextItemHandler";
import { RotatedRectangleF } from "@aurigma/design-atoms-model/Math";
export class AutoScaledTextItemHandler extends BaseTextItemHandler {
constructor(item, textWhizz = null, apiClient = null, colorPreviewService) {
super(item, textWhizz, apiClient, colorPreviewService);
}
get item() {
return this._getItem();
}
set item(item) {
super._setItem(item);
}
get originalTextRectangle() {
return this.item.textRectangle;
}
set originalTextRectangle(value) {
this.item.textRectangle = value;
}
get verticalScale() {
return this.item.verticalScale;
}
get horizontalScale() {
return this.item.horizontalScale;
}
get isVertical() {
return this.item.isVertical;
}
set isVertical(value) {
this.item.isVertical = value;
}
getTextRectangle() {
var center = this.getControlCenter();
var rectangle = RotatedRectangleF.fromRectangleF(this.item.textRectangle);
rectangle.transform(this.item.transform.clone(), center);
return rectangle.toRectangleF();
}
_onItemPropertyChanged(sender, propertyName) {
switch (propertyName) {
case "isVertical":
this.update();
break;
}
super._onItemPropertyChanged(sender, propertyName);
}
_setDataItem(item, itemHandlerData) {
super._setDataItem(item, itemHandlerData);
this.item.textRectangle = item.textRectangle;
this.item.isVertical = item.isVertical;
}
_updateEmptyTextControlPoints() {
const textRectangle = this.item.textRectangle;
this._controlPoints[0].x = textRectangle.left;
this._controlPoints[0].y = textRectangle.top;
this._controlPoints[1].x = textRectangle.right;
this._controlPoints[1].y = textRectangle.bottom;
const canvas = this.canvas;
if (canvas != null)
canvas.redraw();
}
_setDefaultTextControlPoints() {
}
}
AutoScaledTextItemHandler.typeName = "AutoScaledTextItemHandler";
//# sourceMappingURL=AutoScaledTextItemHandler.js.map