scichart 3.2.528 → 3.2.538
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.
- package/Charting/ChartModifiers/CursorModifier.js +0 -1
- package/Charting/ChartModifiers/DataPointSelectionModifier.js +2 -5
- package/Charting/ChartModifiers/RolloverModifier.d.ts +5 -0
- package/Charting/ChartModifiers/RolloverModifier.js +18 -18
- package/Charting/ChartModifiers/VerticalSliceModifier.js +8 -5
- package/Charting/Model/BaseDataSeries.d.ts +3 -2
- package/Charting/Model/BaseDataSeries.js +8 -4
- package/Charting/Model/HlcDataSeries.d.ts +2 -1
- package/Charting/Model/HlcDataSeries.js +4 -2
- package/Charting/Model/IDataSeries.d.ts +2 -1
- package/Charting/Model/IPaletteProvider.d.ts +24 -0
- package/Charting/Model/IPaletteProvider.js +23 -7
- package/Charting/Model/OhlcDataSeries.d.ts +2 -1
- package/Charting/Model/OhlcDataSeries.js +4 -2
- package/Charting/Model/XyyDataSeries.d.ts +2 -1
- package/Charting/Model/XyyDataSeries.js +4 -2
- package/Charting/Visuals/Annotations/AnnotationBase.js +3 -3
- package/Charting/Visuals/Legend/SciChartLegend.js +4 -4
- package/Charting/Visuals/Legend/SciChartLegendBase.js +3 -4
- package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.d.ts +3 -0
- package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +15 -4
- package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +55 -8
- package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +7 -0
- package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +22 -3
- package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +2 -1
- package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.js +0 -6
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +18 -13
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.d.ts +10 -2
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +83 -23
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +4 -2
- package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +1 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +22 -16
- package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +16 -12
- package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +17 -11
- package/Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries.js +1 -1
- package/Charting/Visuals/RenderableSeries/HitTest/OhlcSeriesHitTestProvider.js +78 -0
- package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.d.ts +4 -0
- package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.js +6 -1
- package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +3 -0
- package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +5 -2
- package/Charting/Visuals/RenderableSeries/RenderDataTransforms/BaseRenderDataTransform.d.ts +30 -0
- package/Charting/Visuals/RenderableSeries/RenderDataTransforms/BaseRenderDataTransform.js +63 -0
- package/Charting/Visuals/RenderableSeries/RenderDataTransforms/SplineRenderDataTransform.d.ts +10 -0
- package/Charting/Visuals/RenderableSeries/RenderDataTransforms/SplineRenderDataTransform.js +53 -0
- package/Charting/Visuals/RenderableSeries/RenderDataTransforms/XyySplineRenderDataTransform.d.ts +10 -0
- package/Charting/Visuals/RenderableSeries/RenderDataTransforms/XyySplineRenderDataTransform.js +55 -0
- package/Charting/Visuals/RenderableSeries/RolloverModifier/RolloverModifierRenderableSeriesProps.js +2 -0
- package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.d.ts +13 -8
- package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +63 -46
- package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +12 -13
- package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +60 -52
- package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.d.ts +12 -7
- package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +54 -43
- package/Charting/Visuals/RenderableSeries/constants.d.ts +2 -1
- package/Charting/Visuals/RenderableSeries/constants.js +1 -0
- package/Charting/Visuals/createMaster.d.ts +12 -2
- package/Charting/Visuals/createMaster.js +14 -2
- package/Core/BuildStamp.d.ts +1 -1
- package/Core/BuildStamp.js +2 -2
- package/Core/ObservableArray.d.ts +11 -9
- package/Core/ObservableArray.js +44 -21
- package/_wasm/scichart.browser.js +1 -1
- package/_wasm/scichart2d.wasm +0 -0
- package/_wasm/scichart3d.wasm +0 -0
- package/index.d.ts +9 -0
- package/index.dev.js +754 -303
- package/index.js +27 -13
- package/index.min.js +1 -1
- package/package.json +1 -1
- package/types/TSciChart.d.ts +4 -0
- package/types/YRangeMode.d.ts +10 -0
- package/types/YRangeMode.js +14 -0
- package/utils/debug.d.ts +2 -0
- package/utils/debug.js +17 -0
|
@@ -735,7 +735,6 @@ var defaultTooltipTemplate = function (seriesInfos, svgAnnotation) {
|
|
|
735
735
|
var tooltipFill = svgAnnotation.containerBackground;
|
|
736
736
|
var tooltipStroke = svgAnnotation.textStroke;
|
|
737
737
|
var shadowColor = svgAnnotation.cursorModifier.tooltipShadow;
|
|
738
|
-
console.log(shadowColor);
|
|
739
738
|
var blur = "<feGaussianBlur result=\"blurOut\" in=\"offOut\" stdDeviation=\"3\" />";
|
|
740
739
|
if (shadowColor !== undefined) {
|
|
741
740
|
var shadowRGBA = (0, parseColor_1.parseColorToTArgb)(shadowColor);
|
|
@@ -200,11 +200,8 @@ var DataPointSelectionModifier = /** @class */ (function (_super) {
|
|
|
200
200
|
if (!translatedPoint) {
|
|
201
201
|
return;
|
|
202
202
|
}
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
this.startPoint = pointFromTrans;
|
|
206
|
-
this.isClicked = true;
|
|
207
|
-
}
|
|
203
|
+
this.startPoint = translatedPoint;
|
|
204
|
+
this.isClicked = true;
|
|
208
205
|
args.handled = true;
|
|
209
206
|
};
|
|
210
207
|
/**
|
|
@@ -91,6 +91,11 @@ export interface IRolloverModifierOptions extends IChartModifierBaseOptions {
|
|
|
91
91
|
* If this is set greater than the default of zero, the toolip will only show values for points in this radius, rather than all points on the vertical line
|
|
92
92
|
*/
|
|
93
93
|
hitTestRadius?: number;
|
|
94
|
+
/**
|
|
95
|
+
* Sets if the axis label for the rollover Line should be shown. default false.
|
|
96
|
+
* Customize this futher after the modifier has been created by setting properties on rolloverModifer.rolloverLineAnnotation
|
|
97
|
+
*/
|
|
98
|
+
showAxisLabel?: boolean;
|
|
94
99
|
}
|
|
95
100
|
/**
|
|
96
101
|
* The RolloverModifier provides tooltip and cursor behavior on a 2D {@link SciChartSurface}
|
|
@@ -118,7 +118,7 @@ var RolloverModifier = /** @class */ (function (_super) {
|
|
|
118
118
|
return _this;
|
|
119
119
|
}
|
|
120
120
|
RolloverModifier.prototype.createLine = function (options) {
|
|
121
|
-
var _a, _b;
|
|
121
|
+
var _a, _b, _c;
|
|
122
122
|
return new LineAnnotation_1.LineAnnotation({
|
|
123
123
|
xCoordinateMode: AnnotationBase_1.ECoordinateMode.Pixel,
|
|
124
124
|
yCoordinateMode: AnnotationBase_1.ECoordinateMode.Pixel,
|
|
@@ -126,7 +126,8 @@ var RolloverModifier = /** @class */ (function (_super) {
|
|
|
126
126
|
strokeThickness: (_a = options === null || options === void 0 ? void 0 : options.rolloverLineStrokeThickness) !== null && _a !== void 0 ? _a : 2,
|
|
127
127
|
stroke: (_b = options === null || options === void 0 ? void 0 : options.rolloverLineStroke) !== null && _b !== void 0 ? _b : SciChartSurfaceBase_1.SciChartSurfaceBase.DEFAULT_THEME.cursorLineBrush,
|
|
128
128
|
xAxisId: this.xAxisId,
|
|
129
|
-
yAxisId: this.yAxisId
|
|
129
|
+
yAxisId: this.yAxisId,
|
|
130
|
+
showLabel: (_c = options === null || options === void 0 ? void 0 : options.showAxisLabel) !== null && _c !== void 0 ? _c : false
|
|
130
131
|
});
|
|
131
132
|
};
|
|
132
133
|
/**
|
|
@@ -378,6 +379,7 @@ var RolloverModifier = /** @class */ (function (_super) {
|
|
|
378
379
|
};
|
|
379
380
|
/** @inheritDoc */
|
|
380
381
|
RolloverModifier.prototype.toJSON = function () {
|
|
382
|
+
var _a, _b;
|
|
381
383
|
var json = _super.prototype.toJSON.call(this);
|
|
382
384
|
var options = {
|
|
383
385
|
snapToDataPoint: this.snapToDataPoint,
|
|
@@ -389,6 +391,7 @@ var RolloverModifier = /** @class */ (function (_super) {
|
|
|
389
391
|
rolloverLineStrokeThickness: this.rolloverLineStrokeThickness,
|
|
390
392
|
showRolloverLine: this.showRolloverLine,
|
|
391
393
|
showTooltip: this.showTooltip,
|
|
394
|
+
showAxisLabel: (_b = (_a = this.rolloverLineAnnotation) === null || _a === void 0 ? void 0 : _a.showLabel) !== null && _b !== void 0 ? _b : false,
|
|
392
395
|
tooltipDataTemplate: this.typeMap.get("tooltipDataTemplate"),
|
|
393
396
|
tooltipLegendOffsetX: this.tooltipLegendOffsetX,
|
|
394
397
|
tooltipLegendOffsetY: this.tooltipLegendOffsetY,
|
|
@@ -465,12 +468,15 @@ var RolloverModifier = /** @class */ (function (_super) {
|
|
|
465
468
|
}
|
|
466
469
|
this.getRolloverProps(rs).rolloverModifier = this;
|
|
467
470
|
createAnnotations(rs, this.getRolloverProps(rs), this.getRolloverProps1(rs), this.placementDivIdProperty);
|
|
468
|
-
this.
|
|
469
|
-
this.parentSurface.modifierAnnotations.
|
|
470
|
-
|
|
471
|
-
this.
|
|
472
|
-
|
|
473
|
-
|
|
471
|
+
var marker = this.getRolloverProps(rs).marker;
|
|
472
|
+
if (!this.parentSurface.modifierAnnotations.contains(marker)) {
|
|
473
|
+
this.parentSurface.modifierAnnotations.add(this.getRolloverProps(rs).marker);
|
|
474
|
+
this.parentSurface.modifierAnnotations.add(this.getRolloverProps(rs).tooltip);
|
|
475
|
+
if (rs.type === SeriesType_1.ESeriesType.BandSeries) {
|
|
476
|
+
this.getRolloverProps1(rs).rolloverModifier = this;
|
|
477
|
+
this.parentSurface.modifierAnnotations.add(this.getRolloverProps1(rs).marker);
|
|
478
|
+
this.parentSurface.modifierAnnotations.add(this.getRolloverProps1(rs).tooltip);
|
|
479
|
+
}
|
|
474
480
|
}
|
|
475
481
|
};
|
|
476
482
|
RolloverModifier.prototype.getRolloverProps = function (rs) {
|
|
@@ -789,11 +795,8 @@ var createAnnotations = function (rs, rolloverModifierProps, rolloverModifierPro
|
|
|
789
795
|
var _a, _b, _c, _d;
|
|
790
796
|
if (!rolloverModifierProps.marker) {
|
|
791
797
|
rolloverModifierProps.marker = new RolloverMarkerSvgAnnotation_1.RolloverMarkerSvgAnnotation(rolloverModifierProps);
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
rolloverModifierProps.marker.xAxisId = rs.xAxisId;
|
|
795
|
-
rolloverModifierProps.marker.yAxisId = rs.yAxisId;
|
|
796
|
-
}
|
|
798
|
+
rolloverModifierProps.marker.xAxisId = rs.xAxisId;
|
|
799
|
+
rolloverModifierProps.marker.yAxisId = rs.yAxisId;
|
|
797
800
|
}
|
|
798
801
|
if (!rolloverModifierProps.tooltip) {
|
|
799
802
|
rolloverModifierProps.tooltipTitle = (_b = (_a = rolloverModifierProps.tooltipTitle) !== null && _a !== void 0 ? _a : rs.getDataSeriesName()) !== null && _b !== void 0 ? _b : "";
|
|
@@ -803,11 +806,8 @@ var createAnnotations = function (rs, rolloverModifierProps, rolloverModifierPro
|
|
|
803
806
|
seriesType: rs.type,
|
|
804
807
|
placementDivId: placementDivId
|
|
805
808
|
});
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
rolloverModifierProps.tooltip.xAxisId = rs.xAxisId;
|
|
809
|
-
rolloverModifierProps.tooltip.yAxisId = rs.yAxisId;
|
|
810
|
-
}
|
|
809
|
+
rolloverModifierProps.tooltip.xAxisId = rs.xAxisId;
|
|
810
|
+
rolloverModifierProps.tooltip.yAxisId = rs.yAxisId;
|
|
811
811
|
}
|
|
812
812
|
if (rs.type === SeriesType_1.ESeriesType.BandSeries) {
|
|
813
813
|
var bandRs = rs;
|
|
@@ -124,19 +124,22 @@ var VerticalSliceModifier = /** @class */ (function (_super) {
|
|
|
124
124
|
var xAxis = this.parentSurface.getXAxisById(this.xAxisId);
|
|
125
125
|
var coordCalc = xAxis.getCurrentCoordinateCalculator();
|
|
126
126
|
if (this.xCoordinateMode === AnnotationBase_1.ECoordinateMode.Pixel) {
|
|
127
|
-
this.x1 = (0, translate_1.translateToNotScaled)(x);
|
|
127
|
+
this.x1 = Math.min(Math.max(xAxis.viewRect.left, (0, translate_1.translateToNotScaled)(x)), xAxis.viewRect.right);
|
|
128
128
|
}
|
|
129
129
|
else if (this.xCoordinateMode === AnnotationBase_1.ECoordinateMode.Relative) {
|
|
130
|
-
this.
|
|
131
|
-
|
|
132
|
-
|
|
130
|
+
var newX = (x - (this.isVerticalChart() ? xAxis.viewRect.top : xAxis.viewRect.left)) /
|
|
131
|
+
coordCalc.viewportDimension;
|
|
132
|
+
this.x1 = Math.min(Math.max(0, newX), 1);
|
|
133
133
|
}
|
|
134
134
|
else {
|
|
135
135
|
// DataValue
|
|
136
136
|
var xt = this.isVerticalChart()
|
|
137
137
|
? (0, translate_1.translateFromCanvasToSeriesViewRectY)(x, this.parentSurface.seriesViewRect)
|
|
138
138
|
: (0, translate_1.translateFromCanvasToSeriesViewRectX)(x, this.parentSurface.seriesViewRect);
|
|
139
|
-
|
|
139
|
+
var newX = coordCalc.getDataValue(xt);
|
|
140
|
+
if (!isNaN(newX)) {
|
|
141
|
+
this.x1 = newX;
|
|
142
|
+
}
|
|
140
143
|
}
|
|
141
144
|
// Consider optional snap to dataPoint here
|
|
142
145
|
this.update();
|
|
@@ -5,6 +5,7 @@ import { NumberRange } from "../../Core/NumberRange";
|
|
|
5
5
|
import { NumberArray } from "../../types/NumberArray";
|
|
6
6
|
import { ESearchMode } from "../../types/SearchMode";
|
|
7
7
|
import { SCRTDoubleVector, TSciChart } from "../../types/TSciChart";
|
|
8
|
+
import { EYRangeMode } from "../../types/YRangeMode";
|
|
8
9
|
import { SeriesAnimation } from "../Visuals/RenderableSeries/Animations/SeriesAnimation";
|
|
9
10
|
import { IDataDistributionCalculator } from "./DataDistributionCalculator/IDataDistributionCalculator";
|
|
10
11
|
import { IDoubleVectorProvider } from "./DoubleVectorProvider";
|
|
@@ -218,7 +219,7 @@ export declare abstract class BaseDataSeries extends DeletableEntity implements
|
|
|
218
219
|
/** @inheritDoc */
|
|
219
220
|
getXRange(dataSeriesValueType?: EDataSeriesValueType): NumberRange;
|
|
220
221
|
/** @inheritDoc */
|
|
221
|
-
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType): NumberRange;
|
|
222
|
+
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType, yRangeMode?: EYRangeMode): NumberRange;
|
|
222
223
|
/** @inheritDoc */
|
|
223
224
|
getIndicesRange(xRange: NumberRange, isCategoryData?: boolean, downSearchMode?: ESearchMode, upSearchMode?: ESearchMode): NumberRange;
|
|
224
225
|
/** @inheritDoc */
|
|
@@ -289,4 +290,4 @@ export declare abstract class BaseDataSeries extends DeletableEntity implements
|
|
|
289
290
|
}
|
|
290
291
|
/** @ignore */
|
|
291
292
|
export declare const getIndicesRange: (webAssemblyContext: TSciChart, xValues: SCRTDoubleVector, xRange: NumberRange, isSorted: boolean, downSearchMode?: ESearchMode, upSearchMode?: ESearchMode) => NumberRange;
|
|
292
|
-
export declare const getWindowedYRange: (webAssemblyContext: TSciChart, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis: boolean, isSorted: boolean) => NumberRange;
|
|
293
|
+
export declare const getWindowedYRange: (webAssemblyContext: TSciChart, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis: boolean, isSorted: boolean, minSearchMode?: ESearchMode, maxSearchMode?: ESearchMode) => NumberRange;
|
|
@@ -35,6 +35,7 @@ var Guard_1 = require("../../Core/Guard");
|
|
|
35
35
|
var NumberRange_1 = require("../../Core/NumberRange");
|
|
36
36
|
var BaseType_1 = require("../../types/BaseType");
|
|
37
37
|
var SearchMode_1 = require("../../types/SearchMode");
|
|
38
|
+
var YRangeMode_1 = require("../../types/YRangeMode");
|
|
38
39
|
var array_1 = require("../../utils/array");
|
|
39
40
|
var guid_1 = require("../../utils/guid");
|
|
40
41
|
var isRealNumber_1 = require("../../utils/isRealNumber");
|
|
@@ -338,12 +339,13 @@ var BaseDataSeries = /** @class */ (function (_super) {
|
|
|
338
339
|
return new NumberRange_1.NumberRange(0, 0);
|
|
339
340
|
};
|
|
340
341
|
/** @inheritDoc */
|
|
341
|
-
BaseDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType) {
|
|
342
|
+
BaseDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType, yRangeMode) {
|
|
342
343
|
if (isXCategoryAxis === void 0) { isXCategoryAxis = false; }
|
|
343
344
|
if (dataSeriesValueType === void 0) { dataSeriesValueType = IDataSeries_1.EDataSeriesValueType.Default; }
|
|
345
|
+
if (yRangeMode === void 0) { yRangeMode = YRangeMode_1.EYRangeMode.Visible; }
|
|
344
346
|
var xValues = this.getXValues(dataSeriesValueType);
|
|
345
347
|
var yValues = this.getYValues(dataSeriesValueType);
|
|
346
|
-
return (0, exports.getWindowedYRange)(this.webAssemblyContext, xValues, yValues, xRange, getPositiveRange, isXCategoryAxis, this.dataDistributionCalculator.isSortedAscending);
|
|
348
|
+
return (0, exports.getWindowedYRange)(this.webAssemblyContext, xValues, yValues, xRange, getPositiveRange, isXCategoryAxis, this.dataDistributionCalculator.isSortedAscending, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundUp : SearchMode_1.ESearchMode.RoundDown, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundDown : SearchMode_1.ESearchMode.RoundUp);
|
|
347
349
|
};
|
|
348
350
|
/** @inheritDoc */
|
|
349
351
|
BaseDataSeries.prototype.getIndicesRange = function (xRange, isCategoryData, downSearchMode, upSearchMode) {
|
|
@@ -703,7 +705,9 @@ var getIndicesRange = function (webAssemblyContext, xValues, xRange, isSorted, d
|
|
|
703
705
|
};
|
|
704
706
|
exports.getIndicesRange = getIndicesRange;
|
|
705
707
|
var getWindowedYRange = function (webAssemblyContext, xValues, yValues, xRange, getPositiveRange, isXCategoryAxis, // false
|
|
706
|
-
isSorted) {
|
|
708
|
+
isSorted, minSearchMode, maxSearchMode) {
|
|
709
|
+
if (minSearchMode === void 0) { minSearchMode = SearchMode_1.ESearchMode.RoundUp; }
|
|
710
|
+
if (maxSearchMode === void 0) { maxSearchMode = SearchMode_1.ESearchMode.RoundDown; }
|
|
707
711
|
// TODO: getPositiveRange
|
|
708
712
|
var count = xValues.size();
|
|
709
713
|
// if one point
|
|
@@ -714,7 +718,7 @@ isSorted) {
|
|
|
714
718
|
}
|
|
715
719
|
var indicesRange = isXCategoryAxis
|
|
716
720
|
? xRange
|
|
717
|
-
: (0, exports.getIndicesRange)(webAssemblyContext, xValues, xRange, isSorted,
|
|
721
|
+
: (0, exports.getIndicesRange)(webAssemblyContext, xValues, xRange, isSorted, minSearchMode, maxSearchMode);
|
|
718
722
|
var iMin = Math.max(Math.floor(indicesRange.min), 0);
|
|
719
723
|
var iMax = Math.min(Math.ceil(indicesRange.max), count - 1);
|
|
720
724
|
if (iMax < iMin) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NumberRange } from "../../Core/NumberRange";
|
|
2
2
|
import { NumberArray } from "../../types/NumberArray";
|
|
3
3
|
import { SCRTDoubleVector, TSciChart } from "../../types/TSciChart";
|
|
4
|
+
import { EYRangeMode } from "../../types/YRangeMode";
|
|
4
5
|
import { SeriesAnimation } from "../Visuals/RenderableSeries/Animations/SeriesAnimation";
|
|
5
6
|
import { BaseDataSeries, IBaseDataSeriesOptions } from "./BaseDataSeries";
|
|
6
7
|
import { EDataSeriesType, EDataSeriesValueType } from "./IDataSeries";
|
|
@@ -172,7 +173,7 @@ export declare class HlcDataSeries extends BaseDataSeries {
|
|
|
172
173
|
/** @inheritDoc */
|
|
173
174
|
getXRange(dataSeriesValueType?: EDataSeriesValueType, isHorizontalDirection?: boolean, hasHighCap?: boolean, hasLowCap?: boolean): NumberRange;
|
|
174
175
|
/** @inheritDoc */
|
|
175
|
-
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType, isHorizontalDirection?: boolean, hasHighCap?: boolean, hasLowCap?: boolean): NumberRange;
|
|
176
|
+
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType, yRangeMode?: EYRangeMode, isHorizontalDirection?: boolean, hasHighCap?: boolean, hasLowCap?: boolean): NumberRange;
|
|
176
177
|
/** @inheritDoc */
|
|
177
178
|
delete(): void;
|
|
178
179
|
/** @inheritDoc */
|
|
@@ -21,6 +21,7 @@ var Guard_1 = require("../../Core/Guard");
|
|
|
21
21
|
var NumberRange_1 = require("../../Core/NumberRange");
|
|
22
22
|
var NumberArray_1 = require("../../types/NumberArray");
|
|
23
23
|
var SearchMode_1 = require("../../types/SearchMode");
|
|
24
|
+
var YRangeMode_1 = require("../../types/YRangeMode");
|
|
24
25
|
var appendDoubleVectorFromJsArray_1 = require("../../utils/ccall/appendDoubleVectorFromJsArray");
|
|
25
26
|
var isRealNumber_1 = require("../../utils/isRealNumber");
|
|
26
27
|
var animationHelpers_1 = require("../Visuals/RenderableSeries/Animations/animationHelpers");
|
|
@@ -392,9 +393,10 @@ var HlcDataSeries = /** @class */ (function (_super) {
|
|
|
392
393
|
return new NumberRange_1.NumberRange(0, 0);
|
|
393
394
|
};
|
|
394
395
|
/** @inheritDoc */
|
|
395
|
-
HlcDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType, isHorizontalDirection, hasHighCap, hasLowCap) {
|
|
396
|
+
HlcDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType, yRangeMode, isHorizontalDirection, hasHighCap, hasLowCap) {
|
|
396
397
|
if (isXCategoryAxis === void 0) { isXCategoryAxis = false; }
|
|
397
398
|
if (dataSeriesValueType === void 0) { dataSeriesValueType = IDataSeries_1.EDataSeriesValueType.Default; }
|
|
399
|
+
if (yRangeMode === void 0) { yRangeMode = YRangeMode_1.EYRangeMode.Visible; }
|
|
398
400
|
if (isHorizontalDirection === void 0) { isHorizontalDirection = false; }
|
|
399
401
|
var _a = this.getHlcValues(dataSeriesValueType), hValues = _a.hValues, lValues = _a.lValues, yValues = _a.yValues;
|
|
400
402
|
// TODO: getPositiveRange
|
|
@@ -412,7 +414,7 @@ var HlcDataSeries = /** @class */ (function (_super) {
|
|
|
412
414
|
}
|
|
413
415
|
var indicesRange = isXCategoryAxis
|
|
414
416
|
? xRange
|
|
415
|
-
: this.getIndicesRange(xRange, false, SearchMode_1.ESearchMode.RoundUp, SearchMode_1.ESearchMode.RoundDown);
|
|
417
|
+
: this.getIndicesRange(xRange, false, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundUp : SearchMode_1.ESearchMode.RoundDown, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundDown : SearchMode_1.ESearchMode.RoundUp);
|
|
416
418
|
var yMin = Number.MAX_VALUE;
|
|
417
419
|
var yMax = Number.MIN_VALUE;
|
|
418
420
|
var iMin = Math.max(Math.floor(indicesRange.min), 0);
|
|
@@ -4,6 +4,7 @@ import { IDeletable } from "../../Core/IDeletable";
|
|
|
4
4
|
import { NumberRange } from "../../Core/NumberRange";
|
|
5
5
|
import { ESearchMode } from "../../types/SearchMode";
|
|
6
6
|
import { SCRTDoubleVector } from "../../types/TSciChart";
|
|
7
|
+
import { EYRangeMode } from "../../types/YRangeMode";
|
|
7
8
|
import { IDataDistributionCalculator } from "./DataDistributionCalculator/IDataDistributionCalculator";
|
|
8
9
|
/**
|
|
9
10
|
* Defines {@link BaseDataSeries | DataSeries} types available within SciChart's
|
|
@@ -215,7 +216,7 @@ export interface IDataSeries extends IDeletable {
|
|
|
215
216
|
* an axis type which measures by x-index not x-value
|
|
216
217
|
* @param dataSeriesValueType The data series values to use {@link EDataSeriesValueType}
|
|
217
218
|
*/
|
|
218
|
-
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isCategoryAxis: boolean, dataSeriesValueType?: EDataSeriesValueType): NumberRange;
|
|
219
|
+
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isCategoryAxis: boolean, dataSeriesValueType?: EDataSeriesValueType, yRangeMode?: EYRangeMode): NumberRange;
|
|
219
220
|
/**
|
|
220
221
|
* Convert the object to a definition that can be serialized to JSON, or used directly with the builder api
|
|
221
222
|
* @param excludeData if set true, data values will not be included in the json.
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { TPaletteProviderDefinition } from "../../Builder/buildSeries";
|
|
2
|
+
import { SCRTDoubleVector } from "../../types/TSciChart";
|
|
3
|
+
import { TPalettingState } from "../Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider";
|
|
2
4
|
import { IRenderableSeries } from "../Visuals/RenderableSeries/IRenderableSeries";
|
|
3
5
|
import { IPointMetadata } from "./IPointMetadata";
|
|
4
6
|
/**
|
|
@@ -19,9 +21,22 @@ export interface IPaletteProvider {
|
|
|
19
21
|
* Called when the PaletteProvider instance is detached from a {@link BaseRenderableSeries | RenderableSeries}.
|
|
20
22
|
*/
|
|
21
23
|
onDetached(): void;
|
|
24
|
+
/**
|
|
25
|
+
* Set true if the paletting does not depend on the visible Range. This prevents the palette being recalculated if only the visible range changes.
|
|
26
|
+
*/
|
|
27
|
+
isRangeIndependant?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Called once before the per-vertex loop starts.
|
|
30
|
+
* @Returns true if paletting should be forced to run. If this exists and returns false, the existing paletting state is reused if possible.
|
|
31
|
+
* Use this to force the palette to be recalculated if some external parameter to it changes.
|
|
32
|
+
*/
|
|
33
|
+
shouldUpdatePalette?(): boolean;
|
|
22
34
|
/** Convert the object to a definition that can be serialized to JSON, or used directly with the builder api */
|
|
23
35
|
toJSON?(): TPaletteProviderDefinition;
|
|
24
36
|
}
|
|
37
|
+
export interface IAdvancedPaletteProvider extends IPaletteProvider {
|
|
38
|
+
applyPaletting(palettingState: TPalettingState, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, indexes: SCRTDoubleVector, startIndex: number, count: number): void;
|
|
39
|
+
}
|
|
25
40
|
export declare enum EStrokePaletteMode {
|
|
26
41
|
GRADIENT = "GRADIENT",
|
|
27
42
|
SOLID = "SOLID"
|
|
@@ -122,6 +137,7 @@ export declare class DefaultPaletteProvider implements IStrokePaletteProvider, I
|
|
|
122
137
|
static createEmpty(): DefaultPaletteProvider;
|
|
123
138
|
strokePaletteMode: EStrokePaletteMode;
|
|
124
139
|
fillPaletteMode: EFillPaletteMode;
|
|
140
|
+
protected parentSeries: IRenderableSeries;
|
|
125
141
|
/**
|
|
126
142
|
* @inheritDoc
|
|
127
143
|
*/
|
|
@@ -130,6 +146,14 @@ export declare class DefaultPaletteProvider implements IStrokePaletteProvider, I
|
|
|
130
146
|
* @inheritDoc
|
|
131
147
|
*/
|
|
132
148
|
onDetached(): void;
|
|
149
|
+
/**
|
|
150
|
+
* @inheritDoc
|
|
151
|
+
*/
|
|
152
|
+
get isRangeIndependant(): boolean;
|
|
153
|
+
/**
|
|
154
|
+
* @inheritDoc
|
|
155
|
+
*/
|
|
156
|
+
shouldUpdatePalette(): boolean;
|
|
133
157
|
/**
|
|
134
158
|
* @inheritDoc
|
|
135
159
|
*/
|
|
@@ -30,8 +30,6 @@ var DefaultPaletteProvider = /** @class */ (function () {
|
|
|
30
30
|
}
|
|
31
31
|
DefaultPaletteProvider.createEmpty = function () {
|
|
32
32
|
var pp = new DefaultPaletteProvider();
|
|
33
|
-
pp.onAttached = undefined;
|
|
34
|
-
pp.onDetached = undefined;
|
|
35
33
|
pp.overrideFillArgb = undefined;
|
|
36
34
|
pp.overrideStrokeArgb = undefined;
|
|
37
35
|
pp.overridePointMarkerArgb = undefined;
|
|
@@ -40,13 +38,31 @@ var DefaultPaletteProvider = /** @class */ (function () {
|
|
|
40
38
|
/**
|
|
41
39
|
* @inheritDoc
|
|
42
40
|
*/
|
|
43
|
-
|
|
44
|
-
|
|
41
|
+
DefaultPaletteProvider.prototype.onAttached = function (parentSeries) {
|
|
42
|
+
this.parentSeries = parentSeries;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* @inheritDoc
|
|
46
|
+
*/
|
|
47
|
+
DefaultPaletteProvider.prototype.onDetached = function () {
|
|
48
|
+
this.parentSeries = undefined;
|
|
49
|
+
};
|
|
50
|
+
Object.defineProperty(DefaultPaletteProvider.prototype, "isRangeIndependant", {
|
|
51
|
+
/**
|
|
52
|
+
* @inheritDoc
|
|
53
|
+
*/
|
|
54
|
+
get: function () {
|
|
55
|
+
return false;
|
|
56
|
+
},
|
|
57
|
+
enumerable: false,
|
|
58
|
+
configurable: true
|
|
59
|
+
});
|
|
45
60
|
/**
|
|
46
61
|
* @inheritDoc
|
|
47
62
|
*/
|
|
48
|
-
|
|
49
|
-
|
|
63
|
+
DefaultPaletteProvider.prototype.shouldUpdatePalette = function () {
|
|
64
|
+
return false;
|
|
65
|
+
};
|
|
50
66
|
/**
|
|
51
67
|
* @inheritDoc
|
|
52
68
|
*/
|
|
@@ -66,7 +82,7 @@ var DefaultPaletteProvider = /** @class */ (function () {
|
|
|
66
82
|
return undefined;
|
|
67
83
|
};
|
|
68
84
|
DefaultPaletteProvider.prototype.toJSON = function () {
|
|
69
|
-
// No need to serialise this as it is created
|
|
85
|
+
// No need to serialise this as it is created automaticaly if a palletprovider is not specified.
|
|
70
86
|
return undefined;
|
|
71
87
|
};
|
|
72
88
|
return DefaultPaletteProvider;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NumberRange } from "../../Core/NumberRange";
|
|
2
2
|
import { NumberArray } from "../../types/NumberArray";
|
|
3
3
|
import { SCRTDoubleVector, TSciChart } from "../../types/TSciChart";
|
|
4
|
+
import { EYRangeMode } from "../../types/YRangeMode";
|
|
4
5
|
import { SeriesAnimation } from "../Visuals/RenderableSeries/Animations/SeriesAnimation";
|
|
5
6
|
import { BaseDataSeries, IBaseDataSeriesOptions } from "./BaseDataSeries";
|
|
6
7
|
import { EDataSeriesType, EDataSeriesValueType } from "./IDataSeries";
|
|
@@ -199,7 +200,7 @@ export declare class OhlcDataSeries extends BaseDataSeries {
|
|
|
199
200
|
/** @inheritDoc */
|
|
200
201
|
delete(): void;
|
|
201
202
|
/** @inheritDoc */
|
|
202
|
-
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType): NumberRange;
|
|
203
|
+
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType, yRangeMode?: EYRangeMode): NumberRange;
|
|
203
204
|
/** @inheritDoc */
|
|
204
205
|
createAnimationVectors(): void;
|
|
205
206
|
/** @inheritDoc */
|
|
@@ -21,6 +21,7 @@ var Guard_1 = require("../../Core/Guard");
|
|
|
21
21
|
var NumberRange_1 = require("../../Core/NumberRange");
|
|
22
22
|
var NumberArray_1 = require("../../types/NumberArray");
|
|
23
23
|
var SearchMode_1 = require("../../types/SearchMode");
|
|
24
|
+
var YRangeMode_1 = require("../../types/YRangeMode");
|
|
24
25
|
var appendDoubleVectorFromJsArray_1 = require("../../utils/ccall/appendDoubleVectorFromJsArray");
|
|
25
26
|
var animationHelpers_1 = require("../Visuals/RenderableSeries/Animations/animationHelpers");
|
|
26
27
|
var BaseDataSeries_1 = require("./BaseDataSeries");
|
|
@@ -353,9 +354,10 @@ var OhlcDataSeries = /** @class */ (function (_super) {
|
|
|
353
354
|
_super.prototype.delete.call(this);
|
|
354
355
|
};
|
|
355
356
|
/** @inheritDoc */
|
|
356
|
-
OhlcDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType) {
|
|
357
|
+
OhlcDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType, yRangeMode) {
|
|
357
358
|
if (isXCategoryAxis === void 0) { isXCategoryAxis = false; }
|
|
358
359
|
if (dataSeriesValueType === void 0) { dataSeriesValueType = IDataSeries_1.EDataSeriesValueType.Default; }
|
|
360
|
+
if (yRangeMode === void 0) { yRangeMode = YRangeMode_1.EYRangeMode.Visible; }
|
|
359
361
|
var _a = this.getOHLCValues(dataSeriesValueType), closeValues = _a.closeValues, highValues = _a.highValues, lowValues = _a.lowValues;
|
|
360
362
|
if (this.count() === 1) {
|
|
361
363
|
var y = closeValues.get(0);
|
|
@@ -363,7 +365,7 @@ var OhlcDataSeries = /** @class */ (function (_super) {
|
|
|
363
365
|
}
|
|
364
366
|
var indicesRange = isXCategoryAxis
|
|
365
367
|
? xRange
|
|
366
|
-
: this.getIndicesRange(xRange, false, SearchMode_1.ESearchMode.RoundUp, SearchMode_1.ESearchMode.RoundDown);
|
|
368
|
+
: this.getIndicesRange(xRange, false, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundUp : SearchMode_1.ESearchMode.RoundDown, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundDown : SearchMode_1.ESearchMode.RoundUp);
|
|
367
369
|
var yMin = Number.MAX_VALUE;
|
|
368
370
|
var yMax = Number.MIN_VALUE;
|
|
369
371
|
var iMin = Math.max(indicesRange.min, 0);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NumberRange } from "../../Core/NumberRange";
|
|
2
2
|
import { NumberArray } from "../../types/NumberArray";
|
|
3
3
|
import { SCRTDoubleVector, TSciChart } from "../../types/TSciChart";
|
|
4
|
+
import { EYRangeMode } from "../../types/YRangeMode";
|
|
4
5
|
import { SeriesAnimation } from "../Visuals/RenderableSeries/Animations/SeriesAnimation";
|
|
5
6
|
import { BaseDataSeries, IBaseDataSeriesOptions } from "./BaseDataSeries";
|
|
6
7
|
import { EDataSeriesType, EDataSeriesValueType } from "./IDataSeries";
|
|
@@ -148,7 +149,7 @@ export declare class XyyDataSeries extends BaseDataSeries {
|
|
|
148
149
|
*/
|
|
149
150
|
clear(): void;
|
|
150
151
|
/** @inheritDoc */
|
|
151
|
-
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType): NumberRange;
|
|
152
|
+
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType, yRangeMode?: EYRangeMode): NumberRange;
|
|
152
153
|
/** @inheritDoc */
|
|
153
154
|
delete(): void;
|
|
154
155
|
createAnimationVectors(): void;
|
|
@@ -21,6 +21,7 @@ var Guard_1 = require("../../Core/Guard");
|
|
|
21
21
|
var NumberRange_1 = require("../../Core/NumberRange");
|
|
22
22
|
var NumberArray_1 = require("../../types/NumberArray");
|
|
23
23
|
var SearchMode_1 = require("../../types/SearchMode");
|
|
24
|
+
var YRangeMode_1 = require("../../types/YRangeMode");
|
|
24
25
|
var appendDoubleVectorFromJsArray_1 = require("../../utils/ccall/appendDoubleVectorFromJsArray");
|
|
25
26
|
var isRealNumber_1 = require("../../utils/isRealNumber");
|
|
26
27
|
var animationHelpers_1 = require("../Visuals/RenderableSeries/Animations/animationHelpers");
|
|
@@ -290,9 +291,10 @@ var XyyDataSeries = /** @class */ (function (_super) {
|
|
|
290
291
|
}
|
|
291
292
|
};
|
|
292
293
|
/** @inheritDoc */
|
|
293
|
-
XyyDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType) {
|
|
294
|
+
XyyDataSeries.prototype.getWindowedYRange = function (xRange, getPositiveRange, isXCategoryAxis, dataSeriesValueType, yRangeMode) {
|
|
294
295
|
if (isXCategoryAxis === void 0) { isXCategoryAxis = false; }
|
|
295
296
|
if (dataSeriesValueType === void 0) { dataSeriesValueType = IDataSeries_1.EDataSeriesValueType.Default; }
|
|
297
|
+
if (yRangeMode === void 0) { yRangeMode = YRangeMode_1.EYRangeMode.Visible; }
|
|
296
298
|
var _a = this.getYY1Values(dataSeriesValueType), yValues = _a.yValues, y1Values = _a.y1Values;
|
|
297
299
|
// TODO: getPositiveRange
|
|
298
300
|
// if one point
|
|
@@ -303,7 +305,7 @@ var XyyDataSeries = /** @class */ (function (_super) {
|
|
|
303
305
|
}
|
|
304
306
|
var indicesRange = isXCategoryAxis
|
|
305
307
|
? xRange
|
|
306
|
-
: this.getIndicesRange(xRange, false, SearchMode_1.ESearchMode.RoundUp, SearchMode_1.ESearchMode.RoundDown);
|
|
308
|
+
: this.getIndicesRange(xRange, false, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundUp : SearchMode_1.ESearchMode.RoundDown, yRangeMode === YRangeMode_1.EYRangeMode.Visible ? SearchMode_1.ESearchMode.RoundDown : SearchMode_1.ESearchMode.RoundUp);
|
|
307
309
|
var iMin = Math.max(Math.floor(indicesRange.min), 0);
|
|
308
310
|
var iMax = Math.min(Math.ceil(indicesRange.max), this.count() - 1);
|
|
309
311
|
if (iMax < iMin) {
|
|
@@ -809,8 +809,8 @@ var AnnotationBase = /** @class */ (function (_super) {
|
|
|
809
809
|
case ECoordinateMode.Relative: {
|
|
810
810
|
// Value is 0.5 means 50% of the viewport size
|
|
811
811
|
return this.isSvgAnnotation
|
|
812
|
-
? (value * calculator.viewportDimension) / DpiHelper_1.DpiHelper.PIXEL_RATIO
|
|
813
|
-
: value * calculator.viewportDimension;
|
|
812
|
+
? (value * calculator.viewportDimension + calculator.offset) / DpiHelper_1.DpiHelper.PIXEL_RATIO
|
|
813
|
+
: value * calculator.viewportDimension + calculator.offset;
|
|
814
814
|
}
|
|
815
815
|
default: {
|
|
816
816
|
throw new Error("AnnotationBase.getCoordinate with CoordinateMode.".concat(coordinateMode, " is not implemented"));
|
|
@@ -948,7 +948,7 @@ var AnnotationBase = /** @class */ (function (_super) {
|
|
|
948
948
|
return value !== undefined && value !== null ? calculator.getDataValue(value) : undefined;
|
|
949
949
|
}
|
|
950
950
|
case ECoordinateMode.Relative: {
|
|
951
|
-
return value / calculator.viewportDimension;
|
|
951
|
+
return (value - calculator.offset) / calculator.viewportDimension;
|
|
952
952
|
}
|
|
953
953
|
default: {
|
|
954
954
|
throw new Error("Not implemented");
|
|
@@ -125,9 +125,9 @@ var SciChartLegend = /** @class */ (function (_super) {
|
|
|
125
125
|
};
|
|
126
126
|
/** @inheritDoc */
|
|
127
127
|
SciChartLegend.prototype.getInnerHTML = function () {
|
|
128
|
-
var _a, _b;
|
|
129
|
-
var backgroundColor = (_a = this.backgroundColor) !== null && _a !== void 0 ? _a : this.parentSurfaceProperty.themeProvider.legendBackgroundBrush;
|
|
130
|
-
var color = (
|
|
128
|
+
var _a, _b, _c, _d, _e, _f;
|
|
129
|
+
var backgroundColor = (_a = this.backgroundColor) !== null && _a !== void 0 ? _a : (_c = (_b = this.parentSurfaceProperty) === null || _b === void 0 ? void 0 : _b.themeProvider) === null || _c === void 0 ? void 0 : _c.legendBackgroundBrush;
|
|
130
|
+
var color = (_d = this.textColor) !== null && _d !== void 0 ? _d : (_f = (_e = this.parentSurfaceProperty) === null || _e === void 0 ? void 0 : _e.themeProvider) === null || _f === void 0 ? void 0 : _f.labelForegroundBrush;
|
|
131
131
|
var legendItems = this.renderableSeriesArray.map(function (rs, index) {
|
|
132
132
|
var _a;
|
|
133
133
|
return ({
|
|
@@ -138,7 +138,7 @@ var SciChartLegend = /** @class */ (function (_super) {
|
|
|
138
138
|
gradient: undefined
|
|
139
139
|
});
|
|
140
140
|
});
|
|
141
|
-
var
|
|
141
|
+
var _g = this.parentSurfaceProperty.getSeriesViewRectPadding(false), left = _g.left, top = _g.top, right = _g.right, bottom = _g.bottom;
|
|
142
142
|
var margin = this.isExternal()
|
|
143
143
|
? new Thickness_1.Thickness(this.margin, this.margin, this.margin, this.margin)
|
|
144
144
|
: new Thickness_1.Thickness(top + this.margin, right + this.margin, bottom + this.margin, left + this.margin);
|
|
@@ -81,6 +81,7 @@ var SciChartLegendBase = /** @class */ (function (_super) {
|
|
|
81
81
|
// No default here as need theme from parent surface
|
|
82
82
|
_this.backgroundColorProperty = options === null || options === void 0 ? void 0 : options.backgroundColor;
|
|
83
83
|
_this.textColorProperty = options === null || options === void 0 ? void 0 : options.textColor;
|
|
84
|
+
_this.update = _this.update.bind(_this);
|
|
84
85
|
return _this;
|
|
85
86
|
}
|
|
86
87
|
SciChartLegendBase.prototype.setInvalidateParentSurface = function (value) {
|
|
@@ -108,16 +109,14 @@ var SciChartLegendBase = /** @class */ (function (_super) {
|
|
|
108
109
|
* @param sciChartSurface
|
|
109
110
|
*/
|
|
110
111
|
SciChartLegendBase.prototype.attachTo = function (sciChartSurface) {
|
|
111
|
-
var _this = this;
|
|
112
112
|
this.setParentSurface(sciChartSurface);
|
|
113
113
|
this.setRootDiv(sciChartSurface.domDivContainer);
|
|
114
114
|
this.setInvalidateParentSurface(sciChartSurface.invalidateElement);
|
|
115
|
-
sciChartSurface.rendered.subscribe(
|
|
116
|
-
_this.update();
|
|
117
|
-
});
|
|
115
|
+
sciChartSurface.rendered.subscribe(this.update);
|
|
118
116
|
};
|
|
119
117
|
SciChartLegendBase.prototype.detach = function () {
|
|
120
118
|
this.setRootDiv(undefined);
|
|
119
|
+
this.parentSurfaceProperty.rendered.unsubscribe(this.update);
|
|
121
120
|
this.setInvalidateParentSurface(undefined);
|
|
122
121
|
this.setParentSurface(undefined);
|
|
123
122
|
this.delete();
|
|
@@ -8,8 +8,11 @@ import { BaseRenderableSeries } from "./BaseRenderableSeries";
|
|
|
8
8
|
import { IHitTestProvider } from "./HitTest/IHitTestProvider";
|
|
9
9
|
import { IBaseRenderableSeriesOptions } from "./IBaseRenderableSeriesOptions";
|
|
10
10
|
export interface IBaseOhlcRenderableSeriesOptions extends IBaseRenderableSeriesOptions {
|
|
11
|
+
/** Sets the stoke when candlestick close is greater than open, as an HTML color code */
|
|
11
12
|
strokeUp?: string;
|
|
13
|
+
/** Sets the stoke when candlestick close is less than open, as an HTML color code */
|
|
12
14
|
strokeDown?: string;
|
|
15
|
+
/** Sets the width of candles as a fraction of available space. Valid values range from 0.0 - 1.0 */
|
|
13
16
|
dataPointWidth?: number;
|
|
14
17
|
}
|
|
15
18
|
export declare abstract class BaseOhlcRenderableSeries extends BaseRenderableSeries {
|