scichart 2.1.2301 → 2.2.2389

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.
Files changed (189) hide show
  1. package/Builder/buildAxis.d.ts +7 -0
  2. package/Builder/buildAxis.js +6 -0
  3. package/Builder/buildDataSeries.d.ts +19 -1
  4. package/Builder/buildDataSeries.js +22 -1
  5. package/Builder/buildModifiers.d.ts +2 -1
  6. package/Builder/buildSeries.d.ts +7 -2
  7. package/Builder/buildSeries.js +5 -1
  8. package/Charting/ChartModifiers/CursorModifier.d.ts +5 -0
  9. package/Charting/ChartModifiers/CursorModifier.js +15 -10
  10. package/Charting/ChartModifiers/LegendModifier.d.ts +31 -0
  11. package/Charting/ChartModifiers/LegendModifier.js +22 -0
  12. package/Charting/ChartModifiers/ModifierMouseArgs.d.ts +2 -2
  13. package/Charting/ChartModifiers/ModifierMouseArgs.js +4 -2
  14. package/Charting/ChartModifiers/RolloverModifier.d.ts +10 -0
  15. package/Charting/ChartModifiers/RolloverModifier.js +76 -19
  16. package/Charting/Drawing/WebGlRenderContext2D.js +26 -42
  17. package/Charting/LayoutManager/LayoutManager.js +6 -1
  18. package/Charting/Model/BaseHeatmapDataSeries.d.ts +1 -0
  19. package/Charting/Model/BaseHeatmapDataSeries.js +5 -2
  20. package/Charting/Model/ChartData/HlcSeriesInfo.d.ts +12 -0
  21. package/Charting/Model/ChartData/HlcSeriesInfo.js +52 -0
  22. package/Charting/Model/Filters/HlcCustomFilter.d.ts +41 -0
  23. package/Charting/Model/Filters/HlcCustomFilter.js +119 -0
  24. package/Charting/Model/Filters/HlcFilterBase.d.ts +30 -0
  25. package/Charting/Model/Filters/HlcFilterBase.js +141 -0
  26. package/Charting/Model/Filters/HlcScaleOffsetFilter.d.ts +18 -0
  27. package/Charting/Model/Filters/HlcScaleOffsetFilter.js +86 -0
  28. package/Charting/Model/Filters/XyFilterBase.d.ts +2 -0
  29. package/Charting/Model/Filters/XyFilterBase.js +6 -0
  30. package/Charting/Model/Filters/XyyFilterBase.js +9 -0
  31. package/Charting/Model/Filters/XyzFilterBase.js +12 -3
  32. package/Charting/Model/HlcDataSeries.d.ts +189 -0
  33. package/Charting/Model/HlcDataSeries.js +557 -0
  34. package/Charting/Model/IDataSeries.d.ts +5 -1
  35. package/Charting/Model/IDataSeries.js +4 -0
  36. package/Charting/Model/PointSeries/BasePointSeriesWrapped.d.ts +1 -1
  37. package/Charting/Model/PointSeries/BasePointSeriesWrapped.js +2 -2
  38. package/Charting/Model/PointSeries/HlcPointSeriesWrapped.d.ts +10 -0
  39. package/Charting/Model/PointSeries/HlcPointSeriesWrapped.js +31 -0
  40. package/Charting/Model/PointSeries/IPointSeries.d.ts +5 -0
  41. package/Charting/Model/PointSeries/XyyPointSeriesWrapped.d.ts +1 -1
  42. package/Charting/Model/PointSeries/XyyPointSeriesWrapped.js +3 -3
  43. package/Charting/Numerics/CoordinateCalculators/LogarithmicCoordinateCalculator.d.ts +2 -2
  44. package/Charting/Numerics/CoordinateCalculators/LogarithmicCoordinateCalculator.js +15 -6
  45. package/Charting/Services/SciChartRenderer.d.ts +1 -0
  46. package/Charting/Services/SciChartRenderer.js +6 -0
  47. package/Charting/Visuals/Annotations/AnnotationBase.d.ts +6 -1
  48. package/Charting/Visuals/Annotations/AnnotationBase.js +23 -2
  49. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.d.ts +6 -0
  50. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +46 -5
  51. package/Charting/Visuals/Annotations/CustomAnnotation.d.ts +3 -1
  52. package/Charting/Visuals/Annotations/CustomAnnotation.js +14 -3
  53. package/Charting/Visuals/Annotations/HorizontalLineAnnotation.d.ts +4 -0
  54. package/Charting/Visuals/Annotations/HorizontalLineAnnotation.js +3 -2
  55. package/Charting/Visuals/Annotations/RolloverLegendSvgAnnotation.d.ts +1 -1
  56. package/Charting/Visuals/Annotations/RolloverLegendSvgAnnotation.js +13 -3
  57. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.d.ts +13 -0
  58. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +71 -14
  59. package/Charting/Visuals/Annotations/VerticalLineAnnotation.d.ts +2 -0
  60. package/Charting/Visuals/Annotations/VerticalLineAnnotation.js +3 -2
  61. package/Charting/Visuals/Annotations/constants.d.ts +2 -1
  62. package/Charting/Visuals/Annotations/constants.js +1 -0
  63. package/Charting/Visuals/Axis/AxisBase2D.d.ts +11 -1
  64. package/Charting/Visuals/Axis/AxisBase2D.js +75 -17
  65. package/Charting/Visuals/Axis/AxisCore.d.ts +4 -0
  66. package/Charting/Visuals/Axis/AxisCore.js +6 -0
  67. package/Charting/Visuals/Axis/AxisRenderer.js +6 -10
  68. package/Charting/Visuals/Axis/DateTimeNumericAxis.d.ts +11 -0
  69. package/Charting/Visuals/Axis/DateTimeNumericAxis.js +36 -0
  70. package/Charting/Visuals/Axis/DeltaCalculator/DateTimeDeltaCalculator.d.ts +28 -0
  71. package/Charting/Visuals/Axis/DeltaCalculator/DateTimeDeltaCalculator.js +125 -0
  72. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.d.ts +34 -0
  73. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.js +82 -0
  74. package/Charting/Visuals/Axis/LabelProvider/SmartDateLabelProvider.d.ts +2 -2
  75. package/Charting/Visuals/Axis/LabelProvider/SmartDateLabelProvider.js +39 -6
  76. package/Charting/Visuals/Axis/LogarithmicAxis.d.ts +1 -0
  77. package/Charting/Visuals/Axis/LogarithmicAxis.js +5 -3
  78. package/Charting/Visuals/Helpers/NativeObject.d.ts +13 -0
  79. package/Charting/Visuals/Helpers/NativeObject.js +101 -0
  80. package/Charting/Visuals/Helpers/createNativeRect.d.ts +2 -2
  81. package/Charting/Visuals/Helpers/createNativeRect.js +3 -1
  82. package/Charting/Visuals/Helpers/drawBorder.js +2 -2
  83. package/Charting/Visuals/Helpers/drawLabel.d.ts +3 -3
  84. package/Charting/Visuals/Helpers/drawLabel.js +38 -18
  85. package/Charting/Visuals/I2DSurfaceOptions.d.ts +6 -0
  86. package/Charting/Visuals/Legend/SciChartLegend.d.ts +4 -0
  87. package/Charting/Visuals/Legend/SciChartLegend.js +8 -2
  88. package/Charting/Visuals/Legend/SciChartLegendBase.d.ts +1 -0
  89. package/Charting/Visuals/Legend/SciChartLegendBase.js +4 -2
  90. package/Charting/Visuals/Legend/SciChartPieLegend.js +1 -1
  91. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +24 -8
  92. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +109 -31
  93. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +3 -0
  94. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +8 -0
  95. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.d.ts +17 -166
  96. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +35 -328
  97. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +5 -2
  98. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +5 -3
  99. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +14 -11
  100. package/Charting/Visuals/RenderableSeries/DrawingProviders/ErrorSeriesDrawingProvider.d.ts +46 -0
  101. package/Charting/Visuals/RenderableSeries/DrawingProviders/ErrorSeriesDrawingProvider.js +252 -0
  102. package/Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries.d.ts +188 -0
  103. package/Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries.js +357 -0
  104. package/Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries.js +3 -10
  105. package/Charting/Visuals/RenderableSeries/HitTest/ErrorSeriesHitTestProvider.d.ts +20 -0
  106. package/Charting/Visuals/RenderableSeries/HitTest/ErrorSeriesHitTestProvider.js +120 -0
  107. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.d.ts +6 -0
  108. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.js +36 -0
  109. package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +8 -0
  110. package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +6 -0
  111. package/Charting/Visuals/RenderableSeries/SeriesVisibleChangedArgs.d.ts +6 -0
  112. package/Charting/Visuals/RenderableSeries/SeriesVisibleChangedArgs.js +11 -0
  113. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +1 -2
  114. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.d.ts +22 -0
  115. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.js +38 -1
  116. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +2 -2
  117. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +26 -45
  118. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.d.ts +77 -18
  119. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +139 -42
  120. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +5 -0
  121. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +21 -1
  122. package/Charting/Visuals/RenderableSeries/constants.d.ts +7 -0
  123. package/Charting/Visuals/RenderableSeries/constants.js +7 -0
  124. package/Charting/Visuals/SciChartPieSurface/IPieSurfaceOptions.d.ts +25 -2
  125. package/Charting/Visuals/SciChartPieSurface/PieSegment/IPieSegment.d.ts +9 -1
  126. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.d.ts +128 -2
  127. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.js +202 -21
  128. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.d.ts +6 -1
  129. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.js +5 -0
  130. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.d.ts +77 -3
  131. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.js +373 -81
  132. package/Charting/Visuals/SciChartPieSurface/constants.d.ts +7 -1
  133. package/Charting/Visuals/SciChartPieSurface/constants.js +6 -0
  134. package/Charting/Visuals/SciChartSurface.d.ts +13 -2
  135. package/Charting/Visuals/SciChartSurface.js +39 -3
  136. package/Charting/Visuals/createMaster.js +17 -13
  137. package/Charting/Visuals/createSingle.js +5 -3
  138. package/Charting/Visuals/licenseManager2D.d.ts +6 -0
  139. package/Charting/Visuals/licenseManager2D.js +98 -9
  140. package/Charting/Visuals/licenseManager2dState.d.ts +11 -0
  141. package/Charting/Visuals/licenseManager2dState.js +37 -1
  142. package/Charting/Visuals/loader.js +4 -1
  143. package/Charting/Visuals/sciChartInitCommon.d.ts +2 -2
  144. package/Charting/Visuals/sciChartInitCommon.js +13 -9
  145. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.js +6 -2
  146. package/Charting3D/Visuals/SciChart3DRenderer.js +1 -1
  147. package/Charting3D/Visuals/SciChart3DSurface.d.ts +8 -3
  148. package/Charting3D/Visuals/SciChart3DSurface.js +12 -3
  149. package/Charting3D/Visuals/createMaster3d.js +20 -14
  150. package/Charting3D/Visuals/createSingle3d.js +3 -4
  151. package/Charting3D/Visuals/licenseManager3D.js +3 -1
  152. package/Core/BuildStamp.d.ts +1 -1
  153. package/Core/BuildStamp.js +2 -2
  154. package/Core/Telemetry.d.ts +7 -0
  155. package/Core/Telemetry.js +109 -0
  156. package/Core/storage/localStorageApi.d.ts +4 -0
  157. package/Core/storage/localStorageApi.js +12 -0
  158. package/README.md +49 -13
  159. package/_wasm/scichart.browser.js +1 -1
  160. package/_wasm/scichart2d.js +95 -95
  161. package/_wasm/scichart2d.wasm +0 -0
  162. package/_wasm/scichart3d.js +97 -97
  163. package/_wasm/scichart3d.wasm +0 -0
  164. package/package.json +1 -1
  165. package/types/AxisType.d.ts +5 -1
  166. package/types/AxisType.js +4 -0
  167. package/types/Color.d.ts +1 -0
  168. package/types/Color.js +1 -0
  169. package/types/DataFilterType.d.ts +1 -0
  170. package/types/DataFilterType.js +1 -0
  171. package/types/DataPointWidthMode.d.ts +13 -0
  172. package/types/DataPointWidthMode.js +17 -0
  173. package/types/ErrorDirection.d.ts +13 -0
  174. package/types/ErrorDirection.js +17 -0
  175. package/types/ErrorMode.d.ts +17 -0
  176. package/types/ErrorMode.js +21 -0
  177. package/types/LabelPlacement.d.ts +8 -0
  178. package/types/LabelPlacement.js +11 -1
  179. package/types/LabelProviderType.d.ts +5 -1
  180. package/types/LabelProviderType.js +4 -0
  181. package/types/SeriesType.d.ts +3 -1
  182. package/types/SeriesType.js +2 -0
  183. package/types/TSciChart.d.ts +8 -2
  184. package/types/TSciChart3D.d.ts +5 -2
  185. package/types/TSciChartSurfaceCanvases.d.ts +1 -0
  186. package/utils/date.d.ts +1 -0
  187. package/utils/date.js +15 -1
  188. package/utils/guid.d.ts +6 -0
  189. package/utils/guid.js +17 -1
@@ -1,5 +1,6 @@
1
1
  import { AxisBase2D } from "../Charting/Visuals/Axis/AxisBase2D";
2
2
  import { ICategoryAxisOptions } from "../Charting/Visuals/Axis/CategoryAxis";
3
+ import { IDateTimeNumericAxisOptions } from "../Charting/Visuals/Axis/DateTimeNumericAxis";
3
4
  import { ILabelOptions } from "../Charting/Visuals/Axis/LabelProvider/LabelProvider";
4
5
  import { ITextLabelOptions } from "../Charting/Visuals/Axis/LabelProvider/TextLabelProvider";
5
6
  import { ILogarithmicAxisOptions } from "../Charting/Visuals/Axis/LogarithmicAxis";
@@ -17,6 +18,9 @@ export declare type TAxisDefinition = {
17
18
  } | {
18
19
  type: EAxisType.CategoryAxis;
19
20
  options?: ICategoryAxisOptions;
21
+ } | {
22
+ type: EAxisType.DateTimeNumericAxis;
23
+ options?: IDateTimeNumericAxisOptions;
20
24
  };
21
25
  /** Definition of a {@link LabelProviderBase2D}, comprising a {@link ELabelProviderType} and the relevant options */
22
26
  export declare type TLabelProviderDefinition = {
@@ -34,6 +38,9 @@ export declare type TLabelProviderDefinition = {
34
38
  } | {
35
39
  type: ELabelProviderType.Text;
36
40
  options?: ITextLabelOptions;
41
+ } | {
42
+ type: ELabelProviderType.Pie;
43
+ options?: ILabelOptions;
37
44
  };
38
45
  /**
39
46
  * Build one or more axes from a definition that can be pure data.
@@ -2,9 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildAxes = void 0;
4
4
  var CategoryAxis_1 = require("../Charting/Visuals/Axis/CategoryAxis");
5
+ var DateTimeNumericAxis_1 = require("../Charting/Visuals/Axis/DateTimeNumericAxis");
5
6
  var DateLabelProvider_1 = require("../Charting/Visuals/Axis/LabelProvider/DateLabelProvider");
6
7
  var LogarithmicLabelProvider_1 = require("../Charting/Visuals/Axis/LabelProvider/LogarithmicLabelProvider");
7
8
  var NumericLabelProvider_1 = require("../Charting/Visuals/Axis/LabelProvider/NumericLabelProvider");
9
+ var PieLabelProvider_1 = require("../Charting/Visuals/Axis/LabelProvider/PieLabelProvider");
8
10
  var SmartDateLabelProvider_1 = require("../Charting/Visuals/Axis/LabelProvider/SmartDateLabelProvider");
9
11
  var TextLabelProvider_1 = require("../Charting/Visuals/Axis/LabelProvider/TextLabelProvider");
10
12
  var LogarithmicAxis_1 = require("../Charting/Visuals/Axis/LogarithmicAxis");
@@ -20,6 +22,7 @@ var classFactory_1 = require("./classFactory");
20
22
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.LabelProvider, LabelProviderType_1.ELabelProviderType.Logarithmic, function (options) { return new LogarithmicLabelProvider_1.LogarithmicLabelProvider(options); }, true);
21
23
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.LabelProvider, LabelProviderType_1.ELabelProviderType.SmartDate, function (options) { return new SmartDateLabelProvider_1.SmartDateLabelProvider(); }, true);
22
24
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.LabelProvider, LabelProviderType_1.ELabelProviderType.Text, function (options) { return new TextLabelProvider_1.TextLabelProvider(options); }, true);
25
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.LabelProvider, LabelProviderType_1.ELabelProviderType.Pie, function (options) { return new PieLabelProvider_1.PieLabelProvider(options); }, true);
23
26
  /**
24
27
  * Build one or more axes from a definition that can be pure data.
25
28
  * @param wasmContext A {@link TSciChart | SciChart 2D WebAssembly Context} or {@link TSciChart | SciChart 3D WebAssembly Context}
@@ -55,6 +58,9 @@ var buildAxis = function (wasmContext, definition) {
55
58
  case AxisType_1.EAxisType.LogarithmicAxis:
56
59
  axis = new LogarithmicAxis_1.LogarithmicAxis(wasmContext, definition.options);
57
60
  break;
61
+ case AxisType_1.EAxisType.DateTimeNumericAxis:
62
+ axis = new DateTimeNumericAxis_1.DateTimeNumericAxis(wasmContext, definition.options);
63
+ break;
58
64
  default:
59
65
  axis = new NumericAxis_1.NumericAxis(wasmContext, {});
60
66
  break;
@@ -1,3 +1,4 @@
1
+ import { IHlcScaleOffsetFilterOptions } from "../Charting/Model/Filters/HlcScaleOffsetFilter";
1
2
  import { IOhlcScaleOffsetFilterOptions } from "../Charting/Model/Filters/OhlcScaleOffsetFilter";
2
3
  import { IXyFilterOptions } from "../Charting/Model/Filters/XyFilterBase";
3
4
  import { IXyMovingAverageFilterOptions } from "../Charting/Model/Filters/XyMovingAverageFilter";
@@ -5,6 +6,7 @@ import { IXyRatioFilterOptions } from "../Charting/Model/Filters/XyRatioFilter";
5
6
  import { IXyScaleOffsetFilterOptions } from "../Charting/Model/Filters/XyScaleOffsetFilter";
6
7
  import { IXyyScaleOffsetFilterOptions } from "../Charting/Model/Filters/XyyScaleOffsetFilter";
7
8
  import { IXyzScaleOffsetFilterOptions } from "../Charting/Model/Filters/XyzScaleOffsetFilter";
9
+ import { IHlcDataSeriesOptions } from "../Charting/Model/HlcDataSeries";
8
10
  import { IDataSeries } from "../Charting/Model/IDataSeries";
9
11
  import { IOhlcDataSeriesOptions } from "../Charting/Model/OhlcDataSeries";
10
12
  import { IUniformHeatmapSeriesOptions } from "../Charting/Model/UniformHeatmapDataSeries";
@@ -38,6 +40,9 @@ declare type TFilterDefinition = {
38
40
  } | {
39
41
  type: EDataFilterType.XyzScaleOffset;
40
42
  options?: IXyzScaleOffsetFilterOptions;
43
+ } | {
44
+ type: EDataFilterType.HlcScaleOffset;
45
+ options?: IHlcScaleOffsetFilterOptions;
41
46
  } | {
42
47
  type: EDataFilterType.OhlcScaleOffset;
43
48
  options?: IOhlcScaleOffsetFilterOptions;
@@ -100,8 +105,21 @@ export declare type TOhlcSeriesData = {
100
105
  } & IOhlcDataSeriesOptions & {
101
106
  filter?: TFilterDefinition;
102
107
  };
108
+ /** Definition of Open, High, Low, Close data */
109
+ export declare type THlcSeriesData = {
110
+ /** The id of sharedData to use for X data. You must either use all DataId or all Values properties. You cannot mix them. */
111
+ xDataId?: number | string;
112
+ /** The id of sharedData to use for High data. You must either use all DataId or all Values properties. You cannot mix them. */
113
+ highDataId?: number | string;
114
+ /** The id of sharedData to use for Low data. You must either use all DataId or all Values properties. You cannot mix them. */
115
+ lowDataId?: number | string;
116
+ /** The id of sharedData to use for Close data. You must either use all DataId or all Values properties. You cannot mix them. */
117
+ closeDataId?: number | string;
118
+ } & IHlcDataSeriesOptions & {
119
+ filter?: TFilterDefinition;
120
+ };
103
121
  /** Definition of series data, which can take various shapes */
104
- export declare type TSeriesDataDefinition = TXySeriesData | TXyySeriesData | TXyzSeriesData | TOhlcSeriesData | IUniformHeatmapSeriesOptions;
122
+ export declare type TSeriesDataDefinition = TXySeriesData | TXyySeriesData | TXyzSeriesData | THlcSeriesData | TOhlcSeriesData | IUniformHeatmapSeriesOptions;
105
123
  /**
106
124
  * Build a data series from a definition that can be pure data.
107
125
  * @param wasmContext A {@link TSciChart | SciChart 2D WebAssembly Context} or {@link TSciChart | SciChart 3D WebAssembly Context}
@@ -12,6 +12,7 @@ var __assign = (this && this.__assign) || function () {
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.buildDataSeries = void 0;
15
+ var HlcScaleOffsetFilter_1 = require("../Charting/Model/Filters/HlcScaleOffsetFilter");
15
16
  var OhlcScaleOffsetFilter_1 = require("../Charting/Model/Filters/OhlcScaleOffsetFilter");
16
17
  var XyLinearTrendFilter_1 = require("../Charting/Model/Filters/XyLinearTrendFilter");
17
18
  var XyMovingAverageFilter_1 = require("../Charting/Model/Filters/XyMovingAverageFilter");
@@ -19,6 +20,7 @@ var XyRatioFilter_1 = require("../Charting/Model/Filters/XyRatioFilter");
19
20
  var XyScaleOffsetFilter_1 = require("../Charting/Model/Filters/XyScaleOffsetFilter");
20
21
  var XyyScaleOffsetFilter_1 = require("../Charting/Model/Filters/XyyScaleOffsetFilter");
21
22
  var XyzScaleOffsetFilter_1 = require("../Charting/Model/Filters/XyzScaleOffsetFilter");
23
+ var HlcDataSeries_1 = require("../Charting/Model/HlcDataSeries");
22
24
  var OhlcDataSeries_1 = require("../Charting/Model/OhlcDataSeries");
23
25
  var UniformHeatmapDataSeries_1 = require("../Charting/Model/UniformHeatmapDataSeries");
24
26
  var XyDataSeries_1 = require("../Charting/Model/XyDataSeries");
@@ -89,6 +91,22 @@ var buildDataSeries = function (wasmContext, seriesDefinition, sharedData) {
89
91
  filterDef = data.filter;
90
92
  }
91
93
  }
94
+ else if (hasOwnProperty(seriesDefinition, "hlcData")) {
95
+ var data = seriesDefinition.hlcData;
96
+ if (sharedData && data.xDataId) {
97
+ var xValues = sharedData[data.xDataId];
98
+ var highValues = sharedData[data.highDataId];
99
+ var lowValues = sharedData[data.lowDataId];
100
+ var yValues = sharedData[data.closeDataId];
101
+ dataSeries = new HlcDataSeries_1.HlcDataSeries(wasmContext, __assign({ xValues: xValues, highValues: highValues, lowValues: lowValues, yValues: yValues }, data));
102
+ }
103
+ else {
104
+ dataSeries = new HlcDataSeries_1.HlcDataSeries(wasmContext, data);
105
+ }
106
+ if (hasOwnProperty(data, "filter")) {
107
+ filterDef = data.filter;
108
+ }
109
+ }
92
110
  else if (hasOwnProperty(seriesDefinition, "ohlcData")) {
93
111
  var data = seriesDefinition.ohlcData;
94
112
  if (sharedData && data.xDataId) {
@@ -124,7 +142,10 @@ var buildDataSeries = function (wasmContext, seriesDefinition, sharedData) {
124
142
  };
125
143
  exports.buildDataSeries = buildDataSeries;
126
144
  var buildFilter = function (dataSeries, definition) {
127
- if (definition.type === DataFilterType_1.EDataFilterType.OhlcScaleOffset) {
145
+ if (definition.type === DataFilterType_1.EDataFilterType.HlcScaleOffset) {
146
+ return new HlcScaleOffsetFilter_1.HlcScaleOffsetFilter(dataSeries, definition.options);
147
+ }
148
+ else if (definition.type === DataFilterType_1.EDataFilterType.OhlcScaleOffset) {
128
149
  return new OhlcScaleOffsetFilter_1.OhlcScaleOffsetFilter(dataSeries, definition.options);
129
150
  }
130
151
  else if (definition.type === DataFilterType_1.EDataFilterType.XyLinearTrend) {
@@ -11,6 +11,7 @@ import { ISeriesSelectionModifierOptions } from "../Charting/ChartModifiers/Seri
11
11
  import { IXAxisDragModifierOptions } from "../Charting/ChartModifiers/XAxisDragModifier";
12
12
  import { IYAxisDragModifierOptions } from "../Charting/ChartModifiers/YAxisDragModifier";
13
13
  import { IZoomExtentsModifierOptions } from "../Charting/ChartModifiers/ZoomExtentsModifier";
14
+ import { IZoomPanModifierOptions } from "../Charting/ChartModifiers/ZoomPanModifier";
14
15
  import { EChart2DModifierType } from "../types/ChartModifierType";
15
16
  /** Definition of a 2d chart modifier, comprising a {@link EChart2DModifierType} and the relevant options */
16
17
  export declare type TModifierDefinition = {
@@ -48,7 +49,7 @@ export declare type TModifierDefinition = {
48
49
  options?: IZoomExtentsModifierOptions;
49
50
  } | {
50
51
  type: EChart2DModifierType.ZoomPan;
51
- options?: IChartModifierBaseOptions;
52
+ options?: IZoomPanModifierOptions;
52
53
  } | {
53
54
  type: EChart2DModifierType.OverviewRangeSelection;
54
55
  options?: IRangeSelectionModifierOptions;
@@ -2,9 +2,9 @@ import { ISelectedPointOptions } from "../Charting/Model/DataPointSelectionPalet
2
2
  import { IUniformHeatmapSeriesOptions } from "../Charting/Model/UniformHeatmapDataSeries";
3
3
  import { IPointMarkerOptions } from "../Charting/Visuals/PointMarkers/BasePointMarker";
4
4
  import { ISpritePointMarkerOptions } from "../Charting/Visuals/PointMarkers/SpritePointMarker";
5
- import { IBaseAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/SeriesAnimation";
6
5
  import { IFadeAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/FadeAnimation";
7
6
  import { IScaleAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/ScaleAnimation";
7
+ import { IBaseAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/SeriesAnimation";
8
8
  import { ISweepAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/SweepAnimation";
9
9
  import { IWaveAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/WaveAnimation";
10
10
  import { IBaseStackedCollectionOptions } from "../Charting/Visuals/RenderableSeries/BaseStackedCollection";
@@ -12,6 +12,7 @@ import { IBandRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeri
12
12
  import { IBubbleRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries";
13
13
  import { ICandlestickRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries";
14
14
  import { IColumnRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastColumnRenderableSeries";
15
+ import { IFastErrorBarsRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries";
15
16
  import { IFastLineRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastLineRenderableSeries";
16
17
  import { IMountainRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastMountainRenderableSeries";
17
18
  import { IOhlcRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastOhlcRenderableSeries";
@@ -34,7 +35,7 @@ import { EPointMarkerType } from "../types/PointMarkerType";
34
35
  import { ESeriesType } from "../types/SeriesType";
35
36
  import { EShaderEffectType } from "../types/ShaderEffectType";
36
37
  import { TSciChart } from "../types/TSciChart";
37
- import { TOhlcSeriesData, TSharedDataDefinition, TXySeriesData, TXyySeriesData, TXyzSeriesData } from "./buildDataSeries";
38
+ import { THlcSeriesData, TOhlcSeriesData, TSharedDataDefinition, TXySeriesData, TXyySeriesData, TXyzSeriesData } from "./buildDataSeries";
38
39
  import { IImpulseRenderableSeries } from "../Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries";
39
40
  /** Definition of a pointmarker, comprising a {@link EPointMarkerType} and the relevant options */
40
41
  export declare type TPointMarkerDefinition = {
@@ -130,6 +131,10 @@ export declare type TSeriesDefinition = {
130
131
  type: ESeriesType.MountainSeries;
131
132
  options?: IMountainRenderableSeriesOptions;
132
133
  xyData?: TXySeriesData;
134
+ } | {
135
+ type: ESeriesType.ErrorBarsSeries;
136
+ options?: IFastErrorBarsRenderableSeriesOptions;
137
+ hlcData?: THlcSeriesData;
133
138
  } | {
134
139
  type: ESeriesType.OhlcSeries;
135
140
  options?: IOhlcRenderableSeriesOptions;
@@ -18,6 +18,7 @@ var FastBandRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/F
18
18
  var FastBubbleRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries");
19
19
  var FastCandlestickRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries");
20
20
  var FastColumnRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastColumnRenderableSeries");
21
+ var FastErrorBarsRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries");
21
22
  var FastLineRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastLineRenderableSeries");
22
23
  var FastMountainRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastMountainRenderableSeries");
23
24
  var FastOhlcRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastOhlcRenderableSeries");
@@ -40,8 +41,8 @@ var PointMarkerType_1 = require("../types/PointMarkerType");
40
41
  var SeriesType_1 = require("../types/SeriesType");
41
42
  var ShaderEffectType_1 = require("../types/ShaderEffectType");
42
43
  var buildDataSeries_1 = require("./buildDataSeries");
43
- var classFactory_1 = require("./classFactory");
44
44
  var chartBuilder_1 = require("./chartBuilder");
45
+ var classFactory_1 = require("./classFactory");
45
46
  var FastImpulseRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries");
46
47
  (0, classFactory_1.registerWasmType)(BaseType_1.EBaseType.PointMarker, PointMarkerType_1.EPointMarkerType.Cross, function (wasm, options) { return new CrossPointMarker_1.CrossPointMarker(wasm, options); }, true);
47
48
  (0, classFactory_1.registerWasmType)(BaseType_1.EBaseType.PointMarker, PointMarkerType_1.EPointMarkerType.Ellipse, function (wasm, options) { return new EllipsePointMarker_1.EllipsePointMarker(wasm, options); }, true);
@@ -103,6 +104,9 @@ var buildSeries = function (wasmContext, definition, sharedData) {
103
104
  else if (seriesDef.type === SeriesType_1.ESeriesType.MountainSeries) {
104
105
  series = new FastMountainRenderableSeries_1.FastMountainRenderableSeries(wasmContext, seriesDef.options);
105
106
  }
107
+ else if (seriesDef.type === SeriesType_1.ESeriesType.ErrorBarsSeries) {
108
+ series = new FastErrorBarsRenderableSeries_1.FastErrorBarsRenderableSeries(wasmContext, seriesDef.options);
109
+ }
106
110
  else if (seriesDef.type === SeriesType_1.ESeriesType.OhlcSeries) {
107
111
  series = new FastOhlcRenderableSeries_1.FastOhlcRenderableSeries(wasmContext, seriesDef.options);
108
112
  }
@@ -33,6 +33,7 @@ export interface ICursorModifierOptions extends IChartModifierBaseOptions {
33
33
  tooltipLegendOffsetX?: number;
34
34
  tooltipLegendOffsetY?: number;
35
35
  tooltipDataTemplate?: TCursorTooltipDataTemplate | string;
36
+ placementDivId?: string;
36
37
  }
37
38
  /**
38
39
  * The CursorModifier provides tooltip and cursor behavior on a 2D {@link SciChartSurface}
@@ -117,6 +118,7 @@ export declare class CursorModifier extends ChartModifierBase2D implements IIncl
117
118
  private crosshairStrokeProperty;
118
119
  private tooltipDataTemplateProperty?;
119
120
  private includedSeriesMap;
121
+ private placementDivId;
120
122
  /**
121
123
  * Creates an instance of the CursorModifier
122
124
  *
@@ -194,6 +196,9 @@ export declare class CursorModifier extends ChartModifierBase2D implements IIncl
194
196
  getMousePosition(): EMousePosition;
195
197
  /** @inheritDoc */
196
198
  toJSON(): {
199
+ /**
200
+ * Gets or sets the xAxis label text color as an HTML Color code
201
+ */
197
202
  type: string;
198
203
  options: Required<Omit<IChartModifierBaseOptions, never>>;
199
204
  };
@@ -51,7 +51,7 @@ var CursorModifier = /** @class */ (function (_super) {
51
51
  * @param options Optional parameters {@link ICursorModifierOptions} used to configure the modifier
52
52
  */
53
53
  function CursorModifier(options) {
54
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
54
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
55
55
  var _this = _super.call(this, options) || this;
56
56
  _this.type = ChartModifierType_1.EChart2DModifierType.Cursor;
57
57
  _this.tooltipSvgTemplate = defaultTooltipTemplate;
@@ -135,6 +135,7 @@ var CursorModifier = /** @class */ (function (_super) {
135
135
  _this.xAxisLabelFill = (_m = options === null || options === void 0 ? void 0 : options.xAxisLabelFill) !== null && _m !== void 0 ? _m : _this.xAxisLabelFill;
136
136
  _this.yAxisLabelStroke = (_o = options === null || options === void 0 ? void 0 : options.yAxisLabelStroke) !== null && _o !== void 0 ? _o : _this.yAxisLabelStroke;
137
137
  _this.yAxisLabelFill = (_p = options === null || options === void 0 ? void 0 : options.yAxisLabelFill) !== null && _p !== void 0 ? _p : _this.yAxisLabelFill;
138
+ _this.placementDivId = (_q = options === null || options === void 0 ? void 0 : options.placementDivId) !== null && _q !== void 0 ? _q : _this.placementDivId;
138
139
  if (options === null || options === void 0 ? void 0 : options.tooltipLegendTemplate) {
139
140
  if (typeof options.tooltipLegendTemplate === "string") {
140
141
  _this.typeMap.set("tooltipLegendTemplate", options.tooltipLegendTemplate);
@@ -143,9 +144,9 @@ var CursorModifier = /** @class */ (function (_super) {
143
144
  }
144
145
  }
145
146
  _this.tooltipLegendTemplate =
146
- (_q = options === null || options === void 0 ? void 0 : options.tooltipLegendTemplate) !== null && _q !== void 0 ? _q : _this.tooltipLegendTemplate;
147
- _this.tooltipLegendOffsetX = (_r = options === null || options === void 0 ? void 0 : options.tooltipLegendOffsetX) !== null && _r !== void 0 ? _r : _this.tooltipLegendOffsetX;
148
- _this.tooltipLegendOffsetY = (_s = options === null || options === void 0 ? void 0 : options.tooltipLegendOffsetY) !== null && _s !== void 0 ? _s : _this.tooltipLegendOffsetY;
147
+ (_r = options === null || options === void 0 ? void 0 : options.tooltipLegendTemplate) !== null && _r !== void 0 ? _r : _this.tooltipLegendTemplate;
148
+ _this.tooltipLegendOffsetX = (_s = options === null || options === void 0 ? void 0 : options.tooltipLegendOffsetX) !== null && _s !== void 0 ? _s : _this.tooltipLegendOffsetX;
149
+ _this.tooltipLegendOffsetY = (_t = options === null || options === void 0 ? void 0 : options.tooltipLegendOffsetY) !== null && _t !== void 0 ? _t : _this.tooltipLegendOffsetY;
149
150
  if (options === null || options === void 0 ? void 0 : options.tooltipDataTemplate) {
150
151
  if (typeof options.tooltipDataTemplate === "string") {
151
152
  _this.typeMap.set("tooltipDataTemplate", options.tooltipDataTemplate);
@@ -154,7 +155,7 @@ var CursorModifier = /** @class */ (function (_super) {
154
155
  }
155
156
  }
156
157
  _this.tooltipDataTemplateProperty =
157
- (_t = options === null || options === void 0 ? void 0 : options.tooltipDataTemplate) !== null && _t !== void 0 ? _t : _this.tooltipDataTemplateProperty;
158
+ (_u = options === null || options === void 0 ? void 0 : options.tooltipDataTemplate) !== null && _u !== void 0 ? _u : _this.tooltipDataTemplateProperty;
158
159
  return _this;
159
160
  }
160
161
  /**
@@ -188,7 +189,8 @@ var CursorModifier = /** @class */ (function (_super) {
188
189
  tooltipLegendOffsetX: this.tooltipLegendOffsetX,
189
190
  tooltipLegendOffsetY: this.tooltipLegendOffsetY,
190
191
  xAxisId: this.xAxisId,
191
- yAxisId: this.yAxisId
192
+ yAxisId: this.yAxisId,
193
+ placementDivId: this.placementDivId
192
194
  });
193
195
  this.parentSurface.modifierAnnotations.add(this.xLineAnnotation, this.yLineAnnotation, this.tooltipAnnotation);
194
196
  };
@@ -386,6 +388,9 @@ var CursorModifier = /** @class */ (function (_super) {
386
388
  this.xLineAnnotation.isHidden = true;
387
389
  this.yLineAnnotation.isHidden = true;
388
390
  this.tooltipAnnotation.isHidden = true;
391
+ if (this.placementDivId) {
392
+ this.tooltipAnnotation.delete();
393
+ }
389
394
  return;
390
395
  }
391
396
  var translatedMousePoint = (0, translate_1.translateFromCanvasToSeriesViewRect)(this.mousePoint, this.parentSurface.seriesViewRect);
@@ -400,18 +405,18 @@ var CursorModifier = /** @class */ (function (_super) {
400
405
  this.xLineAnnotation.y1 = 0;
401
406
  this.yLineAnnotation.x1 = 0;
402
407
  if (this.isVerticalChart()) {
403
- this.xLineAnnotation.y2 = this.parentSurface.seriesViewRect.right;
408
+ this.xLineAnnotation.y2 = (0, translate_1.translateToNotScaled)(this.parentSurface.seriesViewRect.right);
404
409
  this.xLineAnnotation.x1 = y;
405
410
  this.xLineAnnotation.x2 = y;
406
- this.yLineAnnotation.x2 = this.parentSurface.seriesViewRect.bottom;
411
+ this.yLineAnnotation.x2 = (0, translate_1.translateToNotScaled)(this.parentSurface.seriesViewRect.bottom);
407
412
  this.yLineAnnotation.y1 = x;
408
413
  this.yLineAnnotation.y2 = x;
409
414
  }
410
415
  else {
411
- this.xLineAnnotation.y2 = this.parentSurface.seriesViewRect.bottom;
416
+ this.xLineAnnotation.y2 = (0, translate_1.translateToNotScaled)(this.parentSurface.seriesViewRect.bottom);
412
417
  this.xLineAnnotation.x1 = x;
413
418
  this.xLineAnnotation.x2 = x;
414
- this.yLineAnnotation.x2 = this.parentSurface.seriesViewRect.right;
419
+ this.yLineAnnotation.x2 = (0, translate_1.translateToNotScaled)(this.parentSurface.seriesViewRect.right);
415
420
  this.yLineAnnotation.y1 = y;
416
421
  this.yLineAnnotation.y2 = y;
417
422
  }
@@ -1,3 +1,4 @@
1
+ import { EventHandler } from "../../Core/EventHandler";
1
2
  import { IIncludeSeries } from "../../Core/IIncludeSeries";
2
3
  import { EChart2DModifierType } from "../../types/ChartModifierType";
3
4
  import { IThemeProvider } from "../Themes/IThemeProvider";
@@ -37,7 +38,26 @@ export interface ILegendModifierOptions extends IChartModifierBaseOptions {
37
38
  * The parent div element Id or reference, the Legend will be appended to this element
38
39
  */
39
40
  placementDivId?: string | HTMLDivElement;
41
+ /**
42
+ * Callback when a legend item checkbox is checked or unchecked (by default, this corresponds to {@link IRenderableSeries.isVisible}
43
+ * @param series
44
+ * @param isChecked
45
+ */
46
+ isCheckedChangedCallback?: (series: IRenderableSeries, isChecked: boolean) => void;
40
47
  }
48
+ /**
49
+ * Type args for the {@link LegendModifier.isCheckedChanged} callback
50
+ */
51
+ export declare type TCheckedChangedArgs = {
52
+ /**
53
+ * The series which was checked or unchecked
54
+ */
55
+ series: IRenderableSeries;
56
+ /**
57
+ * Whether the corresponding legend item is checked or not (by default, this corresponds to {@link IRenderableSeries.isVisible})
58
+ */
59
+ isChecked: boolean;
60
+ };
41
61
  /**
42
62
  * The LegendModifier provides interactive legend behavior on a 2D {@link SciChartSurface}
43
63
  * within SciChart - High Performance {@link https://www.scichart.com/javascript-chart-features | JavaScript Charts}
@@ -57,6 +77,10 @@ export declare class LegendModifier extends ChartModifierBase2D implements IIncl
57
77
  * Gets the {@link SciChartLegend} control used to render the legend
58
78
  */
59
79
  sciChartLegend: SciChartLegend;
80
+ /**
81
+ * An event handler raised when a {@link SciChartLegend} row checkbox is checked or unchecked
82
+ */
83
+ readonly isCheckedChanged: EventHandler<TCheckedChangedArgs>;
60
84
  private includedSeriesMap;
61
85
  /**
62
86
  * Creates an instance of the LegendModifier
@@ -86,6 +110,13 @@ export declare class LegendModifier extends ChartModifierBase2D implements IIncl
86
110
  };
87
111
  /** @inheritDoc */
88
112
  delete(): void;
113
+ /**
114
+ * Callback called from inner {@link SciChartLegend} when a checkbox is checked or unchecked
115
+ * @param series
116
+ * @param isChecked
117
+ * @protected
118
+ */
119
+ protected legendItemCheckedChanged(series: IRenderableSeries, isChecked: boolean): void;
89
120
  /**
90
121
  * Test if the series is included or excluded, by default it is included
91
122
  * @param series
@@ -16,6 +16,7 @@ var __extends = (this && this.__extends) || (function () {
16
16
  })();
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.LegendModifier = void 0;
19
+ var EventHandler_1 = require("../../Core/EventHandler");
19
20
  var ChartModifierType_1 = require("../../types/ChartModifierType");
20
21
  var SciChartLegend_1 = require("../Visuals/Legend/SciChartLegend");
21
22
  var ChartModifierBase2D_1 = require("./ChartModifierBase2D");
@@ -42,7 +43,12 @@ var LegendModifier = /** @class */ (function (_super) {
42
43
  var _a, _b, _c, _d, _e, _f, _g;
43
44
  var _this = _super.call(this, options) || this;
44
45
  _this.type = ChartModifierType_1.EChart2DModifierType.Legend;
46
+ /**
47
+ * An event handler raised when a {@link SciChartLegend} row checkbox is checked or unchecked
48
+ */
49
+ _this.isCheckedChanged = new EventHandler_1.EventHandler();
45
50
  _this.includedSeriesMap = new Map();
51
+ _this.legendItemCheckedChanged = _this.legendItemCheckedChanged.bind(_this);
46
52
  _this.sciChartLegend = new SciChartLegend_1.SciChartLegend();
47
53
  _this.sciChartLegend.orientation = (_a = options === null || options === void 0 ? void 0 : options.orientation) !== null && _a !== void 0 ? _a : _this.sciChartLegend.orientation;
48
54
  _this.sciChartLegend.showLegend = (_b = options === null || options === void 0 ? void 0 : options.showLegend) !== null && _b !== void 0 ? _b : _this.sciChartLegend.showLegend;
@@ -51,6 +57,12 @@ var LegendModifier = /** @class */ (function (_super) {
51
57
  _this.sciChartLegend.placement = (_e = options === null || options === void 0 ? void 0 : options.placement) !== null && _e !== void 0 ? _e : _this.sciChartLegend.placement;
52
58
  _this.sciChartLegend.margin = (_f = options === null || options === void 0 ? void 0 : options.margin) !== null && _f !== void 0 ? _f : _this.sciChartLegend.margin;
53
59
  _this.sciChartLegend.placementDivId = (_g = options === null || options === void 0 ? void 0 : options.placementDivId) !== null && _g !== void 0 ? _g : _this.sciChartLegend.placementDivId;
60
+ _this.sciChartLegend.legendItemCheckedChangedCallback = _this.legendItemCheckedChanged;
61
+ if (options === null || options === void 0 ? void 0 : options.isCheckedChangedCallback) {
62
+ _this.isCheckedChanged.subscribe(function (arg) {
63
+ return options.isCheckedChangedCallback(arg.series, arg.isChecked);
64
+ });
65
+ }
54
66
  return _this;
55
67
  }
56
68
  /** @inheritDoc */
@@ -141,6 +153,16 @@ var LegendModifier = /** @class */ (function (_super) {
141
153
  _super.prototype.delete.call(this);
142
154
  this.sciChartLegend.delete();
143
155
  };
156
+ /**
157
+ * Callback called from inner {@link SciChartLegend} when a checkbox is checked or unchecked
158
+ * @param series
159
+ * @param isChecked
160
+ * @protected
161
+ */
162
+ LegendModifier.prototype.legendItemCheckedChanged = function (series, isChecked) {
163
+ var _a;
164
+ (_a = this.isCheckedChanged) === null || _a === void 0 ? void 0 : _a.raiseEvent({ series: series, isChecked: isChecked });
165
+ };
144
166
  /**
145
167
  * Test if the series is included or excluded, by default it is included
146
168
  * @param series
@@ -1,5 +1,5 @@
1
1
  import { Point } from "../../Core/Point";
2
- import { Size } from "../../types/Size";
2
+ import { Rect } from "../../Core/Rect";
3
3
  import { ModifierArgsBase } from "./ModifierArgsBase";
4
4
  declare type TModifierMouseArgsParams = {
5
5
  mousePoint?: Point;
@@ -40,7 +40,7 @@ export declare class ModifierMouseArgs extends ModifierArgsBase {
40
40
  * @param masterViewport the master viewport or parent chart issuing mouse events
41
41
  * @param slaveViewport the slave viewport or child chart receiving mouse events
42
42
  */
43
- static copy(args: ModifierMouseArgs, modifierGroup: string, masterViewport: Size, slaveViewport: Size): ModifierMouseArgs;
43
+ static copy(args: ModifierMouseArgs, modifierGroup: string, masterViewport: Rect, slaveViewport: Rect): ModifierMouseArgs;
44
44
  /**
45
45
  * The MousePoint as an X,Y coordinate where the event occurred
46
46
  */
@@ -29,8 +29,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.ModifierMouseArgs = void 0;
30
30
  var Guard_1 = require("../../Core/Guard");
31
31
  var Point_1 = require("../../Core/Point");
32
- var ModifierArgsBase_1 = require("./ModifierArgsBase");
33
32
  var DpiHelper_1 = require("../Visuals/TextureManager/DpiHelper");
33
+ var ModifierArgsBase_1 = require("./ModifierArgsBase");
34
34
  /**
35
35
  * Mouse arguments passed to {@link ChartModifierBase} methods
36
36
  */
@@ -119,9 +119,11 @@ var ModifierMouseArgs = /** @class */ (function (_super) {
119
119
  ModifierMouseArgs.copy = function (args, modifierGroup, masterViewport, slaveViewport) {
120
120
  var mousePoint = args.mousePoint;
121
121
  if (masterViewport && slaveViewport) {
122
+ var sourceX = args.mousePoint.x - masterViewport.x;
123
+ var sourceY = args.mousePoint.y - masterViewport.y;
122
124
  var scaleX = slaveViewport.width / masterViewport.width;
123
125
  var scaleY = slaveViewport.height / masterViewport.height;
124
- mousePoint = new Point_1.Point(args.mousePoint.x * scaleX, args.mousePoint.y * scaleY);
126
+ mousePoint = new Point_1.Point(slaveViewport.x + sourceX * scaleX, slaveViewport.y + sourceY * scaleY);
125
127
  }
126
128
  return __assign(__assign({}, args), { isMaster: false, handled: false, modifierGroup: modifierGroup, mousePoint: mousePoint });
127
129
  };
@@ -84,6 +84,7 @@ export interface IRolloverModifierOptions extends IChartModifierBaseOptions {
84
84
  showTooltip?: boolean;
85
85
  allowTooltipOverlapping?: boolean;
86
86
  snapToDataPoint?: boolean;
87
+ placementDivId?: string;
87
88
  }
88
89
  /**
89
90
  * The RolloverModifier provides tooltip and cursor behavior on a 2D {@link SciChartSurface}
@@ -125,6 +126,7 @@ export declare class RolloverModifier extends ChartModifierBase2D implements IIn
125
126
  private showTooltipProperty;
126
127
  private allowTooltipOverlappingProperty;
127
128
  private includedSeriesMap;
129
+ private placementDivIdProperty;
128
130
  /**
129
131
  * Creates an instance of the RolloverModifier
130
132
  * @param options Optional parameters {@link IRolloverModifierOptions} used to configure the modifier
@@ -222,6 +224,14 @@ export declare class RolloverModifier extends ChartModifierBase2D implements IIn
222
224
  */
223
225
  private testIsIncludedSeries;
224
226
  private getSeriesInfos;
227
+ /**
228
+ * Gets or sets the parent div element reference or id for the Tooltip
229
+ */
230
+ get placementDivId(): string;
231
+ /**
232
+ * Gets or sets the parent div element reference or id for the Tooltip
233
+ */
234
+ set placementDivId(value: string);
225
235
  }
226
236
  /**
227
237
  * @ignore