igniteui-react-charts
Version:
Ignite UI React charting components for building rich data visualizations using TypeScript APIs.
834 lines (828 loc) • 28 kB
JavaScript
import { delegateCombine, delegateRemove } from "igniteui-react-core";
import { IgrSeries } from "./igr-series";
import { IgrCalloutPlacementPositionsCollection } from "./igr-callout-placement-positions-collection";
import { HighlightedValueLabelMode_$type } from "igniteui-react-core";
import { AutoCalloutVisibilityMode_$type } from "./AutoCalloutVisibilityMode";
import { CalloutCollisionMode_$type } from "igniteui-react-core";
import { IgrCalloutStyleUpdatingEventArgs } from "./igr-callout-style-updating-event-args";
import { IgrCalloutRenderStyleUpdatingEventArgs } from "./igr-callout-render-style-updating-event-args";
import { IgrCalloutContentUpdatingEventArgs } from "./igr-callout-content-updating-event-args";
import { IgrCalloutLabelUpdatingEventArgs } from "./igr-callout-label-updating-event-args";
import { IgrCalloutSeriesSelectingEventArgs } from "./igr-callout-series-selecting-event-args";
import { IgrAnnotationLayer } from "./igr-annotation-layer";
import { CalloutLayer } from "./CalloutLayer";
import { ensureBool, ensureEnum, brushToString, stringToBrush, arrayFindByName, toPoint, fromPoint } from "igniteui-react-core";
import { CalloutPlacementPositionsCollection as CalloutPlacementPositionsCollection_internal } from "./CalloutPlacementPositionsCollection";
import { CalloutPlacementPositions_$type } from "./CalloutPlacementPositions";
import { SyncableObservableCollection$1 } from "igniteui-react-core";
/**
* Represents an annotation layer that displays crosshair lines that cross through the closest value of the target series under the cursor.
*/
export class IgrCalloutLayer extends IgrAnnotationLayer {
createImplementation() {
return new CalloutLayer();
}
/**
* @hidden
*/
get i() {
return this._implementation;
}
constructor(props) {
super(props);
this._allowedPositions = null;
this._calloutStyleUpdating = null;
this._calloutStyleUpdating_wrapped = null;
this._calloutRenderStyleUpdating = null;
this._calloutRenderStyleUpdating_wrapped = null;
this._calloutContentUpdating = null;
this._calloutContentUpdating_wrapped = null;
this._calloutLabelUpdating = null;
this._calloutLabelUpdating_wrapped = null;
this._calloutSeriesSelecting = null;
this._calloutSeriesSelecting_wrapped = null;
}
/**
* Gets whether the series is an callout annotation layer.
*/
get isAnnotationCalloutLayer() {
return this.i.eq;
}
/**
* Gets or sets whether or not callouts expand axis buffer for extra space for their render around data points.
*/
get calloutExpandsAxisBufferEnabled() {
return this.i.aca;
}
set calloutExpandsAxisBufferEnabled(v) {
this.i.aca = ensureBool(v);
}
/**
* Gets or sets whether or not callouts expand axis buffer only when callouts are visible in the chart.
* This property is not used when the CalloutExpandsAxisBufferEnabled property is false or AutoCalloutVisibilityMode is not Dedicated.
*/
get calloutExpandsAxisBufferOnlyWhenVisible() {
return this.i.acc;
}
set calloutExpandsAxisBufferOnlyWhenVisible(v) {
this.i.acc = ensureBool(v);
}
/**
* Gets or sets whether or not recalculate callouts expand axis buffer on rendering frame.
* This property is not used when the CalloutExpandsAxisBufferEnabled property is false or AutoCalloutVisibilityMode is not Dedicated.
*/
get calloutExpandsAxisBufferOnInitialVisibility() {
return this.i.acb;
}
set calloutExpandsAxisBufferOnInitialVisibility(v) {
this.i.acb = ensureBool(v);
}
/**
* Gets or sets whether or not suspend refresh of callouts while they shift from hidden to visible
*/
get calloutSuspendedWhenShiftingToVisible() {
return this.i.acd;
}
set calloutSuspendedWhenShiftingToVisible(v) {
this.i.acd = ensureBool(v);
}
/**
* Gets or sets the minimum vertical axis buffer for positioning callouts.
* This property does not take precedence over the CalloutExpandsAxisBufferMaxHeight property.
*/
get calloutExpandsAxisBufferMinHeight() {
return this.i.ada;
}
set calloutExpandsAxisBufferMinHeight(v) {
this.i.ada = +v;
}
/**
* Gets or sets the maximum vertical axis buffer for positioning callouts.
* This property takes precedence over the CalloutExpandsAxisBufferMinHeight property.
*/
get calloutExpandsAxisBufferMaxHeight() {
return this.i.ac8;
}
set calloutExpandsAxisBufferMaxHeight(v) {
this.i.ac8 = +v;
}
/**
* Gets or sets the minimum horizontal axis buffer for positioning callouts.
* This property does not take precedence over the CalloutExpandsAxisBufferMaxWidth property.
*/
get calloutExpandsAxisBufferMinWidth() {
return this.i.adb;
}
set calloutExpandsAxisBufferMinWidth(v) {
this.i.adb = +v;
}
/**
* Gets or sets the maximum horizontal axis buffer for positioning callouts.
* This property takes precedence over the CalloutExpandsAxisBufferMinWidth property.
*/
get calloutExpandsAxisBufferMaxWidth() {
return this.i.ac9;
}
set calloutExpandsAxisBufferMaxWidth(v) {
this.i.ac9 = +v;
}
/**
* Gets or sets the label mapping property for the callouts.
*/
get labelMemberPath() {
return this.i.afa;
}
set labelMemberPath(v) {
this.i.afa = v;
}
/**
* Gets or sets the label mapping property for the callouts.
*/
get xMemberPath() {
return this.i.afq;
}
set xMemberPath(v) {
this.i.afq = v;
}
/**
* Gets or sets the label mapping property for the callouts.
*/
get yMemberPath() {
return this.i.aft;
}
set yMemberPath(v) {
this.i.aft = v;
}
/**
* Gets or sets the key mapping property for the callouts.
*/
get keyMemberPath() {
return this.i.ae4;
}
set keyMemberPath(v) {
this.i.ae4 = v;
}
/**
* Gets or sets whether to allow the callouts to be variable distances from the target points, for supporting collision modes.
*/
get isCalloutOffsettingEnabled() {
return this.i.acf;
}
set isCalloutOffsettingEnabled(v) {
this.i.acf = ensureBool(v);
}
/**
* Gets or sets the label format string to use for the label.
*/
get labelFormat() {
return this.i.ae7;
}
set labelFormat(v) {
this.i.ae7 = v;
}
/**
* Gets or sets the format specifiers to use with the LabelFormat string.
*/
get labelFormatSpecifiers() {
return this.i.aat;
}
set labelFormatSpecifiers(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.aat = v;
}
/**
* Gets or sets the content mapping property for the callouts.
*/
get contentMemberPath() {
return this.i.aev;
}
set contentMemberPath(v) {
this.i.aev = v;
}
/**
* Gets or sets the name of the series series to target this annotation to. If null, this annotation targets all series simultaneously.
*/
get targetSeriesName() {
return this.i.afd;
}
set targetSeriesName(v) {
this.i.afd = v;
}
/**
* Gets or sets the series to target this annotation to. If null, this annotation targets all series simultaneously.
*/
get targetSeries() {
const r = this.i.aba;
if (r == null) {
return null;
}
if (!r.externalObject) {
let e = IgrSeries._createFromInternal(r);
if (e) {
e._implementation = r;
}
r.externalObject = e;
}
return r.externalObject;
}
set targetSeries(v) {
if (v != null && this._stylingContainer && v._styling)
v._styling(this._stylingContainer, this, this);
v == null ? this.i.aba = null : this.i.aba = v.i;
}
/**
* Gets or sets a channel name to identify other callout layers within the chart to share collision information with.
*/
get collisionChannel() {
return this.i.aes;
}
set collisionChannel(v) {
this.i.aes = v;
}
/**
* Gets or sets the allowed positions that the callout layer is allowed to use.
*/
get allowedPositions() {
if (this._allowedPositions === null) {
let coll = new IgrCalloutPlacementPositionsCollection();
let innerColl = this.i.aa5;
if (!innerColl) {
innerColl = new CalloutPlacementPositionsCollection_internal();
}
this._allowedPositions = coll._fromInner(innerColl);
this.i.aa5 = innerColl;
}
return this._allowedPositions;
}
set allowedPositions(v) {
if (this._allowedPositions !== null) {
this._allowedPositions._setSyncTarget(null);
this._allowedPositions = null;
}
let coll = new IgrCalloutPlacementPositionsCollection();
this._allowedPositions = coll._fromOuter(v);
let syncColl = new SyncableObservableCollection$1(CalloutPlacementPositions_$type);
let innerColl = this.i.aa5;
if (!innerColl) {
innerColl = new CalloutPlacementPositionsCollection_internal();
}
syncColl._inner = innerColl;
syncColl.clear();
this._allowedPositions._setSyncTarget(syncColl);
this.i.aa5 = innerColl;
}
/**
* Gets or sets how to select the final value to annotate.
*/
get isAutoCalloutBehaviorEnabled() {
return this.i.ace;
}
set isAutoCalloutBehaviorEnabled(v) {
this.i.ace = ensureBool(v);
}
/**
* Gets or sets whether to use values, rather than labels for auto callout labels.
*/
get useInterpolatedValueForAutoCalloutLabels() {
return this.i.ack;
}
set useInterpolatedValueForAutoCalloutLabels(v) {
this.i.ack = ensureBool(v);
}
/**
* Gets or sets whether to the series color as the outline of the callout.
*/
get useSeriesColorForOutline() {
return this.i.acn;
}
set useSeriesColorForOutline(v) {
this.i.acn = ensureBool(v);
}
/**
* Gets or sets whether to the label color is automatically decided between a light and dark option for contrast.
*/
get useAutoContrastingLabelColors() {
return this.i.acj;
}
set useAutoContrastingLabelColors(v) {
this.i.acj = ensureBool(v);
}
/**
* Gets or sets whether to the series color as the outline of the callout.
*/
get useItemColorForFill() {
return this.i.acl;
}
set useItemColorForFill(v) {
this.i.acl = ensureBool(v);
}
/**
* Gets or sets whether to the series item color as the outline of the callout.
*/
get useItemColorForOutline() {
return this.i.acm;
}
set useItemColorForOutline(v) {
this.i.acm = ensureBool(v);
}
/**
* Gets or sets whether to use values, rather than labels for auto callout labels.
*/
get useValueForAutoCalloutLabels() {
return this.i.aco;
}
set useValueForAutoCalloutLabels(v) {
this.i.aco = ensureBool(v);
}
/**
* Gets or sets whether to use values, rather than labels for auto callout labels.
*/
get highlightedValueLabelMode() {
return this.i.aa9;
}
set highlightedValueLabelMode(v) {
this.i.aa9 = ensureEnum(HighlightedValueLabelMode_$type, v);
}
/**
* Gets or sets the rules for when the callouts should be visible.
*/
get autoCalloutVisibilityMode() {
return this.i.aay;
}
set autoCalloutVisibilityMode(v) {
this.i.aay = ensureEnum(AutoCalloutVisibilityMode_$type, v);
}
/**
* Gets or sets the corner radius to use for the callout borders.
*/
get calloutCornerRadius() {
return this.i.ac7;
}
set calloutCornerRadius(v) {
this.i.ac7 = +v;
}
/**
* Gets or sets the badge is visible in callout annotation.
*/
get calloutBadgeVisible() {
return this.i.ab9;
}
set calloutBadgeVisible(v) {
this.i.ab9 = ensureBool(v);
}
/**
* Gets or sets the the badge width in callout annotation.
*/
get calloutBadgeWidth() {
return this.i.ac6;
}
set calloutBadgeWidth(v) {
this.i.ac6 = +v;
}
/**
* Gets or sets the the badge height in callout annotation.
*/
get calloutBadgeHeight() {
return this.i.ac4;
}
set calloutBadgeHeight(v) {
this.i.ac4 = +v;
}
/**
* Gets or sets the the badge thickness in callout annotation.
*/
get calloutBadgeThickness() {
return this.i.ac5;
}
set calloutBadgeThickness(v) {
this.i.ac5 = +v;
}
/**
* Gets or sets the badge outline in callout annotation.
*/
get calloutBadgeOutline() {
return brushToString(this.i.ah4);
}
set calloutBadgeOutline(v) {
this.i.ah4 = stringToBrush(v);
}
/**
* Gets or sets the badge background in callout annotation.
*/
get calloutBadgeBackground() {
return brushToString(this.i.ah3);
}
set calloutBadgeBackground(v) {
this.i.ah3 = stringToBrush(v);
}
/**
* Gets or sets whether or not the callout badge matches appearance of target series.
*/
get calloutBadgeMatchSeries() {
return this.i.ab8;
}
set calloutBadgeMatchSeries(v) {
this.i.ab8 = ensureBool(v);
}
/**
* Gets or sets the gap between badge and text in callout annotation
*/
get calloutBadgeGap() {
return this.i.ac3;
}
set calloutBadgeGap(v) {
this.i.ac3 = +v;
}
/**
* Gets or sets the corner radius of badge in callout annotation
*/
get calloutBadgeCorner() {
return this.i.ac2;
}
set calloutBadgeCorner(v) {
this.i.ac2 = +v;
}
/**
* Gets or sets the mapping property for an image displayed in the badge of callout annotation
* Examples #1: "DataColumnName" that contains full URL to an image: https://dl.infragistics.com/x/img/flags/USA.png
* Examples #2: "https://dl.infragistics.com/x/img/flags/{ISO3}.png" where "ISO3" is name of data column that contains image name: USA
*/
get calloutBadgeImageMemberPath() {
return this.i.adz;
}
set calloutBadgeImageMemberPath(v) {
this.i.adz = v;
}
/**
* Gets or sets whether to allow for custom callout styles.
*/
get isCustomCalloutStyleEnabled() {
return this.i.ach;
}
set isCustomCalloutStyleEnabled(v) {
this.i.ach = ensureBool(v);
}
/**
* Gets or sets whether to allow for custom callout styles.
*/
get isCustomCalloutRenderStyleEnabled() {
return this.i.acg;
}
set isCustomCalloutRenderStyleEnabled(v) {
this.i.acg = ensureBool(v);
}
/**
* Gets or sets the precision to use when values are used for the auto callout labels.
*/
get autoCalloutLabelPrecision() {
return this.i.adl;
}
set autoCalloutLabelPrecision(v) {
this.i.adl = +v;
}
/**
* Gets or sets the color to use for the callout text. Leave unset for an automatic value.
*/
get calloutTextColor() {
return brushToString(this.i.ah9);
}
set calloutTextColor(v) {
this.i.ah9 = stringToBrush(v);
}
/**
* Gets or sets the light color to use for the callout text. Leave unset for an automatic value.
*/
get calloutLightTextColor() {
return brushToString(this.i.ah7);
}
set calloutLightTextColor(v) {
this.i.ah7 = stringToBrush(v);
}
/**
* Gets or sets the dark color to use for the callout text. Leave unset for an automatic value.
*/
get calloutDarkTextColor() {
return brushToString(this.i.ah5);
}
set calloutDarkTextColor(v) {
this.i.ah5 = stringToBrush(v);
}
/**
* Gets or sets the brush that specifies how the backgrounds for the callouts of the layer are painted. Leave unset for an automatic value.
*/
get calloutBackground() {
return brushToString(this.i.ah2);
}
set calloutBackground(v) {
this.i.ah2 = stringToBrush(v);
}
/**
* Gets or sets whether the callouts that collide with the boundary should be truncated.
*/
get shouldTruncateOnBoundaryCollisions() {
return this.i.aci;
}
set shouldTruncateOnBoundaryCollisions(v) {
this.i.aci = ensureBool(v);
}
/**
* Gets or sets the precision to use displaying values for interpolated crosshair positions.
*/
get calloutInterpolatedValuePrecision() {
return this.i.adm;
}
set calloutInterpolatedValuePrecision(v) {
this.i.adm = +v;
}
/**
* Gets or sets the brush that specifies how the outlines for the callouts of the layer are painted.
*/
get calloutOutline() {
return brushToString(this.i.ah8);
}
set calloutOutline(v) {
this.i.ah8 = stringToBrush(v);
}
/**
* Gets or sets the brush that specifies how the leader lines for the callouts of the layer are painted.
*/
get calloutLeaderBrush() {
return brushToString(this.i.ah6);
}
set calloutLeaderBrush(v) {
this.i.ah6 = stringToBrush(v);
}
/**
* Gets or sets the left padding to use withing the callout. Leaving this NaN will use an automatic value related to the axis label margins.
*/
get calloutPaddingLeft() {
return this.i.add;
}
set calloutPaddingLeft(v) {
this.i.add = +v;
}
/**
* Gets or sets the top padding to use within the callout. Leaving this NaN will use an automatic value related to the axis label margins.
*/
get calloutPaddingTop() {
return this.i.adf;
}
set calloutPaddingTop(v) {
this.i.adf = +v;
}
/**
* Gets or sets the right padding to use within the callout. Leaving this NaN will use an automatic value related to the axis label margins.
*/
get calloutPaddingRight() {
return this.i.ade;
}
set calloutPaddingRight(v) {
this.i.ade = +v;
}
/**
* Gets or sets the bottom padding to use within the callout. Leaving this NaN will use an automatic value related to the axis label margins.
*/
get calloutPaddingBottom() {
return this.i.adc;
}
set calloutPaddingBottom(v) {
this.i.adc = +v;
}
/**
* Gets or sets the strategy to use for avoiding collisions between the callouts in this layer. Leave unset for an automatic value.
*/
get calloutCollisionMode() {
return this.i.aa0;
}
set calloutCollisionMode(v) {
this.i.aa0 = ensureEnum(CalloutCollisionMode_$type, v);
}
/**
* Gets or sets the padding to add to the callout positioning. Leave unset for an automatic value.
*/
get calloutPositionPadding() {
return this.i.adg;
}
set calloutPositionPadding(v) {
this.i.adg = +v;
}
/**
* Gets or sets the stroke thickness for the callout backing. Leave unset for an automatic value.
*/
get calloutStrokeThickness() {
return this.i.adh;
}
set calloutStrokeThickness(v) {
this.i.adh = +v;
}
/**
* Gets or sets the stroke thickness for the axis annotation backing. Leave unset for an automatic value.
*/
get textStyle() {
return this.i.afg;
}
set textStyle(v) {
this.i.afg = v;
}
findByName(name) {
var baseResult = super.findByName(name);
if (baseResult) {
return baseResult;
}
if (this.labelFormatSpecifiers != null && arrayFindByName(this.labelFormatSpecifiers, name)) {
return arrayFindByName(this.labelFormatSpecifiers, name);
}
if (this.targetSeries && this.targetSeries.name && this.targetSeries.name == name) {
return this.targetSeries;
}
if (this.allowedPositions != null && this.allowedPositions.findByName && this.allowedPositions.findByName(name)) {
return this.allowedPositions.findByName(name);
}
return null;
}
_styling(container, component, parent) {
super._styling(container, component, parent);
this._inStyling = true;
if (this.targetSeries && this.targetSeries._styling) {
this.targetSeries._styling(container, component, this);
}
this._inStyling = false;
}
getItemValue(item, memberPathName) {
let iv = this.i.kz(item, memberPathName);
return (iv);
}
/**
* Gets the value of a requested member path from the series.
* @param memberPathName * The property name of a valid member path for the series
*/
getMemberPathValue(memberPathName) {
let iv = this.i.mo(memberPathName);
return (iv);
}
/**
* Invalidates content of callout layer
*/
invalidateCalloutContent() {
this.i.af3();
}
/**
* Resets actual visiable range margin
*/
recalculateAxisRangeBuffer() {
this.i.af7();
}
/**
* Refresh axis buffer and callouts rendering
*/
refreshAxisBufferAndCalloutPositions() {
this.i.af8();
}
/**
* Force the callout labels to reevaluate their positions.
*/
refreshLabelPositions() {
this.i.af9();
}
getSeriesValuePosition(world, useInterpolation, skipUnknowns) {
let iv = this.i.ww(toPoint(world), useInterpolation, skipUnknowns);
return fromPoint(iv);
}
getItem(world) {
let iv = this.i.kw(toPoint(world));
return (iv);
}
/**
* Event raised when updating style of callout layer
*/
get calloutStyleUpdating() {
return this._calloutStyleUpdating;
}
set calloutStyleUpdating(ev) {
if (this._calloutStyleUpdating_wrapped !== null) {
this.i.calloutStyleUpdating = delegateRemove(this.i.calloutStyleUpdating, this._calloutStyleUpdating_wrapped);
this._calloutStyleUpdating_wrapped = null;
this._calloutStyleUpdating = null;
}
this._calloutStyleUpdating = ev;
this._calloutStyleUpdating_wrapped = (o, e) => {
let outerArgs = new IgrCalloutStyleUpdatingEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeCalloutStyleUpdating) {
this.beforeCalloutStyleUpdating(this, outerArgs);
}
if (this._calloutStyleUpdating) {
this._calloutStyleUpdating(this, outerArgs);
}
};
this.i.calloutStyleUpdating = delegateCombine(this.i.calloutStyleUpdating, this._calloutStyleUpdating_wrapped);
;
}
/**
* Event raised when updating style of callout layer
*/
get calloutRenderStyleUpdating() {
return this._calloutRenderStyleUpdating;
}
set calloutRenderStyleUpdating(ev) {
if (this._calloutRenderStyleUpdating_wrapped !== null) {
this.i.calloutRenderStyleUpdating = delegateRemove(this.i.calloutRenderStyleUpdating, this._calloutRenderStyleUpdating_wrapped);
this._calloutRenderStyleUpdating_wrapped = null;
this._calloutRenderStyleUpdating = null;
}
this._calloutRenderStyleUpdating = ev;
this._calloutRenderStyleUpdating_wrapped = (o, e) => {
let outerArgs = new IgrCalloutRenderStyleUpdatingEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeCalloutRenderStyleUpdating) {
this.beforeCalloutRenderStyleUpdating(this, outerArgs);
}
if (this._calloutRenderStyleUpdating) {
this._calloutRenderStyleUpdating(this, outerArgs);
}
};
this.i.calloutRenderStyleUpdating = delegateCombine(this.i.calloutRenderStyleUpdating, this._calloutRenderStyleUpdating_wrapped);
;
}
/**
* Raised to allow you to decide on the content for an automatically created callout.
*/
get calloutContentUpdating() {
return this._calloutContentUpdating;
}
set calloutContentUpdating(ev) {
if (this._calloutContentUpdating_wrapped !== null) {
this.i.calloutContentUpdating = delegateRemove(this.i.calloutContentUpdating, this._calloutContentUpdating_wrapped);
this._calloutContentUpdating_wrapped = null;
this._calloutContentUpdating = null;
}
this._calloutContentUpdating = ev;
this._calloutContentUpdating_wrapped = (o, e) => {
let outerArgs = new IgrCalloutContentUpdatingEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeCalloutContentUpdating) {
this.beforeCalloutContentUpdating(this, outerArgs);
}
if (this._calloutContentUpdating) {
this._calloutContentUpdating(this, outerArgs);
}
};
this.i.calloutContentUpdating = delegateCombine(this.i.calloutContentUpdating, this._calloutContentUpdating_wrapped);
;
}
/**
* Raised to allow you to decide on the label for an automatically created callout.
*/
get calloutLabelUpdating() {
return this._calloutLabelUpdating;
}
set calloutLabelUpdating(ev) {
if (this._calloutLabelUpdating_wrapped !== null) {
this.i.calloutLabelUpdating = delegateRemove(this.i.calloutLabelUpdating, this._calloutLabelUpdating_wrapped);
this._calloutLabelUpdating_wrapped = null;
this._calloutLabelUpdating = null;
}
this._calloutLabelUpdating = ev;
this._calloutLabelUpdating_wrapped = (o, e) => {
let outerArgs = new IgrCalloutLabelUpdatingEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeCalloutLabelUpdating) {
this.beforeCalloutLabelUpdating(this, outerArgs);
}
if (this._calloutLabelUpdating) {
this._calloutLabelUpdating(this, outerArgs);
}
};
this.i.calloutLabelUpdating = delegateCombine(this.i.calloutLabelUpdating, this._calloutLabelUpdating_wrapped);
;
}
/**
* Raised to allow you to select a target series for a data bound callout.
*/
get calloutSeriesSelecting() {
return this._calloutSeriesSelecting;
}
set calloutSeriesSelecting(ev) {
if (this._calloutSeriesSelecting_wrapped !== null) {
this.i.calloutSeriesSelecting = delegateRemove(this.i.calloutSeriesSelecting, this._calloutSeriesSelecting_wrapped);
this._calloutSeriesSelecting_wrapped = null;
this._calloutSeriesSelecting = null;
}
this._calloutSeriesSelecting = ev;
this._calloutSeriesSelecting_wrapped = (o, e) => {
let outerArgs = new IgrCalloutSeriesSelectingEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeCalloutSeriesSelecting) {
this.beforeCalloutSeriesSelecting(this, outerArgs);
}
if (this._calloutSeriesSelecting) {
this._calloutSeriesSelecting(this, outerArgs);
}
};
this.i.calloutSeriesSelecting = delegateCombine(this.i.calloutSeriesSelecting, this._calloutSeriesSelecting_wrapped);
;
}
}