igniteui-react-charts
Version:
Ignite UI React charting components for building rich data visualizations using TypeScript APIs.
1,616 lines • 149 kB
JavaScript
import * as React from 'react';
import { HorizontalAlignment_$type } from "igniteui-react-core";
import { UnknownValuePlotting_$type } from "igniteui-react-core";
import { TrendLineType_$type } from "igniteui-react-core";
import { IgrChartSeriesEventArgs } from './igr-chart-series-event-args';
import { arrayFindByName, brushToString, stringToBrush, toBrushCollection, fromBrushCollection, fromRect, toRect, ensureBool, ensureEnum, isValidProp, getModifiedProps, toSpinal, initializePropertiesFromCss, NamePatcher } from "igniteui-react-core";
import { MarkerType_$type } from "./MarkerType";
import { delegateCombine, delegateRemove } from "igniteui-react-core";
import { IgrDomainChartSeriesPointerEventArgs } from './igr-domain-chart-series-pointer-event-args';
import { MarkerTypeCollection as MarkerTypeCollection_internal } from './MarkerTypeCollection';
import { IgrMarkerTypeCollection } from './igr-marker-type-collection';
import { SyncableObservableCollection$1 } from "igniteui-react-core";
import { ToolTipType_$type } from "./ToolTipType";
import { CrosshairsDisplayMode_$type } from "./CrosshairsDisplayMode";
import { IgrCalloutStyleUpdatingEventArgs } from "./igr-callout-style-updating-event-args";
import { ComputedPlotAreaMarginMode_$type } from './ComputedPlotAreaMarginMode';
import { SeriesHighlightingMode_$type } from './SeriesHighlightingMode';
import { SeriesHighlightingBehavior_$type } from './SeriesHighlightingBehavior';
import { LegendHighlightingMode_$type } from './LegendHighlightingMode';
import { SeriesOutlineMode_$type } from './SeriesOutlineMode';
import { MarkerOutlineMode_$type } from './MarkerOutlineMode';
import { MarkerFillMode_$type } from './MarkerFillMode';
import { MarkerAutomaticBehavior_$type } from './MarkerAutomaticBehavior';
import { LegendItemBadgeMode_$type } from "igniteui-react-core";
import { LegendItemBadgeShape_$type } from "igniteui-react-core";
import { DataAbbreviationMode_$type } from "igniteui-react-core";
import { DataLegendValueMode_$type } from "igniteui-react-core";
import { DataLegendHeaderDateMode_$type } from "igniteui-react-core";
import { DataLegendHeaderTimeMode_$type } from "igniteui-react-core";
import { DataLegendUnitsMode_$type } from "igniteui-react-core";
import { DataLegendLabelMode_$type } from "igniteui-react-core";
import { DataLegendSummaryType_$type } from "igniteui-react-core";
import { Thickness } from "igniteui-react-core";
import { FontInfo } from "igniteui-react-core";
import { SeriesPlotAreaMarginHorizontalMode_$type } from './SeriesPlotAreaMarginHorizontalMode';
import { SeriesPlotAreaMarginVerticalMode_$type } from './SeriesPlotAreaMarginVerticalMode';
import { IgrCalloutPlacementPositionsCollection } from './igr-callout-placement-positions-collection';
import { CalloutPlacementPositions_$type } from './CalloutPlacementPositions';
import { SeriesViewerScrollbarMode_$type } from './SeriesViewerScrollbarMode';
import { SeriesViewerHorizontalScrollbarPosition_$type } from './SeriesViewerHorizontalScrollbarPosition';
import { SeriesViewerVerticalScrollbarPosition_$type } from './SeriesViewerVerticalScrollbarPosition';
import { IgrCalloutRenderStyleUpdatingEventArgs } from './igr-callout-render-style-updating-event-args';
import { CalloutPlacementPositionsCollection as CalloutPlacementPositionsCollection_internal } from './CalloutPlacementPositionsCollection';
import { DataToolTipLayerGroupingMode_$type } from "igniteui-react-core";
import { DataTooltipGroupedPositionX_$type } from "igniteui-react-core";
import { DataTooltipGroupedPositionY_$type } from "igniteui-react-core";
import { IgrChartSummaryDescriptionCollection } from './igr-chart-summary-description-collection';
import { IgrChartSortDescriptionCollection } from './igr-chart-sort-description-collection';
import { IgrFilterExpressionCollection } from "igniteui-react-core";
import { ValueModeCollection as ValueModeCollection_internal } from './ValueModeCollection';
import { IgrValueModeCollection } from './igr-value-mode-collection';
import { ValueLayerValueMode_$type } from './ValueLayerValueMode';
import { IgrFilterStringErrorsParsingEventArgs } from './igr-filter-string-errors-parsing-event-args';
import { SeriesHighlightedValuesDisplayMode_$type } from "igniteui-react-core";
import { SeriesSelectionMode_$type } from './SeriesSelectionMode';
import { SeriesSelectionBehavior_$type } from './SeriesSelectionBehavior';
import { ChartSelectedItemCollection as ChartSelectedItemCollection_internal } from "./ChartSelectedItemCollection";
import { ChartSelection } from "./ChartSelection";
import { IgrSeriesViewerSelectedSeriesItemsChangedEventArgs } from "./igr-series-viewer-selected-series-items-changed-event-args";
import { IgrChartSelectedItemCollection } from "./igr-chart-selected-item-collection";
import { CalloutCollisionMode_$type } from "igniteui-react-core";
import { Visibility_$type } from "igniteui-react-core";
import { IgrDomainChartPlotAreaPointerEventArgs } from './igr-domain-chart-plot-area-pointer-event-args';
import { IgrTrendLineTypeCollection } from './igr-trend-line-type-collection';
import { TrendLineTypeCollection as TrendLineTypeCollection_internal } from './TrendLineTypeCollection';
export class IgrDomainChart extends React.Component {
createImplementation() {
return null;
}
get i() {
return this._implementation;
}
onImplementationCreated() {
}
constructor(props) {
super(props);
this._calloutsDataSource = null;
this._selectedSeriesItems = null;
this._focusedSeriesItems = null;
this._markerTypes = null;
this._trendLineTypes = null;
this._calloutsAllowedPositions = null;
this._valueLines = null;
this.__p = null;
this._hasUserValues = new Set();
this._stylingContainer = null;
this._stylingParent = null;
this._inStyling = false;
this._seriesAdded = null;
this._seriesAdded_wrapped = null;
this._seriesRemoved = null;
this._seriesRemoved_wrapped = null;
this._seriesPointerEnter = null;
this._seriesPointerEnter_wrapped = null;
this._seriesPointerLeave = null;
this._seriesPointerLeave_wrapped = null;
this._seriesPointerMove = null;
this._seriesPointerMove_wrapped = null;
this._seriesPointerDown = null;
this._seriesPointerDown_wrapped = null;
this._seriesPointerUp = null;
this._seriesPointerUp_wrapped = null;
this._seriesClick = null;
this._seriesClick_wrapped = null;
this._plotAreaPointerEnter = null;
this._plotAreaPointerEnter_wrapped = null;
this._plotAreaPointerLeave = null;
this._plotAreaPointerLeave_wrapped = null;
this._plotAreaPointerMove = null;
this._plotAreaPointerMove_wrapped = null;
this._plotAreaPointerDown = null;
this._plotAreaPointerDown_wrapped = null;
this._plotAreaPointerUp = null;
this._plotAreaPointerUp_wrapped = null;
this._calloutStyleUpdating = null;
this._calloutStyleUpdating_wrapped = null;
this._calloutRenderStyleUpdating = null;
this._calloutRenderStyleUpdating_wrapped = null;
this._selectedSeriesItemsChanged = null;
this._selectedSeriesItemsChanged_wrapped = null;
this._focusedSeriesItemsChanged = null;
this._focusedSeriesItemsChanged_wrapped = null;
this._filterStringErrorsParsing = null;
this._filterStringErrorsParsing_wrapped = null;
if (this._styling) {
NamePatcher.ensureStylablePatched(Object.getPrototypeOf(this));
}
this._implementation = this.createImplementation();
this._implementation.externalObject = this;
this.onImplementationCreated();
}
componentDidMount() {
for (const p of Object.keys(this.props)) {
if (isValidProp(this, p)) {
this[p] = this.props[p];
}
}
}
shouldComponentUpdate(nextProps, nextState) {
const mod = getModifiedProps(this.props, nextProps);
for (const p of Object.keys(mod)) {
if (isValidProp(this, p)) {
this[p] = mod[p];
}
}
return true;
}
render() {
return null;
}
/**
* Sets or gets the template reference to use for tooltips for all the series.
*
*
*/
get tooltipTemplate() {
return this.i.tooltipTemplate;
}
set tooltipTemplate(v) {
this.i.tooltipTemplate = v;
}
/**
* Sets or gets the template references to use for tooltips for all the series, in order.
*
*
*/
get tooltipTemplates() {
let ret = [];
if (this.i.tooltipTemplates) {
for (let ii = 0; ii < this.i.tooltipTemplates.count; ii++) {
ret.push(this.i.tooltipTemplates.item(ii));
}
}
return ret;
}
set tooltipTemplates(v) {
this.i.tooltipTemplates.clear();
if (v) {
for (let ii = 0; ii < v.length; ii++) {
this.i.tooltipTemplates.add(v[ii]);
}
}
}
get legend() {
if (this.i.legend != null)
return this.i.legend.externalObject;
}
set legend(v) {
if (v != undefined && v != null)
this.i.legend = v.i;
}
set calloutsDataSource(value) {
this._calloutsDataSource = value;
this.bindCalloutsData();
}
get calloutsDataSource() {
return this._calloutsDataSource;
}
bindCalloutsData() {
if (this.i != null && this.i !== undefined) {
this.i.calloutsItemsSource = this._calloutsDataSource;
}
}
/**
* Gets or sets the scaling value used to affect the pixel density of the control.
* A higher scaling ratio will produce crisper visuals at the expense of memory. Lower values will cause the control
* to appear blurry.
*/
get pixelScalingRatio() {
return this.i.j9;
}
set pixelScalingRatio(v) {
this.i.j9 = +v;
}
/**
* Gets or sets the left margin of chart title
*
* Use `titleLeftMargin` property for the left margin of chart title.
*
* ```ts
* this.chart.titleLeftMargin = 10;
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* titleLeftMargin={20}>
* </IgrCategoryChart>
* ```
*/
get titleLeftMargin() {
return this.i.km;
}
set titleLeftMargin(v) {
this.i.km = +v;
}
/**
* Gets or sets the right margin of chart title
*
* Use `titleLeftMargin` property for the right margin of chart title.
*
* ```ts
* this.chart.titleRightMargin = 10;
* ```
*
* ```ts
* <IgrCategoryChart
* dataSource={this.state.data}
* titleRightMargin = 10>
* </IgrCategoryChart>
* ```
*/
get titleRightMargin() {
return this.i.kn;
}
set titleRightMargin(v) {
this.i.kn = +v;
}
/**
* Gets or sets the top margin of chart title
*
* Use `titleTopMargin` property for the top margin of chart title.
*
* ```ts
* this.chart.titleTopMargin = 10;
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* titleTopMargin={10} />
* ```
*/
get titleTopMargin() {
return this.i.ko;
}
set titleTopMargin(v) {
this.i.ko = +v;
}
/**
* Gets or sets the bottom margin of chart title
*
* Use `titleBottomMargin` property for the bottom margin of chart title.
*
* ```ts
* this.chart.titleBottomMargin = 5;
* ```
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* dataSource={this.categoryData}
* subtitle= "CategoryChart Subtitle"
* subtitleAlignment="Right"
* titleBottomMargin={5}/>
* ```
*/
get titleBottomMargin() {
return this.i.kl;
}
set titleBottomMargin(v) {
this.i.kl = +v;
}
/**
* Gets or sets the left margin of chart subtitle
*
* Use `subtitleLeftMargin` property for the left margin of chart subtitle.
*
* ```ts
* this.chart.subtitleLeftMargin = 20 ;
* ```
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* dataSource={this.categoryData}
* subtitle= "CategoryChart Subtitle"
* subtitleLeftMargin= {20}/>
* ```
*/
get subtitleLeftMargin() {
return this.i.kh;
}
set subtitleLeftMargin(v) {
this.i.kh = +v;
}
/**
* Gets or sets the top margin of chart subtitle
*
* Use `subtitleTopMargin` property for the top margin of chart subtitle.
*
* ```ts
* this.chart.subtitleTopMargin = 10;
* ```
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* dataSource={this.categoryData}
* subtitle= "CategoryChart Subtitle"
* subtitleTopMargin= {10}/>
* ```
*/
get subtitleTopMargin() {
return this.i.kj;
}
set subtitleTopMargin(v) {
this.i.kj = +v;
}
/**
* Gets or sets the right margin of chart subtitle
*
* Use `subtitleRightMargin` property for the right margin of chart subtitle.
*
* ```ts
* this.chart.subtitleRightMargin = 20 ;
* ```
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* dataSource={this.categoryData}
* subtitle= "CategoryChart Subtitle"
* subtitleAlignment="Right"
* subtitleRightMargin ={20}/>
* ```
*/
get subtitleRightMargin() {
return this.i.ki;
}
set subtitleRightMargin(v) {
this.i.ki = +v;
}
/**
* Gets or sets the bottom margin of chart subtitle
*
* Use `subtitleBottomMargin` property for the bottom margin of chart subtitle.
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* dataSource={this.categoryData}
* subtitle= "CategoryChart Subtitle"
* subtitleBottomMargin= {10}/>
* ```
*
* ```ts
* this.chart.subtitleBottomMargin = 10 ;
* ```
*/
get subtitleBottomMargin() {
return this.i.kg;
}
set subtitleBottomMargin(v) {
this.i.kg = +v;
}
/**
* Gets or sets color of chart subtitle
*
* Use `subtitleTextColor` property to color the subtitle.
*
* ```ts
* this.chart.subtitleTextColor = "#ff0000" ;
* ```
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* dataSource={this.categoryData}
* subtitle= "CategoryChart Subtitle"
* subtitleTextColor="#ff0000"/>
* ```
*/
get subtitleTextColor() {
return brushToString(this.i.zq);
}
set subtitleTextColor(v) {
this.i.zq = stringToBrush(v);
}
/**
* Gets or sets color of chart title
*
* Use `titleTextColor` property to color the chart title
*
* ```ts
* this.chart.titleTextColor="red" ;
* ```
*
* ```ts
* <IgrCategoryChart
* dataSource={this.state.data}
* width="700px"
* height="500px"
* xAxisTitle="Countries"
* titleTextColor="Red" />
*
* ```
*/
get titleTextColor() {
return brushToString(this.i.zr);
}
set titleTextColor(v) {
this.i.zr = stringToBrush(v);
}
/**
* Gets or sets the left margin of the chart content.
*
* Use the 'leftMargin' property for the left margin of the chart content.
*
* ```ts
* this.chart.leftMargin = 20;
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* leftMargin= {20}/>
* ```
*/
get leftMargin() {
return this.i.j6;
}
set leftMargin(v) {
this.i.j6 = +v;
}
/**
* Gets or sets the top margin of the chart content.
*
* Use `topMargin` property for the margin of the chart content.
*
* ```ts
* this.chart.topMargin=20;
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* topMargin={10} />
* ```
*/
get topMargin() {
return this.i.kp;
}
set topMargin(v) {
this.i.kp = +v;
}
/**
* Gets or sets the right margin of the chart content.
*
* Use `rightMargin` property for the right margin of the chart content.
*
* ```ts
* this.chart.rightMargin = 20 ;
* ```
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* markerTypes={this.state.markersTypes}
* dataSource={this.categoryData}
* rightMargin= {4}/>
* ```
*/
get rightMargin() {
return this.i.kf;
}
set rightMargin(v) {
this.i.kf = +v;
}
/**
* Gets or sets the bottom margin around the chart content.
*
* Use the `bottomMargin` property for the bottom margin around the chart content.
*
* ```ts
* this.chart.bottomMargin=20;
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* bottomMargin= 20 />
* ```
*/
get bottomMargin() {
return this.i.js;
}
set bottomMargin(v) {
this.i.js = +v;
}
/**
* Gets or sets the duration used for animating series plots when the data is changing
*
* Use the `TransitionDuration` property to animating between data values.
*
* ```ts
* this.chart.transitionDuratio= 500;
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* transitionDuratio={500} />
* ```
*/
get transitionDuration() {
return this.i.ly;
}
set transitionDuration(v) {
this.i.ly = +v;
}
/**
* Gets or sets the easing function used for animating series plots when the data is changing.
* This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number.
*
* The 'transitionInEasingFunction' property used for easing function for animating series plots when the chart is loading into view.
*
* ```ts
* this.chart.transitionInEasingFunction= this.cubicFunc;
*
* cubicFunc(time: number) : number
* {
* return time;
* }
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* transitionInEasingFunction="cubic" />
* ```
*/
get transitionEasingFunction() {
return this.i.eu;
}
set transitionEasingFunction(v) {
this.i.eu = v;
}
/**
* Gets or sets the duration used for animating highlighting changes
*/
get highlightingTransitionDuration() {
return this.i.lu;
}
set highlightingTransitionDuration(v) {
this.i.lu = +v;
}
/**
* Gets or sets the duration used for animating Selection changes
*/
get selectionTransitionDuration() {
return this.i.lx;
}
set selectionTransitionDuration(v) {
this.i.lx = +v;
}
/**
* Gets or sets the duration used for animating Focus changes
*/
get focusTransitionDuration() {
return this.i.ls;
}
set focusTransitionDuration(v) {
this.i.ls = +v;
}
/**
* Gets or sets CSS font property for the chart subtitle
*
* Use `subtitleTextStyle` property for the CSS font of the chart subtitle.
*
* ```ts
* this.chart.subtitleTextStyle= "16pt Verdona";
* ```
*
* ```ts
* <IgrCategoryChart
* width="100%"
* height="100%"
* chartType="Line"
* dataSource={this.categoryData}
* subtitleTextStyle="16pt Verdona"/>
* ```
*/
get subtitleTextStyle() {
return this.i.tf;
}
set subtitleTextStyle(v) {
this.i.tf = v;
}
/**
* Gets or sets CSS font property for the chart title
*
* Use `titleTextStyle` property for the CSS font property of the chart title
*
* ```ts
* this.chart.xAxisTitleTextStyle = "24pt Verdona";
* ```
*
* ```ts
* <IgrCategoryChart dataSource={this.state.data}
* width="700px"
* height="500px"
* xAxisTitle="Countries"
* xAxisTitleTextColor="gray"
* xAxisTitleTextStyle="12pt Verdana"
* xAxisTitleAngle={0}
* yAxisTitle="Trillions of Watt-hours (TWh)"
* yAxisTitleTextStyle="12pt Verdana"
* yAxisTitleTextColor="gray"
* yAxisTitleAngle={90}
* yAxisTitleLeftMargin={5}>
* </IgrCategoryChart>
* ```
*/
get titleTextStyle() {
return this.i.tq;
}
set titleTextStyle(v) {
this.i.tq = v;
}
get isDetached() {
return this.i.isDetached;
}
get dataToolTipGroupingMode() {
return this.i.bz;
}
set dataToolTipGroupingMode(v) {
this.i.bz = ensureEnum(DataToolTipLayerGroupingMode_$type, v);
}
/**
* Gets or sets the offset of the tooltip layer on the X axis.
*/
get dataToolTipPositionOffsetX() {
return this.i.jx;
}
set dataToolTipPositionOffsetX(v) {
this.i.jx = +v;
}
/**
* Gets or sets the offset of the tooltip layer on the Y axis.
*/
get dataToolTipPositionOffsetY() {
return this.i.jy;
}
set dataToolTipPositionOffsetY(v) {
this.i.jy = +v;
}
/**
* Gets or sets the offset of the tooltip layer on the X axis.
*/
get dataToolTipDefaultPositionOffsetX() {
return this.i.jv;
}
set dataToolTipDefaultPositionOffsetX(v) {
this.i.jv = +v;
}
/**
* Gets or sets the offset of the tooltip layer on the Y axis.
*/
get dataToolTipDefaultPositionOffsetY() {
return this.i.jw;
}
set dataToolTipDefaultPositionOffsetY(v) {
this.i.jw = +v;
}
/**
* Gets or sets the tooltip position mode on the X axis for grouped series.
*/
get dataToolTipGroupedPositionModeX() {
return this.i.bv;
}
set dataToolTipGroupedPositionModeX(v) {
this.i.bv = ensureEnum(DataTooltipGroupedPositionX_$type, v);
}
/**
* Gets or sets the tooltip position mode on the Y axis for grouped series.
*/
get dataToolTipGroupedPositionModeY() {
return this.i.bx;
}
set dataToolTipGroupedPositionModeY(v) {
this.i.bx = ensureEnum(DataTooltipGroupedPositionY_$type, v);
}
/**
* Gets or sets whether the data legend should update when the series data is mutated.
*/
get dataToolTipShouldUpdateWhenSeriesDataChanges() {
return this.i.gx;
}
set dataToolTipShouldUpdateWhenSeriesDataChanges(v) {
this.i.gx = ensureBool(v);
}
/**
* Gets or sets indexes, titles, or names of series to include in displaying in the data tooltip, e.g. "0, 1" or "Series1 Title, Series2 Title"
* The DataToolTipExcludedSeries property takes precedence over values of DataToolTipIncludedSeries property
*/
get dataToolTipIncludedSeries() {
return this.i.m;
}
set dataToolTipIncludedSeries(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.m = v;
}
/**
* Gets or sets indexes, titles, or names of series to exclude from displaying in the data tooltip, e.g. "0, 1" or "Series1 Title, Series2 Title"
* The DataToolTipExcludedSeries property takes precedence over values of DataToolTipIncludedSeries property
*/
get dataToolTipExcludedSeries() {
return this.i.j;
}
set dataToolTipExcludedSeries(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.j = v;
}
/**
* Gets or sets names of data columns or their labels to include in displaying in the data legend, e.g. "High, Low" or "H, L"
* The DataToolTipExcludedColumns property takes precedence over values of DataToolTipIncludedColumns property
*/
get dataToolTipIncludedColumns() {
return this.i.l;
}
set dataToolTipIncludedColumns(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.l = v;
}
/**
* Gets or sets names of data columns or their labels to exclude from displaying in the data legend, e.g. "High, Low" or "H, L"
* The DataToolTipExcludedColumns property takes precedence over values of DataToolTipIncludedColumns property
*/
get dataToolTipExcludedColumns() {
return this.i.i;
}
set dataToolTipExcludedColumns(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.i = v;
}
/**
* Gets or sets mode for abbreviating large numbers displayed in the legend
* This property is ignored when setting ValueFormatSpecifiers or ValueFormatString properties
*/
get dataToolTipValueFormatAbbreviation() {
return this.i.bd;
}
set dataToolTipValueFormatAbbreviation(v) {
this.i.bd = ensureEnum(DataAbbreviationMode_$type, v);
}
/**
* Gets or sets maximum digits for formatting numbers displayed in the legend
* This property is ignored when setting ValueFormatSpecifiers or ValueFormatString properties
*/
get dataToolTipValueFormatMaxFractions() {
return this.i.lo;
}
set dataToolTipValueFormatMaxFractions(v) {
this.i.lo = +v;
}
/**
* Gets or sets minimum digits for formatting numbers displayed in the legend
* This property is ignored when setting ValueFormatSpecifiers or ValueFormatString properties
*/
get dataToolTipValueFormatMinFractions() {
return this.i.lp;
}
set dataToolTipValueFormatMinFractions(v) {
this.i.lp = +v;
}
/**
* Gets or sets the mode for displaying values in the data legend, e.g. Currency ($500.25), Decimal (500.25), Integer (500)
*/
get dataToolTipValueFormatMode() {
return this.i.bt;
}
set dataToolTipValueFormatMode(v) {
this.i.bt = ensureEnum(DataLegendValueMode_$type, v);
}
/**
* Gets or sets globalization culture when displaying values as currencies, e.g. use "en-GB" to display British pound symbol when the ValueFormatMode property is set to 'Currency' mode
* This property is ignored when setting ValueFormatSpecifiers or ValueFormatString properties
*/
get dataToolTipValueFormatCulture() {
return this.i.qf;
}
set dataToolTipValueFormatCulture(v) {
this.i.qf = v;
}
/**
* Gets or sets whether or not use grouping separator, e.g, 15,000 for 15000
* This property is ignored when setting ValueFormatSpecifiers or ValueFormatString properties
*/
get dataToolTipValueFormatUseGrouping() {
return this.i.gy;
}
set dataToolTipValueFormatUseGrouping(v) {
this.i.gy = ensureBool(v);
}
/**
* Gets or sets the format string for values displayed in the data legend.
*/
get dataToolTipValueFormatString() {
return this.i.ql;
}
set dataToolTipValueFormatString(v) {
this.i.ql = v;
}
/**
* Gets or sets the format specifiers to use with the ValueFormatString string.
*/
get dataToolTipValueFormatSpecifiers() {
return this.i.n;
}
set dataToolTipValueFormatSpecifiers(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.n = v;
}
get dataToolTipValueRowMarginBottom() {
return this.i.aak ? this.i.aak.bottom : NaN;
}
set dataToolTipValueRowMarginBottom(v) {
this.ensureDataToolTipValueRowMargin();
this.i.aak.bottom = +v;
this.i.aak = this.i.aak;
}
get dataToolTipValueRowMarginLeft() {
return this.i.aak ? this.i.aak.left : NaN;
}
set dataToolTipValueRowMarginLeft(v) {
this.ensureDataToolTipValueRowMargin();
this.i.aak.left = +v;
this.i.aak = this.i.aak;
}
get dataToolTipValueRowMarginRight() {
return this.i.aak ? this.i.aak.right : NaN;
}
set dataToolTipValueRowMarginRight(v) {
this.ensureDataToolTipValueRowMargin();
this.i.aak.right = +v;
this.i.aak = this.i.aak;
}
get dataToolTipValueRowMarginTop() {
return this.i.aak ? this.i.aak.top : NaN;
}
set dataToolTipValueRowMarginTop(v) {
this.ensureDataToolTipValueRowMargin();
this.i.aak.top = +v;
this.i.aak = this.i.aak;
}
ensureDataToolTipValueRowMargin() {
if (this.i.aak) {
return;
}
this.i.aak = new Thickness(2);
}
/**
* Gets or sets whether to show series rows.
*/
get dataToolTipValueRowVisible() {
return this.i.gz;
}
set dataToolTipValueRowVisible(v) {
this.i.gz = ensureBool(v);
}
/**
* Gets or sets text displayed when data column is missing a value, e.g. "no data"
*/
get dataToolTipValueTextWhenMissingData() {
return this.i.qu;
}
set dataToolTipValueTextWhenMissingData(v) {
this.i.qu = v;
}
/**
* Gets or sets whether to use series colors when displaying values in the legend
*/
get dataToolTipValueTextUseSeriesColors() {
return this.i.g0;
}
set dataToolTipValueTextUseSeriesColors(v) {
this.i.g0 = ensureBool(v);
}
get dataToolTipValueTextMarginBottom() {
return this.i.aal ? this.i.aal.bottom : NaN;
}
set dataToolTipValueTextMarginBottom(v) {
this.ensureDataToolTipValueTextMargin();
this.i.aal.bottom = +v;
this.i.aal = this.i.aal;
}
get dataToolTipValueTextMarginLeft() {
return this.i.aal ? this.i.aal.left : NaN;
}
set dataToolTipValueTextMarginLeft(v) {
this.ensureDataToolTipValueTextMargin();
this.i.aal.left = +v;
this.i.aal = this.i.aal;
}
get dataToolTipValueTextMarginRight() {
return this.i.aal ? this.i.aal.right : NaN;
}
set dataToolTipValueTextMarginRight(v) {
this.ensureDataToolTipValueTextMargin();
this.i.aal.right = +v;
this.i.aal = this.i.aal;
}
get dataToolTipValueTextMarginTop() {
return this.i.aal ? this.i.aal.top : NaN;
}
set dataToolTipValueTextMarginTop(v) {
this.ensureDataToolTipValueTextMargin();
this.i.aal.top = +v;
this.i.aal = this.i.aal;
}
ensureDataToolTipValueTextMargin() {
if (this.i.aal) {
return;
}
this.i.aal = new Thickness(2);
}
/**
* Gets or sets the units text color.
*/
get dataToolTipValueTextColor() {
return brushToString(this.i.ze);
}
set dataToolTipValueTextColor(v) {
this.i.ze = stringToBrush(v);
}
/**
* Gets or Sets the style to use for the units text.
*/
get dataToolTipValueTextStyle() {
if (this.i.fg == null) {
return null;
}
return this.i.fg.fontString;
}
set dataToolTipValueTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.fg = fi;
}
/**
* Gets or sets the format string for header text displayed in the data legend.
*/
get dataToolTipHeaderFormatString() {
return this.i.o5;
}
set dataToolTipHeaderFormatString(v) {
this.i.o5 = v;
}
/**
* Gets or sets the format specifiers to use with the HeaderFormatString string.
*/
get dataToolTipHeaderFormatSpecifiers() {
return this.i.k;
}
set dataToolTipHeaderFormatSpecifiers(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.k = v;
}
/**
* Gets or sets globalization culture when displaying header as date time
* This property is ignored when setting HeaderFormatSpecifiers or HeaderFormatString properties
*/
get dataToolTipHeaderFormatCulture() {
return this.i.o1;
}
set dataToolTipHeaderFormatCulture(v) {
this.i.o1 = v;
}
/**
* Gets or sets date format for the header
* This property is ignored when setting HeaderFormatSpecifiers or HeaderFormatString properties
*/
get dataToolTipHeaderFormatDate() {
return this.i.bj;
}
set dataToolTipHeaderFormatDate(v) {
this.i.bj = ensureEnum(DataLegendHeaderDateMode_$type, v);
}
/**
* Gets or sets time format for the header
* This property is ignored when setting HeaderFormatSpecifiers or HeaderFormatString properties
*/
get dataToolTipHeaderFormatTime() {
return this.i.bl;
}
set dataToolTipHeaderFormatTime(v) {
this.i.bl = ensureEnum(DataLegendHeaderTimeMode_$type, v);
}
/**
* Gets or sets the HeaderText for the data legend.
*/
get dataToolTipHeaderText() {
return this.i.pa;
}
set dataToolTipHeaderText(v) {
this.i.pa = v;
}
/**
* Gets or sets the header text color.
*/
get dataToolTipHeaderTextColor() {
return brushToString(this.i.y6);
}
set dataToolTipHeaderTextColor(v) {
this.i.y6 = stringToBrush(v);
}
get dataToolTipHeaderTextMarginBottom() {
return this.i.aae ? this.i.aae.bottom : NaN;
}
set dataToolTipHeaderTextMarginBottom(v) {
this.ensureDataToolTipHeaderTextMargin();
this.i.aae.bottom = +v;
this.i.aae = this.i.aae;
}
get dataToolTipHeaderTextMarginLeft() {
return this.i.aae ? this.i.aae.left : NaN;
}
set dataToolTipHeaderTextMarginLeft(v) {
this.ensureDataToolTipHeaderTextMargin();
this.i.aae.left = +v;
this.i.aae = this.i.aae;
}
get dataToolTipHeaderTextMarginRight() {
return this.i.aae ? this.i.aae.right : NaN;
}
set dataToolTipHeaderTextMarginRight(v) {
this.ensureDataToolTipHeaderTextMargin();
this.i.aae.right = +v;
this.i.aae = this.i.aae;
}
get dataToolTipHeaderTextMarginTop() {
return this.i.aae ? this.i.aae.top : NaN;
}
set dataToolTipHeaderTextMarginTop(v) {
this.ensureDataToolTipHeaderTextMargin();
this.i.aae.top = +v;
this.i.aae = this.i.aae;
}
ensureDataToolTipHeaderTextMargin() {
if (this.i.aae) {
return;
}
this.i.aae = new Thickness(2);
}
get dataToolTipHeaderRowMarginBottom() {
return this.i.aad ? this.i.aad.bottom : NaN;
}
set dataToolTipHeaderRowMarginBottom(v) {
this.ensureDataToolTipHeaderRowMargin();
this.i.aad.bottom = +v;
this.i.aad = this.i.aad;
}
get dataToolTipHeaderRowMarginLeft() {
return this.i.aad ? this.i.aad.left : NaN;
}
set dataToolTipHeaderRowMarginLeft(v) {
this.ensureDataToolTipHeaderRowMargin();
this.i.aad.left = +v;
this.i.aad = this.i.aad;
}
get dataToolTipHeaderRowMarginRight() {
return this.i.aad ? this.i.aad.right : NaN;
}
set dataToolTipHeaderRowMarginRight(v) {
this.ensureDataToolTipHeaderRowMargin();
this.i.aad.right = +v;
this.i.aad = this.i.aad;
}
get dataToolTipHeaderRowMarginTop() {
return this.i.aad ? this.i.aad.top : NaN;
}
set dataToolTipHeaderRowMarginTop(v) {
this.ensureDataToolTipHeaderRowMargin();
this.i.aad.top = +v;
this.i.aad = this.i.aad;
}
ensureDataToolTipHeaderRowMargin() {
if (this.i.aad) {
return;
}
this.i.aad = new Thickness(2);
}
/**
* Gets or sets whether to show Header row.
*/
get dataToolTipHeaderRowVisible() {
return this.i.gw;
}
set dataToolTipHeaderRowVisible(v) {
this.i.gw = ensureBool(v);
}
/**
* Gets or Sets the style to use for the header text.
*/
get dataToolTipHeaderTextStyle() {
if (this.i.e8 == null) {
return null;
}
return this.i.e8.fontString;
}
set dataToolTipHeaderTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.e8 = fi;
}
/**
* Gets or sets the Group text color.
*/
get dataToolTipGroupTextColor() {
return brushToString(this.i.y5);
}
set dataToolTipGroupTextColor(v) {
this.i.y5 = stringToBrush(v);
}
get dataToolTipGroupTextMarginBottom() {
return this.i.aac ? this.i.aac.bottom : NaN;
}
set dataToolTipGroupTextMarginBottom(v) {
this.ensureDataToolTipGroupTextMargin();
this.i.aac.bottom = +v;
this.i.aac = this.i.aac;
}
get dataToolTipGroupTextMarginLeft() {
return this.i.aac ? this.i.aac.left : NaN;
}
set dataToolTipGroupTextMarginLeft(v) {
this.ensureDataToolTipGroupTextMargin();
this.i.aac.left = +v;
this.i.aac = this.i.aac;
}
get dataToolTipGroupTextMarginRight() {
return this.i.aac ? this.i.aac.right : NaN;
}
set dataToolTipGroupTextMarginRight(v) {
this.ensureDataToolTipGroupTextMargin();
this.i.aac.right = +v;
this.i.aac = this.i.aac;
}
get dataToolTipGroupTextMarginTop() {
return this.i.aac ? this.i.aac.top : NaN;
}
set dataToolTipGroupTextMarginTop(v) {
this.ensureDataToolTipGroupTextMargin();
this.i.aac.top = +v;
this.i.aac = this.i.aac;
}
ensureDataToolTipGroupTextMargin() {
if (this.i.aac) {
return;
}
this.i.aac = new Thickness(2);
}
get dataToolTipGroupRowMarginBottom() {
return this.i.aab ? this.i.aab.bottom : NaN;
}
set dataToolTipGroupRowMarginBottom(v) {
this.ensureDataToolTipGroupRowMargin();
this.i.aab.bottom = +v;
this.i.aab = this.i.aab;
}
get dataToolTipGroupRowMarginLeft() {
return this.i.aab ? this.i.aab.left : NaN;
}
set dataToolTipGroupRowMarginLeft(v) {
this.ensureDataToolTipGroupRowMargin();
this.i.aab.left = +v;
this.i.aab = this.i.aab;
}
get dataToolTipGroupRowMarginRight() {
return this.i.aab ? this.i.aab.right : NaN;
}
set dataToolTipGroupRowMarginRight(v) {
this.ensureDataToolTipGroupRowMargin();
this.i.aab.right = +v;
this.i.aab = this.i.aab;
}
get dataToolTipGroupRowMarginTop() {
return this.i.aab ? this.i.aab.top : NaN;
}
set dataToolTipGroupRowMarginTop(v) {
this.ensureDataToolTipGroupRowMargin();
this.i.aab.top = +v;
this.i.aab = this.i.aab;
}
ensureDataToolTipGroupRowMargin() {
if (this.i.aab) {
return;
}
this.i.aab = new Thickness(2);
}
/**
* Gets or sets whether to show Group row.
*/
get dataToolTipGroupRowVisible() {
return this.i.gv;
}
set dataToolTipGroupRowVisible(v) {
this.i.gv = ensureBool(v);
}
/**
* Gets or Sets the style to use for the Group text.
*/
get dataToolTipGroupTextStyle() {
if (this.i.e7 == null) {
return null;
}
return this.i.e7.fontString;
}
set dataToolTipGroupTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.e7 = fi;
}
/**
* Gets or sets the summary text color.
*/
get dataToolTipSummaryTitleTextColor() {
return brushToString(this.i.y9);
}
set dataToolTipSummaryTitleTextColor(v) {
this.i.y9 = stringToBrush(v);
}
/**
* Gets or Sets the style to use for the summary text.
*/
get dataToolTipSummaryTitleTextStyle() {
if (this.i.fb == null) {
return null;
}
return this.i.fb.fontString;
}
set dataToolTipSummaryTitleTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.fb = fi;
}
/**
* Gets or sets the SummaryType for the data legend.
*/
get dataToolTipSummaryType() {
return this.i.bp;
}
set dataToolTipSummaryType(v) {
this.i.bp = ensureEnum(DataLegendSummaryType_$type, v);
}
/**
* Gets or sets the SummaryTitleText for the data legend.
*/
get dataToolTipSummaryTitleText() {
return this.i.pt;
}
set dataToolTipSummaryTitleText(v) {
this.i.pt = v;
}
get dataToolTipSummaryTitleTextMarginBottom() {
return this.i.aah ? this.i.aah.bottom : NaN;
}
set dataToolTipSummaryTitleTextMarginBottom(v) {
this.ensureDataToolTipSummaryTitleTextMargin();
this.i.aah.bottom = +v;
this.i.aah = this.i.aah;
}
get dataToolTipSummaryTitleTextMarginLeft() {
return this.i.aah ? this.i.aah.left : NaN;
}
set dataToolTipSummaryTitleTextMarginLeft(v) {
this.ensureDataToolTipSummaryTitleTextMargin();
this.i.aah.left = +v;
this.i.aah = this.i.aah;
}
get dataToolTipSummaryTitleTextMarginRight() {
return this.i.aah ? this.i.aah.right : NaN;
}
set dataToolTipSummaryTitleTextMarginRight(v) {
this.ensureDataToolTipSummaryTitleTextMargin();
this.i.aah.right = +v;
this.i.aah = this.i.aah;
}
get dataToolTipSummaryTitleTextMarginTop() {
return this.i.aah ? this.i.aah.top : NaN;
}
set dataToolTipSummaryTitleTextMarginTop(v) {
this.ensureDataToolTipSummaryTitleTextMargin();
this.i.aah.top = +v;
this.i.aah = this.i.aah;
}
ensureDataToolTipSummaryTitleTextMargin() {
if (this.i.aah) {
return;
}
this.i.aah = new Thickness(2);
}
get dataToolTipSummaryRowMarginBottom() {
return this.i.aag ? this.i.aag.bottom : NaN;
}
set dataToolTipSummaryRowMarginBottom(v) {
this.ensureDataToolTipSummaryRowMargin();
this.i.aag.bottom = +v;
this.i.aag = this.i.aag;
}
get dataToolTipSummaryRowMarginLeft() {
return this.i.aag ? this.i.aag.left : NaN;
}
set dataToolTipSummaryRowMarginLeft(v) {
this.ensureDataToolTipSummaryRowMargin();
this.i.aag.left = +v;
this.i.aag = this.i.aag;
}
get dataToolTipSummaryRowMarginRight() {
return this.i.aag ? this.i.aag.right : NaN;
}
set dataToolTipSummaryRowMarginRight(v) {
this.ensureDataToolTipSummaryRowMargin();
this.i.aag.right = +v;
this.i.aag = this.i.aag;
}
get dataToolTipSummaryRowMarginTop() {
return this.i.aag ? this.i.aag.top : NaN;
}
set dataToolTipSummaryRowMarginTop(v) {
this.ensureDataToolTipSummaryRowMargin();
this.i.aag.top = +v;
this.i.aag = this.i.aag;
}
ensureDataToolTipSummaryRowMargin() {
if (this.i.aag) {
return;
}
this.i.aag = new Thickness(2);
}
/**
* Gets or sets the units text color.
*/
get dataToolTipSummaryValueTextColor() {
return brushToString(this.i.zb);
}
set dataToolTipSummaryValueTextColor(v) {
this.i.zb = stringToBrush(v);
}
/**
* Gets or Sets the style to use for the units text.
*/
get dataToolTipSummaryValueTextStyle() {
if (this.i.fd == null) {
return null;
}
return this.i.fd.fontString;
}
set dataToolTipSummaryValueTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.fd = fi;
}
/**
* Gets or sets the units text for the data legend.
*/
get dataToolTipSummaryLabelText() {
return this.i.po;
}
set dataToolTipSummaryLabelText(v) {
this.i.po = v;
}
/**
* Gets or sets the units text color.
*/
get dataToolTipSummaryLabelTextColor() {
return brushToString(this.i.y8);
}
set dataToolTipSummaryLabelTextColor(v) {
this.i.y8 = stringToBrush(v);
}
/**
* Gets or Sets the style to use for the units text.
*/
get dataToolTipSummaryLabelTextStyle() {
if (this.i.fa == null) {
return null;
}
return this.i.fa.fontString;
}
set dataToolTipSummaryLabelTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.fa = fi;
}
/**
* Gets or sets the units text for the data legend.
*/
get dataToolTipSummaryUnitsText() {
return this.i.pz;
}
set dataToolTipSummaryUnitsText(v) {
this.i.pz = v;
}
/**
* Gets or sets the units text color.
*/
get dataToolTipSummaryUnitsTextColor() {
return brushToString(this.i.za);
}
set dataToolTipSummaryUnitsTextColor(v) {
this.i.za = stringToBrush(v);
}
/**
* Gets or Sets the style to use for the units text.
*/
get dataToolTipSummaryUnitsTextStyle() {
if (this.i.fc == null) {
return null;
}
return this.i.fc.fontString;
}
set dataToolTipSummaryUnitsTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.fc = fi;
}
get dataToolTipBadgeMarginBottom() {
return this.i.aaa ? this.i.aaa.bottom : NaN;
}
set dataToolTipBadgeMarginBottom(v) {
this.ensureDataToolTipBadgeMargin();
this.i.aaa.bottom = +v;
this.i.aaa = this.i.aaa;
}
get dataToolTipBadgeMarginLeft() {
return this.i.aaa ? this.i.aaa.left : NaN;
}
set dataToolTipBadgeMarginLeft(v) {
this.ensureDataToolTipBadgeMargin();
this.i.aaa.left = +v;
this.i.aaa = this.i.aaa;
}
get dataToolTipBadgeMarginRight() {
return this.i.aaa ? this.i.aaa.right : NaN;
}
set dataToolTipBadgeMarginRight(v) {
this.ensureDataToolTipBadgeMargin();
this.i.aaa.right = +v;
this.i.aaa = this.i.aaa;
}
get dataToolTipBadgeMarginTop() {
return this.i.aaa ? this.i.aaa.top : NaN;
}
set dataToolTipBadgeMarginTop(v) {
this.ensureDataToolTipBadgeMargin();
this.i.aaa.top = +v;
this.i.aaa = this.i.aaa;
}
ensureDataToolTipBadgeMargin() {
if (this.i.aaa) {
return;
}
this.i.aaa = new Thickness(2);
}
/**
* Gets or sets the BadgeShape for the data legend.
*/
get dataToolTipBadgeShape() {
return this.i.cs;
}
set dataToolTipBadgeShape(v) {
this.i.cs = ensureEnum(LegendItemBadgeShape_$type, v);
}
/**
* Gets or sets the UnitsMode for the data legend.
*/
get dataToolTipUnitsDisplayMode() {
return this.i.br;
}
set dataToolTipUnitsDisplayMode(v) {
this.i.br = ensureEnum(DataLegendUnitsMode_$type, v);
}
/**
* Gets or sets the units text for the data legend.
*/
get dataToolTipUnitsText() {
return this.i.p9;
}
set dataToolTipUnitsText(v) {
this.i.p9 = v;
}
/**
* Gets or sets the units text color.
*/
get dataToolTipUnitsTextColor() {
return brushToString(this.i.zd);
}
set dataToolTipUnitsTextColor(v) {
this.i.zd = stringToBrush(v);
}
get dataToolTipUnitsTextMarginBottom() {
return this.i.aaj ? this.i.aaj.bottom : NaN;
}
set dataToolTipUnitsTextMarginBottom(v) {
this.ensureDataToolTipUnitsTextMargin();
this.i.aaj.bottom = +v;
this.i.aaj = this.i.aaj;
}
get dataToolTipUnitsTextMarginLeft() {
return this.i.aaj ? this.i.aaj.left : NaN;
}
set dataToolTipUnitsTextMarginLeft(v) {
this.ensureDataToolTipUnitsTextMargin();
this.i.aaj.left = +v;
this.i.aaj = this.i.aaj;
}
get dataToolTipUnitsTextMarginRight() {
return this.i.aaj ? this.i.aaj.right : NaN;
}
set dataToolTipUnitsTextMarginRight(v) {
this.ensureDataToolTipUnitsTextMargin();
this.i.aaj.right = +v;
this.i.aaj = this.i.aaj;
}
get dataToolTipUnitsTextMarginTop() {
return this.i.aaj ? this.i.aaj.top : NaN;
}
set dataToolTipUnitsTextMarginTop(v) {
this.ensureDataToolTipUnitsTextMargin();
this.i.aaj.top = +v;
this.i.aaj = this.i.aaj;
}
ensureDataToolTipUnitsTextMargin() {
if (this.i.aaj) {
return;
}
this.i.aaj = new Thickness(2);
}
/**
* Gets or Sets the style to use for the units text.
*/
get dataToolTipUnitsTextStyle() {
if (this.i.ff == null) {
return null;
}
return this.i.ff.fontString;
}
set dataToolTipUnitsTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.ff = fi;
}
get dataToolTipTitleTextMarginBottom() {
return this.i.aai ? this.i.aai.bottom : NaN;
}
set dataToolTipTitleTextMarginBottom(v) {
this.ensureDataToolTipTitleTextMargin();
this.i.aai.bottom = +v;
this.i.