UNPKG

@nativescript-community/ui-carto

Version:

NativeScript plugin for CARTO Mobile SDK

96 lines 3.11 kB
import { BillboardStyleBuilder } from '.'; import { nativeColorProperty, nativeProperty } from '..'; import { BaseBillboardVectorElement } from './index.android'; import { styleBuilderProperty } from './index.common'; export class TextStyleBuilder extends BillboardStyleBuilder { createNative(options) { return new com.carto.styles.TextStyleBuilder(); } buildStyle() { if (!this.mBuildStyle) { this.mBuildStyle = this.getNative().buildStyle(); } return this.mBuildStyle; } } __decorate([ nativeProperty ], TextStyleBuilder.prototype, "fontSize", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "fontName", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "orientationMode", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "breakLines", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "textField", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "strokeWidth", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "borderWidth", void 0); __decorate([ nativeColorProperty ], TextStyleBuilder.prototype, "color", void 0); __decorate([ nativeColorProperty ], TextStyleBuilder.prototype, "strokeColor", void 0); __decorate([ nativeColorProperty ], TextStyleBuilder.prototype, "borderColor", void 0); __decorate([ nativeColorProperty ], TextStyleBuilder.prototype, "backgroundColor", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "anchorPointX", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "anchorPointY", void 0); __decorate([ nativeProperty ], TextStyleBuilder.prototype, "flippable", void 0); export class Text extends BaseBillboardVectorElement { createNative(options) { const style = this.buildStyle(); const nativePos = this.getNativePos(options.position, options.projection); const result = new com.carto.vectorelements.Text(nativePos, style, options.text); // result['owner'] = new WeakRef(this); return result; } buildStyle() { let style; const styleBuilder = this.options.styleBuilder; if (styleBuilder instanceof com.carto.styles.TextStyle) { style = styleBuilder; } else if (styleBuilder instanceof TextStyleBuilder) { style = styleBuilder.buildStyle(); } else if (styleBuilder.hasOwnProperty) { style = new TextStyleBuilder(styleBuilder).buildStyle(); } return style; } get styleBuilder() { return this.native ? this.native.getStyle() : this.options.styleBuilder; } set styleBuilder(value) { if (this.native && !this.duringInit) { this.options.styleBuilder = value; this.native.setStyle(this.buildStyle()); } } } __decorate([ nativeProperty ], Text.prototype, "text", void 0); __decorate([ styleBuilderProperty ], Text.prototype, "color", void 0); //# sourceMappingURL=text.android.js.map