scichart 2.2.2416 → 3.0.0-beta.224

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 (394) hide show
  1. package/Builder/buildDataSeries.d.ts +16 -1
  2. package/Builder/buildDataSeries.js +24 -1
  3. package/Builder/buildSeries.d.ts +60 -3
  4. package/Builder/buildSeries.js +28 -1
  5. package/Builder/buildSurface.d.ts +28 -2
  6. package/Builder/buildSurface.js +53 -31
  7. package/Builder/chartBuilder.d.ts +20 -7
  8. package/Builder/chartBuilder.js +37 -3
  9. package/Charting/ChartModifiers/ChartModifierBase.d.ts +21 -0
  10. package/Charting/ChartModifiers/ChartModifierBase.js +12 -0
  11. package/Charting/ChartModifiers/ChartModifierBase2D.js +2 -1
  12. package/Charting/ChartModifiers/CursorModifier.d.ts +83 -10
  13. package/Charting/ChartModifiers/CursorModifier.js +147 -58
  14. package/Charting/ChartModifiers/DataPointSelectionModifier.js +2 -1
  15. package/Charting/ChartModifiers/LegendModifier.js +2 -1
  16. package/Charting/ChartModifiers/ModifierMouseArgs.d.ts +6 -1
  17. package/Charting/ChartModifiers/ModifierMouseArgs.js +13 -3
  18. package/Charting/ChartModifiers/MouseWheelZoomModifier.d.ts +2 -2
  19. package/Charting/ChartModifiers/MouseWheelZoomModifier.js +16 -4
  20. package/Charting/ChartModifiers/OverviewRangeSelectionModifier.d.ts +2 -1
  21. package/Charting/ChartModifiers/OverviewRangeSelectionModifier.js +8 -4
  22. package/Charting/ChartModifiers/PinchZoomModifier.js +2 -1
  23. package/Charting/ChartModifiers/RolloverModifier.d.ts +40 -0
  24. package/Charting/ChartModifiers/RolloverModifier.js +40 -3
  25. package/Charting/ChartModifiers/RubberBandXyZoomModifier.js +2 -1
  26. package/Charting/ChartModifiers/SeriesSelectionModifier.js +2 -1
  27. package/Charting/ChartModifiers/XAxisDragModifier.d.ts +1 -1
  28. package/Charting/ChartModifiers/XAxisDragModifier.js +2 -1
  29. package/Charting/ChartModifiers/YAxisDragModifier.d.ts +1 -1
  30. package/Charting/ChartModifiers/YAxisDragModifier.js +2 -1
  31. package/Charting/ChartModifiers/ZoomExtentsModifier.js +2 -1
  32. package/Charting/ChartModifiers/ZoomPanModifier.js +2 -1
  33. package/Charting/ChartModifiers/constants.d.ts +3 -1
  34. package/Charting/ChartModifiers/constants.js +2 -0
  35. package/Charting/Drawing/BatchRenderContext.d.ts +6 -0
  36. package/Charting/Drawing/BatchRenderContext.js +40 -0
  37. package/Charting/Drawing/RenderSurface.d.ts +2 -1
  38. package/Charting/Drawing/RenderSurface.js +3 -2
  39. package/Charting/Drawing/WebGlRenderContext2D.d.ts +19 -4
  40. package/Charting/Drawing/WebGlRenderContext2D.js +70 -41
  41. package/Charting/LayoutManager/BaseCenteredAxisLayoutStrategy.js +2 -1
  42. package/Charting/LayoutManager/BottomAlignedInnerAxisLayoutStrategy.js +1 -1
  43. package/Charting/LayoutManager/CentralAxesLayoutManager.js +2 -1
  44. package/Charting/LayoutManager/LayoutManager.d.ts +2 -1
  45. package/Charting/LayoutManager/LayoutManager.js +6 -5
  46. package/Charting/LayoutManager/LeftAlignedInnerAxisLayoutStrategy.js +1 -1
  47. package/Charting/LayoutManager/RightAlignedInnerAxisLayoutStrategy.js +1 -1
  48. package/Charting/LayoutManager/TopAlignedInnerAxisLayoutStrategy.js +1 -1
  49. package/Charting/Model/BaseDataSeries.d.ts +10 -1
  50. package/Charting/Model/BaseDataSeries.js +9 -8
  51. package/Charting/Model/BaseHeatmapDataSeries.d.ts +18 -5
  52. package/Charting/Model/BaseHeatmapDataSeries.js +21 -13
  53. package/Charting/Model/ChartData/SeriesInfo.d.ts +6 -0
  54. package/Charting/Model/ChartData/SeriesInfo.js +5 -0
  55. package/Charting/Model/ChartData/XyySeriesInfo.d.ts +2 -0
  56. package/Charting/Model/ChartData/XyySeriesInfo.js +2 -0
  57. package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.js +4 -3
  58. package/Charting/Model/Filters/HlcCustomFilter.js +12 -9
  59. package/Charting/Model/Filters/HlcFilterBase.js +2 -1
  60. package/Charting/Model/Filters/HlcScaleOffsetFilter.js +2 -1
  61. package/Charting/Model/Filters/OhlcCustomFilter.js +12 -9
  62. package/Charting/Model/Filters/OhlcScaleOffsetFilter.js +2 -1
  63. package/Charting/Model/Filters/XyCustomFilter.js +12 -9
  64. package/Charting/Model/Filters/XyFilterBase.d.ts +14 -5
  65. package/Charting/Model/Filters/XyFilterBase.js +47 -15
  66. package/Charting/Model/Filters/XyMovingAverageFilter.js +2 -1
  67. package/Charting/Model/Filters/XyRatioFilter.js +2 -1
  68. package/Charting/Model/Filters/XyScaleOffsetFilter.js +2 -1
  69. package/Charting/Model/Filters/XyyCustomFilter.js +12 -9
  70. package/Charting/Model/Filters/XyyFilterBase.js +2 -1
  71. package/Charting/Model/Filters/XyyScaleOffsetFilter.js +2 -1
  72. package/Charting/Model/Filters/XyzCustomFilter.js +12 -9
  73. package/Charting/Model/Filters/XyzFilterBase.js +2 -1
  74. package/Charting/Model/Filters/XyzScaleOffsetFilter.js +2 -1
  75. package/Charting/Model/IDataSeries.d.ts +9 -1
  76. package/Charting/Model/IDataSeries.js +8 -0
  77. package/Charting/Model/NonUniformHeatmapDataSeries.d.ts +112 -0
  78. package/Charting/Model/NonUniformHeatmapDataSeries.js +261 -0
  79. package/Charting/Model/PaletteFactory.d.ts +40 -4
  80. package/Charting/Model/PaletteFactory.js +37 -11
  81. package/Charting/Model/XyTextDataSeries.d.ts +121 -0
  82. package/Charting/Model/XyTextDataSeries.js +274 -0
  83. package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.d.ts +1 -1
  84. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +1 -1
  85. package/Charting/Services/RenderPassData.d.ts +15 -5
  86. package/Charting/Services/RenderPassData.js +27 -5
  87. package/Charting/Services/SciChartRenderer.d.ts +2 -1
  88. package/Charting/Services/SciChartRenderer.js +92 -29
  89. package/Charting/Themes/IThemeProvider.d.ts +61 -0
  90. package/Charting/Themes/IThemeProvider.js +67 -1
  91. package/Charting/Themes/SciChartJSDarkTheme.d.ts +4 -0
  92. package/Charting/Themes/SciChartJSDarkTheme.js +6 -2
  93. package/Charting/Themes/SciChartJSDarkv2Theme.js +3 -0
  94. package/Charting/Themes/SciChartJSLightTheme.d.ts +8 -0
  95. package/Charting/Themes/SciChartJSLightTheme.js +8 -0
  96. package/Charting/Themes/SciChartJsNavyTheme.d.ts +10 -0
  97. package/Charting/Themes/SciChartJsNavyTheme.js +49 -0
  98. package/Charting/Visuals/Annotations/AdornerLayer.js +4 -8
  99. package/Charting/Visuals/Annotations/AnnotationBase.d.ts +80 -7
  100. package/Charting/Visuals/Annotations/AnnotationBase.js +238 -28
  101. package/Charting/Visuals/Annotations/AnnotationClickEventArgs.d.ts +11 -0
  102. package/Charting/Visuals/Annotations/AnnotationClickEventArgs.js +12 -0
  103. package/Charting/Visuals/Annotations/AxisMarkerAnnotation.d.ts +1 -0
  104. package/Charting/Visuals/Annotations/AxisMarkerAnnotation.js +18 -19
  105. package/Charting/Visuals/Annotations/BoxAnnotation.d.ts +1 -0
  106. package/Charting/Visuals/Annotations/BoxAnnotation.js +69 -67
  107. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.d.ts +2 -2
  108. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +20 -20
  109. package/Charting/Visuals/Annotations/CustomAnnotation.d.ts +1 -1
  110. package/Charting/Visuals/Annotations/CustomAnnotation.js +3 -2
  111. package/Charting/Visuals/Annotations/HorizontalLineAnnotation.js +6 -3
  112. package/Charting/Visuals/Annotations/IAdornerProvider.d.ts +12 -0
  113. package/Charting/Visuals/Annotations/IAnnotation.d.ts +9 -0
  114. package/Charting/Visuals/Annotations/IAnnotation.js +9 -0
  115. package/Charting/Visuals/Annotations/LineAnnotation.d.ts +1 -0
  116. package/Charting/Visuals/Annotations/LineAnnotation.js +29 -35
  117. package/Charting/Visuals/Annotations/NativeTextAnnotation.d.ts +193 -0
  118. package/Charting/Visuals/Annotations/NativeTextAnnotation.js +536 -0
  119. package/Charting/Visuals/Annotations/OverviewCustomResizableAnnotation.d.ts +4 -2
  120. package/Charting/Visuals/Annotations/OverviewCustomResizableAnnotation.js +19 -14
  121. package/Charting/Visuals/Annotations/RolloverLegendSvgAnnotation.d.ts +2 -2
  122. package/Charting/Visuals/Annotations/RolloverLegendSvgAnnotation.js +9 -8
  123. package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.d.ts +2 -2
  124. package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.js +6 -6
  125. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.d.ts +2 -2
  126. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +16 -17
  127. package/Charting/Visuals/Annotations/SvgAnnotationBase.d.ts +13 -2
  128. package/Charting/Visuals/Annotations/SvgAnnotationBase.js +34 -42
  129. package/Charting/Visuals/Annotations/TextAnnotation.d.ts +2 -2
  130. package/Charting/Visuals/Annotations/TextAnnotation.js +41 -22
  131. package/Charting/Visuals/Annotations/VerticalLineAnnotation.js +6 -3
  132. package/Charting/Visuals/Annotations/annotationHelpers.d.ts +6 -6
  133. package/Charting/Visuals/Annotations/annotationHelpers.js +7 -6
  134. package/Charting/Visuals/Annotations/constants.d.ts +13 -1
  135. package/Charting/Visuals/Annotations/constants.js +12 -0
  136. package/Charting/Visuals/Axis/AxisBase2D.d.ts +24 -4
  137. package/Charting/Visuals/Axis/AxisBase2D.js +115 -38
  138. package/Charting/Visuals/Axis/AxisCore.d.ts +10 -5
  139. package/Charting/Visuals/Axis/AxisCore.js +11 -10
  140. package/Charting/Visuals/Axis/AxisRenderer.js +114 -20
  141. package/Charting/Visuals/Axis/CategoryAxis.js +2 -1
  142. package/Charting/Visuals/Axis/CategoryAxisBase.d.ts +15 -15
  143. package/Charting/Visuals/Axis/CategoryAxisBase.js +14 -12
  144. package/Charting/Visuals/Axis/DateTimeNumericAxis.js +2 -1
  145. package/Charting/Visuals/Axis/DeltaCalculator/DateTimeDeltaCalculator.js +2 -1
  146. package/Charting/Visuals/Axis/LabelProvider/DateLabelProvider.js +2 -1
  147. package/Charting/Visuals/Axis/LabelProvider/LabelCache.js +2 -0
  148. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.d.ts +14 -0
  149. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +140 -33
  150. package/Charting/Visuals/Axis/LabelProvider/LogarithmicLabelProvider.js +2 -1
  151. package/Charting/Visuals/Axis/LabelProvider/NumericLabelProvider.js +2 -1
  152. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.js +2 -1
  153. package/Charting/Visuals/Axis/LabelProvider/SmartDateLabelProvider.d.ts +31 -1
  154. package/Charting/Visuals/Axis/LabelProvider/SmartDateLabelProvider.js +64 -42
  155. package/Charting/Visuals/Axis/LabelProvider/TextLabelProvider.d.ts +2 -2
  156. package/Charting/Visuals/Axis/LabelProvider/TextLabelProvider.js +16 -19
  157. package/Charting/Visuals/Axis/LogarithmicAxis.js +9 -6
  158. package/Charting/Visuals/Axis/NumericAxis.js +3 -3
  159. package/Charting/Visuals/Axis/constants.d.ts +1 -0
  160. package/Charting/Visuals/Axis/constants.js +1 -0
  161. package/Charting/Visuals/HeatmapLegend.d.ts +95 -0
  162. package/Charting/Visuals/HeatmapLegend.js +192 -0
  163. package/Charting/Visuals/Helpers/NativeObject.d.ts +15 -2
  164. package/Charting/Visuals/Helpers/NativeObject.js +72 -6
  165. package/Charting/Visuals/I2DSurfaceOptions.d.ts +46 -0
  166. package/Charting/Visuals/PointMarkers/BasePointMarker.d.ts +5 -0
  167. package/Charting/Visuals/PointMarkers/BasePointMarker.js +28 -0
  168. package/Charting/Visuals/PointMarkers/IPointMarker.d.ts +8 -0
  169. package/Charting/Visuals/RenderableSeries/Animations/BandAnimation.js +2 -1
  170. package/Charting/Visuals/RenderableSeries/Animations/BandAnimationStyle.js +2 -1
  171. package/Charting/Visuals/RenderableSeries/Animations/BubbleAnimation.js +2 -1
  172. package/Charting/Visuals/RenderableSeries/Animations/CandlestickAnimation.js +2 -1
  173. package/Charting/Visuals/RenderableSeries/Animations/CandlestickAnimationStyle.js +2 -1
  174. package/Charting/Visuals/RenderableSeries/Animations/ColumnAnimation.js +2 -1
  175. package/Charting/Visuals/RenderableSeries/Animations/ColumnAnimationStyle.js +2 -1
  176. package/Charting/Visuals/RenderableSeries/Animations/CustomPointMarkerStyle.js +2 -1
  177. package/Charting/Visuals/RenderableSeries/Animations/FadeAnimation.js +2 -1
  178. package/Charting/Visuals/RenderableSeries/Animations/LineAnimation.js +2 -1
  179. package/Charting/Visuals/RenderableSeries/Animations/MountainAnimation.js +2 -1
  180. package/Charting/Visuals/RenderableSeries/Animations/MountainAnimationStyle.js +2 -1
  181. package/Charting/Visuals/RenderableSeries/Animations/OhlcAnimation.js +2 -1
  182. package/Charting/Visuals/RenderableSeries/Animations/OhlcAnimationStyle.js +2 -1
  183. package/Charting/Visuals/RenderableSeries/Animations/PointMarkerStyle.js +2 -1
  184. package/Charting/Visuals/RenderableSeries/Animations/ScaleAnimation.js +2 -1
  185. package/Charting/Visuals/RenderableSeries/Animations/ScatterAnimation.js +2 -1
  186. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.d.ts +8 -2
  187. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.js +3 -3
  188. package/Charting/Visuals/RenderableSeries/Animations/WaveAnimation.js +2 -1
  189. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.d.ts +7 -0
  190. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +42 -10
  191. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.d.ts +128 -0
  192. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.js +201 -0
  193. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.d.ts +26 -0
  194. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.js +39 -3
  195. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.d.ts +7 -0
  196. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.js +17 -2
  197. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.d.ts +2 -0
  198. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +15 -2
  199. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +10 -0
  200. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +93 -17
  201. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +8 -1
  202. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +21 -1
  203. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.d.ts +1 -0
  204. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +4 -0
  205. package/Charting/Visuals/RenderableSeries/DataLabels/BandSeriesDataLabelProvider.d.ts +43 -0
  206. package/Charting/Visuals/RenderableSeries/DataLabels/BandSeriesDataLabelProvider.js +142 -0
  207. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.d.ts +92 -0
  208. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.js +129 -0
  209. package/Charting/Visuals/RenderableSeries/DataLabels/BubbleSeriesDataLabelProvider.d.ts +17 -0
  210. package/Charting/Visuals/RenderableSeries/DataLabels/BubbleSeriesDataLabelProvider.js +62 -0
  211. package/Charting/Visuals/RenderableSeries/DataLabels/ColumnSeriesDataLabelProvider.d.ts +47 -0
  212. package/Charting/Visuals/RenderableSeries/DataLabels/ColumnSeriesDataLabelProvider.js +125 -0
  213. package/Charting/Visuals/RenderableSeries/DataLabels/ContoursDataLabelProvider.d.ts +71 -0
  214. package/Charting/Visuals/RenderableSeries/DataLabels/ContoursDataLabelProvider.js +221 -0
  215. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelLayoutManager.d.ts +5 -0
  216. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelLayoutManager.js +2 -0
  217. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.d.ts +208 -0
  218. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.js +410 -0
  219. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.d.ts +40 -0
  220. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.js +141 -0
  221. package/Charting/Visuals/RenderableSeries/DataLabels/HeatMapDataLabelProvider.d.ts +63 -0
  222. package/Charting/Visuals/RenderableSeries/DataLabels/HeatMapDataLabelProvider.js +198 -0
  223. package/Charting/Visuals/RenderableSeries/DataLabels/LineSeriesDataLabelProvider.d.ts +35 -0
  224. package/Charting/Visuals/RenderableSeries/DataLabels/LineSeriesDataLabelProvider.js +92 -0
  225. package/Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider.d.ts +12 -0
  226. package/Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider.js +134 -0
  227. package/Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider.d.ts +56 -0
  228. package/Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider.js +167 -0
  229. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +0 -1
  230. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +1 -2
  231. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.d.ts +5 -2
  232. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +47 -40
  233. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +1 -1
  234. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.d.ts +1 -0
  235. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +18 -5
  236. package/Charting/Visuals/RenderableSeries/DrawingProviders/ErrorSeriesDrawingProvider.d.ts +0 -1
  237. package/Charting/Visuals/RenderableSeries/DrawingProviders/ErrorSeriesDrawingProvider.js +14 -27
  238. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.d.ts +17 -4
  239. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +34 -11
  240. package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.d.ts +36 -0
  241. package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.js +493 -0
  242. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.d.ts +5 -2
  243. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +8 -5
  244. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformContoursDrawingProvider.js +4 -4
  245. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.d.ts +3 -0
  246. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +15 -4
  247. package/Charting/Visuals/RenderableSeries/FastBandRenderableSeries.js +2 -1
  248. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +21 -0
  249. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +40 -4
  250. package/Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries.d.ts +2 -0
  251. package/Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries.js +18 -3
  252. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.d.ts +36 -2
  253. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.js +77 -8
  254. package/Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries.js +2 -1
  255. package/Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries.d.ts +7 -0
  256. package/Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries.js +16 -4
  257. package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.js +2 -1
  258. package/Charting/Visuals/RenderableSeries/FastMountainRenderableSeries.js +2 -1
  259. package/Charting/Visuals/RenderableSeries/FastOhlcRenderableSeries.js +2 -1
  260. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.d.ts +17 -0
  261. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.js +45 -0
  262. package/Charting/Visuals/RenderableSeries/HeatmapColorMap.js +3 -2
  263. package/Charting/Visuals/RenderableSeries/HitTest/BandSeriesHitTestProvider.js +35 -5
  264. package/Charting/Visuals/RenderableSeries/HitTest/BaseHitTestProvider.js +17 -1
  265. package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.d.ts +8 -0
  266. package/Charting/Visuals/RenderableSeries/HitTest/MountainSeriesHitTestProvider.js +7 -1
  267. package/Charting/Visuals/RenderableSeries/HitTest/NonUniformHeatmapHitTestProvider.d.ts +20 -0
  268. package/Charting/Visuals/RenderableSeries/HitTest/NonUniformHeatmapHitTestProvider.js +86 -0
  269. package/Charting/Visuals/RenderableSeries/HitTest/TextSeriesHitTestProvider.d.ts +6 -0
  270. package/Charting/Visuals/RenderableSeries/HitTest/TextSeriesHitTestProvider.js +56 -0
  271. package/Charting/Visuals/RenderableSeries/HitTest/UniformHeatmapHitTestProvider.js +1 -1
  272. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.d.ts +7 -1
  273. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.js +34 -2
  274. package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +6 -1
  275. package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +12 -0
  276. package/Charting/Visuals/RenderableSeries/ISpline.d.ts +2 -0
  277. package/Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries.d.ts +74 -0
  278. package/Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries.js +99 -0
  279. package/Charting/Visuals/RenderableSeries/ShaderEffect.js +2 -2
  280. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.d.ts +5 -0
  281. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +29 -10
  282. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +7 -3
  283. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +28 -8
  284. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.d.ts +5 -0
  285. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +28 -8
  286. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +2 -1
  287. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.d.ts +3 -0
  288. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.js +13 -2
  289. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +4 -1
  290. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.d.ts +7 -0
  291. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +33 -9
  292. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.d.ts +5 -0
  293. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.js +7 -1
  294. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.d.ts +2 -75
  295. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.js +8 -130
  296. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +5 -0
  297. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +7 -1
  298. package/Charting/Visuals/RenderableSeries/constants.d.ts +5 -1
  299. package/Charting/Visuals/RenderableSeries/constants.js +4 -0
  300. package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.js +3 -3
  301. package/Charting/Visuals/SciChartDefaults.d.ts +4 -0
  302. package/Charting/Visuals/SciChartDefaults.js +4 -0
  303. package/Charting/Visuals/SciChartOverview.js +5 -3
  304. package/Charting/Visuals/SciChartPieSurface/PieSegment/IPieSegment.d.ts +4 -0
  305. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.d.ts +13 -0
  306. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.js +22 -4
  307. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.d.ts +2 -1
  308. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.js +1 -0
  309. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.d.ts +5 -0
  310. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.js +17 -19
  311. package/Charting/Visuals/SciChartSurface.d.ts +225 -7
  312. package/Charting/Visuals/SciChartSurface.js +782 -28
  313. package/Charting/Visuals/SciChartSurfaceBase.d.ts +16 -1
  314. package/Charting/Visuals/SciChartSurfaceBase.js +34 -2
  315. package/Charting/Visuals/TextureManager/CanvasTexture.js +1 -1
  316. package/Charting/Visuals/TextureManager/DpiHelper.js +3 -7
  317. package/Charting/Visuals/TextureManager/TextureManager.d.ts +11 -0
  318. package/Charting/Visuals/TextureManager/TextureManager.js +37 -1
  319. package/Charting/Visuals/createMaster.js +7 -10
  320. package/Charting/Visuals/createSingle.js +2 -0
  321. package/Charting/Visuals/licenseManager2D.js +9 -9
  322. package/Charting/Visuals/sciChartInitCommon.js +16 -12
  323. package/Charting3D/CameraController.d.ts +5 -0
  324. package/Charting3D/CameraController.js +6 -0
  325. package/Charting3D/ChartModifiers/ResetCamera3DModifier.js +2 -1
  326. package/Charting3D/Visuals/Axis/AxisBase3D.js +7 -5
  327. package/Charting3D/Visuals/Axis/NumericAxis3D.js +2 -1
  328. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.d.ts +4 -0
  329. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.js +7 -0
  330. package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.js +6 -4
  331. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.d.ts +7 -2
  332. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.js +3 -2
  333. package/Charting3D/Visuals/RenderableSeries/SurfaceMesh/SurfaceMeshRenderableSeries3D.d.ts +0 -5
  334. package/Charting3D/Visuals/RenderableSeries/SurfaceMesh/SurfaceMeshRenderableSeries3D.js +12 -11
  335. package/Charting3D/Visuals/SciChart3DSurface.d.ts +2 -2
  336. package/Charting3D/Visuals/SciChart3DSurface.js +18 -11
  337. package/Charting3D/Visuals/createMaster3d.js +10 -18
  338. package/Charting3D/Visuals/createSingle3d.js +12 -10
  339. package/Core/Animations/GenericAnimation.d.ts +2 -0
  340. package/Core/Animations/GenericAnimation.js +3 -0
  341. package/Core/Animations/NumberRangeAnimator.js +7 -2
  342. package/Core/BuildStamp.d.ts +1 -1
  343. package/Core/BuildStamp.js +2 -2
  344. package/Core/Mouse/MouseManager.d.ts +20 -0
  345. package/Core/Mouse/MouseManager.js +199 -30
  346. package/README.md +91 -403
  347. package/_wasm/scichart.browser.js +1 -1
  348. package/_wasm/scichart2d.data +0 -0
  349. package/_wasm/scichart2d.js +280 -267
  350. package/_wasm/scichart2d.wasm +0 -0
  351. package/_wasm/scichart3d.data +0 -0
  352. package/_wasm/scichart3d.js +280 -268
  353. package/_wasm/scichart3d.wasm +0 -0
  354. package/constants/performanceWarnings.d.ts +2 -0
  355. package/constants/performanceWarnings.js +3 -1
  356. package/package.json +2 -2
  357. package/types/AutoColorMode.d.ts +9 -0
  358. package/types/AutoColorMode.js +13 -0
  359. package/types/BaseType.d.ts +3 -1
  360. package/types/BaseType.js +2 -0
  361. package/types/DataLabelProviderType.d.ts +15 -0
  362. package/types/DataLabelProviderType.js +19 -0
  363. package/types/DataLabelSkipMode.d.ts +21 -0
  364. package/types/DataLabelSkipMode.js +25 -0
  365. package/types/DefaultRenderLayer.d.ts +10 -0
  366. package/types/DefaultRenderLayer.js +14 -0
  367. package/types/SeriesType.d.ts +7 -1
  368. package/types/SeriesType.js +6 -0
  369. package/types/SvgClippingMode.d.ts +17 -0
  370. package/types/SvgClippingMode.js +21 -0
  371. package/types/TDataLabelStyle.d.ts +16 -0
  372. package/types/TDataLabelStyle.js +2 -0
  373. package/types/TSciChart.d.ts +214 -118
  374. package/types/TSciChart3D.d.ts +104 -70
  375. package/types/TextPosition.d.ts +17 -0
  376. package/types/TextPosition.js +39 -0
  377. package/types/ThemeProviderType.d.ts +3 -1
  378. package/types/ThemeProviderType.js +2 -0
  379. package/utils/ccall/appendDoubleVectorFromJsArray.d.ts +10 -1
  380. package/utils/ccall/appendDoubleVectorFromJsArray.js +24 -1
  381. package/utils/copyVector.d.ts +2 -0
  382. package/utils/copyVector.js +10 -0
  383. package/utils/memoize.d.ts +1 -0
  384. package/utils/memoize.js +26 -0
  385. package/utils/number.d.ts +1 -0
  386. package/utils/number.js +5 -1
  387. package/utils/parseColor.d.ts +2 -0
  388. package/utils/parseColor.js +3 -3
  389. package/utils/text.d.ts +5 -0
  390. package/utils/text.js +48 -0
  391. package/utils/translate.d.ts +8 -0
  392. package/utils/translate.js +27 -5
  393. package/utils/zeroArray2D.d.ts +5 -0
  394. package/utils/zeroArray2D.js +5 -0
@@ -10,16 +10,22 @@ var XyDirection_1 = require("../../../types/XyDirection");
10
10
  var guid_1 = require("../../../utils/guid");
11
11
  var translate_1 = require("../../../utils/translate");
12
12
  var AxisCore_1 = require("../Axis/AxisCore");
13
+ var SciChartSurfaceBase_1 = require("../SciChartSurfaceBase");
13
14
  var DpiHelper_1 = require("../TextureManager/DpiHelper");
15
+ var AnnotationClickEventArgs_1 = require("./AnnotationClickEventArgs");
14
16
  var AnnotationDragDeltaEventArgs_1 = require("./AnnotationDragDeltaEventArgs");
15
17
  var constants_1 = require("./constants");
16
18
  var IAnnotation_1 = require("./IAnnotation");
17
19
  var EDraggingGripPoint;
18
20
  (function (EDraggingGripPoint) {
19
- EDraggingGripPoint["Point1"] = "Point1";
20
- EDraggingGripPoint["Point2"] = "Point2";
21
- EDraggingGripPoint["Point3"] = "Point3";
22
- EDraggingGripPoint["Point4"] = "Point4";
21
+ /** x1,y1 */
22
+ EDraggingGripPoint["x1y1"] = "x1y1";
23
+ /** x2,y1 */
24
+ EDraggingGripPoint["x2y2"] = "x2y2";
25
+ /** x1,y2 */
26
+ EDraggingGripPoint["x2y1"] = "x2y1";
27
+ /** x2,y2 */
28
+ EDraggingGripPoint["x1y2"] = "x1y2";
23
29
  EDraggingGripPoint["Body"] = "Body";
24
30
  })(EDraggingGripPoint = exports.EDraggingGripPoint || (exports.EDraggingGripPoint = {}));
25
31
  /**
@@ -59,7 +65,7 @@ var AnnotationBase = /** @class */ (function () {
59
65
  * @param options optional parameters of type {@link IAnnotationBaseOptions} used to configure the annotation at construct time
60
66
  */
61
67
  function AnnotationBase(options) {
62
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
68
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
63
69
  this.showWarning = true;
64
70
  this.prevIsSelected = true;
65
71
  /** the annotation absolute coordinates */
@@ -71,6 +77,19 @@ var AnnotationBase = /** @class */ (function () {
71
77
  };
72
78
  this.typeMap = new Map();
73
79
  this.isHiddenProperty = false;
80
+ this.annotationsGripsStrokeProperty = SciChartSurfaceBase_1.SciChartSurfaceBase.DEFAULT_THEME.annotationsGripsBorderBrush;
81
+ this.annotationsGripsFillProperty = SciChartSurfaceBase_1.SciChartSurfaceBase.DEFAULT_THEME.annotationsGripsBackroundBrush;
82
+ this.annotationsGripsRadiusProperty = constants_1.ADORNER_GRIP_RADIUS;
83
+ this.selectionBoxStrokeProperty = SciChartSurfaceBase_1.SciChartSurfaceBase.DEFAULT_THEME.annotationSelectionStroke;
84
+ this.selectionBoxDeltaProperty = 1.5;
85
+ this.selectionBoxThicknessProperty = 6;
86
+ this.dragPointsProperty = [
87
+ EDraggingGripPoint.Body,
88
+ EDraggingGripPoint.x1y1,
89
+ EDraggingGripPoint.x2y2,
90
+ EDraggingGripPoint.x2y1,
91
+ EDraggingGripPoint.x1y2
92
+ ];
74
93
  this.annotationLayerProperty = IAnnotation_1.EAnnotationLayer.AboveChart;
75
94
  this.isEditableProperty = false;
76
95
  this.xAxisIdProperty = AxisCore_1.AxisCore.DEFAULT_AXIS_ID;
@@ -83,6 +102,8 @@ var AnnotationBase = /** @class */ (function () {
83
102
  this.dragStarted = new EventHandler_1.EventHandler();
84
103
  this.dragEnded = new EventHandler_1.EventHandler();
85
104
  this.dragDelta = new EventHandler_1.EventHandler();
105
+ this.selectedChanged = new EventHandler_1.EventHandler();
106
+ this.clicked = new EventHandler_1.EventHandler();
86
107
  this.annotationLayerProperty = (_b = options === null || options === void 0 ? void 0 : options.annotationLayer) !== null && _b !== void 0 ? _b : this.annotationLayerProperty;
87
108
  this.resizeDirectionsProperty = (_c = options === null || options === void 0 ? void 0 : options.resizeDirections) !== null && _c !== void 0 ? _c : this.resizeDirectionsProperty;
88
109
  this.isEditableProperty = (_d = options === null || options === void 0 ? void 0 : options.isEditable) !== null && _d !== void 0 ? _d : this.isEditableProperty;
@@ -97,6 +118,13 @@ var AnnotationBase = /** @class */ (function () {
97
118
  this.yCoordinateModeProperty = (_o = options === null || options === void 0 ? void 0 : options.yCoordinateMode) !== null && _o !== void 0 ? _o : this.yCoordinateModeProperty;
98
119
  this.isSelectedProperty = (_p = options === null || options === void 0 ? void 0 : options.isSelected) !== null && _p !== void 0 ? _p : this.isSelectedProperty;
99
120
  this.opacityProperty = (_q = options === null || options === void 0 ? void 0 : options.opacity) !== null && _q !== void 0 ? _q : 1.0;
121
+ this.annotationsGripsStrokeProperty = (_r = options === null || options === void 0 ? void 0 : options.annotationsGripsStroke) !== null && _r !== void 0 ? _r : this.annotationsGripsStrokeProperty;
122
+ this.annotationsGripsFillProperty = (_s = options === null || options === void 0 ? void 0 : options.annotationsGripsFill) !== null && _s !== void 0 ? _s : this.annotationsGripsFillProperty;
123
+ this.annotationsGripsRadiusProperty = (_t = options === null || options === void 0 ? void 0 : options.annotationsGripsRadius) !== null && _t !== void 0 ? _t : this.annotationsGripsRadius;
124
+ this.selectionBoxStroke = (_u = options === null || options === void 0 ? void 0 : options.selectionBoxStroke) !== null && _u !== void 0 ? _u : this.selectionBoxStrokeProperty;
125
+ this.selectionBoxDelta = (_v = options === null || options === void 0 ? void 0 : options.selectionBoxDelta) !== null && _v !== void 0 ? _v : this.selectionBoxDeltaProperty;
126
+ this.selectionBoxThickness = (_w = options === null || options === void 0 ? void 0 : options.selectionBoxThickness) !== null && _w !== void 0 ? _w : this.selectionBoxThicknessProperty;
127
+ this.dragPointsProperty = (_x = options === null || options === void 0 ? void 0 : options.dragPoints) !== null && _x !== void 0 ? _x : this.dragPointsProperty;
100
128
  if (options === null || options === void 0 ? void 0 : options.onDragStarted) {
101
129
  if (typeof options.onDragStarted === "string") {
102
130
  this.typeMap.set("onDragStarted", options.onDragStarted);
@@ -124,6 +152,15 @@ var AnnotationBase = /** @class */ (function () {
124
152
  this.dragDelta.subscribe(options.onDrag);
125
153
  }
126
154
  }
155
+ if (options === null || options === void 0 ? void 0 : options.onClick) {
156
+ if (typeof options.onClick === "string") {
157
+ this.typeMap.set("onClick", options.onClick);
158
+ this.clicked.subscribe((0, classFactory_1.getFunction)(BaseType_1.EBaseType.OptionFunction, options.onClick));
159
+ }
160
+ else {
161
+ this.clicked.subscribe(options.onClick);
162
+ }
163
+ }
127
164
  }
128
165
  Object.defineProperty(AnnotationBase.prototype, "annotationLayer", {
129
166
  /** @inheritDoc */
@@ -308,9 +345,8 @@ var AnnotationBase = /** @class */ (function () {
308
345
  Object.defineProperty(AnnotationBase.prototype, "isVerticalChart", {
309
346
  /** @inheritDoc */
310
347
  get: function () {
311
- var _this = this;
312
- var xAxis = this.parentSurface.xAxes.asArray().find(function (a) { return a.id === _this.xAxisId; });
313
- return xAxis.isVerticalChart;
348
+ var xAxis = this.parentSurface.getXAxisById(this.xAxisId);
349
+ return xAxis === null || xAxis === void 0 ? void 0 : xAxis.isVerticalChart;
314
350
  },
315
351
  enumerable: false,
316
352
  configurable: true
@@ -339,22 +375,98 @@ var AnnotationBase = /** @class */ (function () {
339
375
  set: function (value) {
340
376
  if (this.isSelectedProperty !== value) {
341
377
  this.isSelectedProperty = value;
378
+ this.selectedChanged.raiseEvent(this.isSelectedProperty);
342
379
  this.notifyPropertyChanged(constants_1.PROPERTY.IS_SELECTED);
343
380
  }
344
381
  },
345
382
  enumerable: false,
346
383
  configurable: true
347
384
  });
348
- Object.defineProperty(AnnotationBase.prototype, "opacity", {
385
+ Object.defineProperty(AnnotationBase.prototype, "annotationsGripsStroke", {
349
386
  /** @inheritDoc */
350
387
  get: function () {
351
- return this.opacityProperty;
388
+ return this.annotationsGripsStrokeProperty;
352
389
  },
353
390
  /** @inheritDoc */
354
- set: function (opacity) {
355
- if (this.opacityProperty !== opacity) {
356
- this.opacityProperty = opacity;
357
- this.notifyPropertyChanged(constants_1.PROPERTY.OPACITY);
391
+ set: function (color) {
392
+ if (this.annotationsGripsStrokeProperty !== color) {
393
+ this.annotationsGripsStrokeProperty = color;
394
+ this.notifyPropertyChanged(constants_1.PROPERTY.ADORNER_STROKE);
395
+ }
396
+ },
397
+ enumerable: false,
398
+ configurable: true
399
+ });
400
+ Object.defineProperty(AnnotationBase.prototype, "annotationsGripsFill", {
401
+ /** @inheritDoc */
402
+ get: function () {
403
+ return this.annotationsGripsFillProperty;
404
+ },
405
+ /** @inheritDoc */
406
+ set: function (color) {
407
+ if (this.annotationsGripsFillProperty !== color) {
408
+ this.annotationsGripsFillProperty = color;
409
+ this.notifyPropertyChanged(constants_1.PROPERTY.ADORNER_FILL);
410
+ }
411
+ },
412
+ enumerable: false,
413
+ configurable: true
414
+ });
415
+ Object.defineProperty(AnnotationBase.prototype, "annotationsGripsRadius", {
416
+ /** @inheritDoc */
417
+ get: function () {
418
+ return this.annotationsGripsRadiusProperty;
419
+ },
420
+ /** @inheritDoc */
421
+ set: function (radius) {
422
+ if (this.annotationsGripsRadiusProperty !== radius) {
423
+ this.annotationsGripsRadiusProperty = radius;
424
+ this.notifyPropertyChanged(constants_1.PROPERTY.ADORNER_RADIUS);
425
+ }
426
+ },
427
+ enumerable: false,
428
+ configurable: true
429
+ });
430
+ Object.defineProperty(AnnotationBase.prototype, "selectionBoxStroke", {
431
+ /** @inheritDoc */
432
+ get: function () {
433
+ return this.selectionBoxStrokeProperty;
434
+ },
435
+ /** @inheritDoc */
436
+ set: function (color) {
437
+ if (this.selectionBoxStrokeProperty !== color) {
438
+ this.selectionBoxStrokeProperty = color;
439
+ this.notifyPropertyChanged(constants_1.PROPERTY.SELECTION_STROKE);
440
+ }
441
+ },
442
+ enumerable: false,
443
+ configurable: true
444
+ });
445
+ Object.defineProperty(AnnotationBase.prototype, "selectionBoxDelta", {
446
+ /** @inheritDoc */
447
+ get: function () {
448
+ return this.selectionBoxDeltaProperty;
449
+ },
450
+ /** @inheritDoc */
451
+ set: function (delta) {
452
+ if (this.selectionBoxDeltaProperty !== delta) {
453
+ this.selectionBoxDeltaProperty = delta;
454
+ this.notifyPropertyChanged(constants_1.PROPERTY.SELECTION_DELTA);
455
+ }
456
+ },
457
+ enumerable: false,
458
+ configurable: true
459
+ });
460
+ Object.defineProperty(AnnotationBase.prototype, "selectionBoxThickness", {
461
+ /** @inheritDoc */
462
+ get: function () {
463
+ return this.selectionBoxThicknessProperty;
464
+ },
465
+ /** @inheritDoc */
466
+ set: function (delta) {
467
+ if (this.selectionBoxThicknessProperty !== delta) {
468
+ this.selectionBoxThicknessProperty = delta;
469
+ this.notifyPropertyChanged(constants_1.PROPERTY.SELECTION_DELTA);
358
470
  }
359
471
  },
360
472
  enumerable: false,
@@ -367,6 +479,21 @@ var AnnotationBase = /** @class */ (function () {
367
479
  enumerable: false,
368
480
  configurable: true
369
481
  });
482
+ Object.defineProperty(AnnotationBase.prototype, "opacity", {
483
+ /** @inheritDoc */
484
+ get: function () {
485
+ return this.opacityProperty;
486
+ },
487
+ /** @inheritDoc */
488
+ set: function (opacity) {
489
+ if (this.opacityProperty !== opacity) {
490
+ this.opacityProperty = opacity;
491
+ this.notifyPropertyChanged(constants_1.PROPERTY.OPACITY);
492
+ }
493
+ },
494
+ enumerable: false,
495
+ configurable: true
496
+ });
370
497
  Object.defineProperty(AnnotationBase.prototype, "svgAdornerRoot", {
371
498
  get: function () {
372
499
  return this.svgAdornerRootProperty;
@@ -385,8 +512,39 @@ var AnnotationBase = /** @class */ (function () {
385
512
  this.isSelected = false;
386
513
  this.parentSurface.adornerLayer.deselectAnnotation(this);
387
514
  }
515
+ this.selectedChanged.unsubscribeAll();
388
516
  this.deleteAdorner();
389
517
  };
518
+ /** Get the dragging points that should be enabled for this annotation */
519
+ AnnotationBase.prototype.getDragPoints = function () {
520
+ return this.dragPointsProperty;
521
+ };
522
+ /** Set the dragging points that should be enabled for this annotation */
523
+ AnnotationBase.prototype.setDragPoints = function (dragPoints) {
524
+ this.dragPointsProperty = dragPoints;
525
+ this.notifyPropertyChanged(constants_1.PROPERTY.DRAGPOINTS);
526
+ };
527
+ /** Called internally. Send a click to the annotation if the point is in bounds, raising the clicked event and optionally selecting the annotation. */
528
+ AnnotationBase.prototype.click = function (args, selectOnClick) {
529
+ var xyPoint = (0, translate_1.translateFromCanvasToSeriesViewRect)(args.mousePoint, this.parentSurface.seriesViewRect, true);
530
+ if (!xyPoint) {
531
+ return false;
532
+ }
533
+ if (this.checkIsClickedOnAnnotationInternal(xyPoint.x, xyPoint.y)) {
534
+ var borders = this.getAdornerAnnotationBorders(true);
535
+ var x = args.mousePoint.x / DpiHelper_1.DpiHelper.PIXEL_RATIO;
536
+ var y = args.mousePoint.y / DpiHelper_1.DpiHelper.PIXEL_RATIO;
537
+ var relativeCoords = new Point_1.Point(x - borders.x1, y - borders.y1);
538
+ this.isSelected = selectOnClick;
539
+ this.clicked.raiseEvent(new AnnotationClickEventArgs_1.AnnotationClickEventArgs(this, args, relativeCoords));
540
+ return this.isSelected;
541
+ }
542
+ else {
543
+ this.isSelected = false;
544
+ }
545
+ return this.isSelected;
546
+ };
547
+ /** Called internally. Select the annotation if the point is in bounds. Does not raise the clicked event */
390
548
  AnnotationBase.prototype.clickToSelect = function (args) {
391
549
  var xyPoint = (0, translate_1.translateFromCanvasToSeriesViewRect)(args.mousePoint, this.parentSurface.seriesViewRect, true);
392
550
  if (!xyPoint) {
@@ -456,6 +614,7 @@ var AnnotationBase = /** @class */ (function () {
456
614
  onDrag: this.typeMap.get("onDrag"),
457
615
  onDragEnded: this.typeMap.get("onDragEnded"),
458
616
  onDragStarted: this.typeMap.get("onDragStarted"),
617
+ onClick: this.typeMap.get("onClick"),
459
618
  opacity: this.opacity,
460
619
  resizeDirections: this.resizeDirections,
461
620
  x1: this.x1Property,
@@ -465,7 +624,14 @@ var AnnotationBase = /** @class */ (function () {
465
624
  xAxisId: this.xAxisId,
466
625
  yAxisId: this.yAxisId,
467
626
  xCoordinateMode: this.xCoordinateMode,
468
- yCoordinateMode: this.yCoordinateMode
627
+ yCoordinateMode: this.yCoordinateMode,
628
+ annotationsGripsStroke: this.annotationsGripsStroke,
629
+ annotationsGripsFill: this.annotationsGripsFill,
630
+ annotationsGripsRadius: this.annotationsGripsRadius,
631
+ selectionBoxStroke: this.selectionBoxStroke,
632
+ selectionBoxDelta: this.selectionBoxDelta,
633
+ selectionBoxThickness: this.selectionBoxThickness,
634
+ dragPoints: this.dragPointsProperty
469
635
  };
470
636
  return { type: this.type, options: options };
471
637
  };
@@ -473,20 +639,47 @@ var AnnotationBase = /** @class */ (function () {
473
639
  * Returns annotationBorders
474
640
  * @param ordered flag to return x and y values in ascending order, where x1 <= x2 and y1 <= y2
475
641
  */
476
- AnnotationBase.prototype.getAnnotationBorders = function (ordered) {
642
+ AnnotationBase.prototype.getAnnotationBorders = function (ordered, applyDelta) {
643
+ var _a, _b;
477
644
  if (ordered === void 0) { ordered = false; }
478
- if (!ordered)
645
+ if (applyDelta === void 0) { applyDelta = false; }
646
+ if (!ordered && !applyDelta)
479
647
  return this.annotationBorders;
480
- var _a = this.annotationBorders, x1 = _a.x1, x2 = _a.x2, y1 = _a.y1, y2 = _a.y2;
481
- if (x2 < x1) {
482
- var t = x1;
483
- x1 = x2;
484
- x2 = t;
648
+ var _c = this.annotationBorders, x1 = _c.x1, x2 = _c.x2, y1 = _c.y1, y2 = _c.y2;
649
+ var delta = applyDelta ? this.selectionBoxDelta : 0;
650
+ if (ordered) {
651
+ if (x2 < x1) {
652
+ _a = [x2 - delta, x1 + delta], x1 = _a[0], x2 = _a[1];
653
+ }
654
+ else {
655
+ x1 -= delta;
656
+ x2 += delta;
657
+ }
658
+ if (y2 < y1) {
659
+ _b = [y2 - delta, y1 + delta], y1 = _b[0], y2 = _b[1];
660
+ }
661
+ else {
662
+ y1 -= delta;
663
+ y2 += delta;
664
+ }
485
665
  }
486
- if (y2 < y1) {
487
- var t = y1;
488
- y1 = y2;
489
- y2 = t;
666
+ else {
667
+ if (x2 < x1) {
668
+ x1 += delta;
669
+ x2 -= delta;
670
+ }
671
+ else {
672
+ x1 -= delta;
673
+ x2 += delta;
674
+ }
675
+ if (y2 < y1) {
676
+ y1 += delta;
677
+ y2 -= delta;
678
+ }
679
+ else {
680
+ y1 -= delta;
681
+ y2 += delta;
682
+ }
490
683
  }
491
684
  return { x1: x1, x2: x2, y1: y1, y2: y2 };
492
685
  };
@@ -494,9 +687,10 @@ var AnnotationBase = /** @class */ (function () {
494
687
  * Returns annotation borders for the {@link AdornerLayer} which has the size of the whole canvas
495
688
  * @param ordered flag to return x and y values in ascending order
496
689
  */
497
- AnnotationBase.prototype.getAdornerAnnotationBorders = function (ordered) {
690
+ AnnotationBase.prototype.getAdornerAnnotationBorders = function (ordered, applyDelta) {
498
691
  if (ordered === void 0) { ordered = false; }
499
- var borders = this.getAnnotationBorders(ordered);
692
+ if (applyDelta === void 0) { applyDelta = false; }
693
+ var borders = this.getAnnotationBorders(ordered, applyDelta);
500
694
  var x1 = this.isSvgAnnotation ? borders.x1 * DpiHelper_1.DpiHelper.PIXEL_RATIO : borders.x1;
501
695
  var x2 = this.isSvgAnnotation ? borders.x2 * DpiHelper_1.DpiHelper.PIXEL_RATIO : borders.x2;
502
696
  var y1 = this.isSvgAnnotation ? borders.y1 * DpiHelper_1.DpiHelper.PIXEL_RATIO : borders.y1;
@@ -510,6 +704,22 @@ var AnnotationBase = /** @class */ (function () {
510
704
  y2: point2.y / DpiHelper_1.DpiHelper.PIXEL_RATIO
511
705
  };
512
706
  };
707
+ /** Get svg for the adorner grip handles for standard annotations */
708
+ AnnotationBase.prototype.getAnnotationGripSvg = function (x, y) {
709
+ return "<circle cx=\"".concat(x, "\" cy=\"").concat(y, "\" r=\"").concat(this.annotationsGripsRadius, "\" fill=\"").concat(this.annotationsGripsFill, "\" stroke=\"").concat(this.annotationsGripsStroke, "\"/>");
710
+ };
711
+ /** Override this to disable drag behaviour for certain dragging points */
712
+ AnnotationBase.prototype.canDragPoint = function (dragPoint) {
713
+ return this.dragPointsProperty.includes(dragPoint);
714
+ };
715
+ /**
716
+ * Gets the svg string for the adorner for standard annotations. Called by updateAdornerInner.
717
+ * Coordinates passed in are the top left and bottom right of the bounding box.
718
+ * To get the bounding coordinates in their original order call this.getAdornerAnnotationBorders(false, true);
719
+ */
720
+ AnnotationBase.prototype.svgStringAdornerTemplate = function (x1, y1, x2, y2) {
721
+ return "<svg xmlns=\"http://www.w3.org/2000/svg\"></svg>";
722
+ };
513
723
  /**
514
724
  * @summary Notifies subscribers of {@link AnnotationBase.propertyChanged} that a property has changed and the chart requires redrawing
515
725
  * @description SciChart provides fully reactive components, changing any property or changing data will cause the {@link AnnotationBase} to
@@ -0,0 +1,11 @@
1
+ import { Point } from "../../../Core/Point";
2
+ import { ModifierMouseArgs } from "../../ChartModifiers/ModifierMouseArgs";
3
+ import { AnnotationBase } from "./AnnotationBase";
4
+ export declare class AnnotationClickEventArgs {
5
+ sender: AnnotationBase;
6
+ /** The mouse arguments for the click event */
7
+ mouseArgs: ModifierMouseArgs;
8
+ /** The coordinates where the click took place, relative to the top left of the annotation */
9
+ relativeCoords: Point;
10
+ constructor(sender: AnnotationBase, mouseArgs: ModifierMouseArgs, relativeCoords: Point);
11
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AnnotationClickEventArgs = void 0;
4
+ var AnnotationClickEventArgs = /** @class */ (function () {
5
+ function AnnotationClickEventArgs(sender, mouseArgs, relativeCoords) {
6
+ this.sender = sender;
7
+ this.mouseArgs = mouseArgs;
8
+ this.relativeCoords = relativeCoords;
9
+ }
10
+ return AnnotationClickEventArgs;
11
+ }());
12
+ exports.AnnotationClickEventArgs = AnnotationClickEventArgs;
@@ -201,6 +201,7 @@ export declare class AxisMarkerAnnotation extends RenderContextAnnotationBase {
201
201
  };
202
202
  protected checkIsClickedOnAnnotationInternal(x: number, y: number): boolean;
203
203
  protected updateAdornerInner(): void;
204
+ protected svgStringAdornerTemplate: (x1: number, y1: number, x2: number, y2: number) => string;
204
205
  /**
205
206
  * Calculates the adorner center relative to the canvas,
206
207
  * The coordinates are not scaled
@@ -46,8 +46,9 @@ var AxisMarkerAnnotation = /** @class */ (function (_super) {
46
46
  * @param options Optional parameters of type {@link IAxisMarkerAnnotationOptions} which configure the annotation upon construction
47
47
  */
48
48
  function AxisMarkerAnnotation(options) {
49
+ var _this = this;
49
50
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
50
- var _this = _super.call(this, options) || this;
51
+ _this = _super.call(this, options) || this;
51
52
  /** @inheritDoc */
52
53
  _this.type = IAnnotation_1.EAnnotationType.RenderContextAxisMarkerAnnotation;
53
54
  _this.fontSizeProperty = 14;
@@ -56,6 +57,13 @@ var AxisMarkerAnnotation = /** @class */ (function (_super) {
56
57
  _this.fontStyleProperty = "Normal";
57
58
  _this.colorProperty = "#FFFFFF";
58
59
  _this.backgroundColorProperty = "#b36200";
60
+ _this.svgStringAdornerTemplate = function (x1, y1, x2, y2) {
61
+ var colorLine = _this.selectionBoxStroke;
62
+ var _a = _this.calculateAdornerCenter(), x = _a.x, y = _a.y;
63
+ var width = x2 - x1;
64
+ var height = y2 - y1;
65
+ return "<svg xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"".concat(x1, "\" y=\"").concat(y1, "\" width=\"").concat(width, "\" height=\"").concat(height, "\" stroke=\"").concat(colorLine, "\" stroke-width=\"").concat(_this.selectionBoxThickness, "px\" fill=\"none\" />\n ").concat(_this.getAnnotationGripSvg(x, y), "\n </svg>");
66
+ };
59
67
  _this.fontSizeProperty = (_a = options === null || options === void 0 ? void 0 : options.fontSize) !== null && _a !== void 0 ? _a : _this.fontSizeProperty;
60
68
  _this.fontFamilyProperty = (_b = options === null || options === void 0 ? void 0 : options.fontFamily) !== null && _b !== void 0 ? _b : _this.fontFamilyProperty;
61
69
  _this.fontWeightProperty = (_c = options === null || options === void 0 ? void 0 : options.fontWeight) !== null && _c !== void 0 ? _c : _this.fontWeightProperty;
@@ -315,7 +323,7 @@ var AxisMarkerAnnotation = /** @class */ (function (_super) {
315
323
  var yAxisId = this.yAxisId;
316
324
  var yAxis = this.parentSurface.getYAxisById(yAxisId);
317
325
  var axisWithMarker = isX1CoordinateUndefined ? yAxis : xAxis;
318
- if (axisWithMarker.isVisible === false)
326
+ if (!axisWithMarker || axisWithMarker.isVisible === false)
319
327
  return;
320
328
  var coordinateMode = isX1CoordinateUndefined ? this.yCoordinateMode : this.xCoordinateMode;
321
329
  var coordinateCalculator = isX1CoordinateUndefined ? yCalc : xCalc;
@@ -350,8 +358,8 @@ var AxisMarkerAnnotation = /** @class */ (function (_super) {
350
358
  if (xyMousePoint) {
351
359
  if (xyAdorner) {
352
360
  var dist = (0, pointUtil_1.calcDistance)(xyAdorner.x, xyAdorner.y, xyMousePoint.x, xyMousePoint.y);
353
- if (dist < constants_1.ADORNER_GRIP_RADIUS * DpiHelper_1.DpiHelper.PIXEL_RATIO) {
354
- this.adornerDraggingPoint = AnnotationBase_1.EDraggingGripPoint.Point1;
361
+ if (dist < this.annotationsGripsRadius * DpiHelper_1.DpiHelper.PIXEL_RATIO) {
362
+ this.adornerDraggingPoint = AnnotationBase_1.EDraggingGripPoint.x1y1;
355
363
  return true;
356
364
  }
357
365
  }
@@ -367,11 +375,11 @@ var AxisMarkerAnnotation = /** @class */ (function (_super) {
367
375
  this.prevValue = xyValues;
368
376
  return;
369
377
  }
370
- if (this.x1) {
371
- this.x1 = xyValues.x;
378
+ if (this.x1 !== undefined) {
379
+ this.x1 -= this.prevValue.x - xyValues.x;
372
380
  }
373
- else if (this.y1) {
374
- this.y1 = xyValues.y;
381
+ else if (this.y1 !== undefined) {
382
+ this.y1 -= this.prevValue.y - xyValues.y;
375
383
  }
376
384
  this.prevValue = xyValues;
377
385
  };
@@ -397,9 +405,8 @@ var AxisMarkerAnnotation = /** @class */ (function (_super) {
397
405
  AxisMarkerAnnotation.prototype.updateAdornerInner = function () {
398
406
  this.deleteAdorner();
399
407
  if (this.isSelected) {
400
- var _a = this.getAdornerAnnotationBorders(true), x1 = _a.x1, x2 = _a.x2, y1 = _a.y1, y2 = _a.y2;
401
- var _b = this.calculateAdornerCenter(), x = _b.x, y = _b.y;
402
- var svgString = svgStringAdornerTemplate(x1, y1, x2, y2, x, y);
408
+ var _a = this.getAdornerAnnotationBorders(true, true), x1 = _a.x1, x2 = _a.x2, y1 = _a.y1, y2 = _a.y2;
409
+ var svgString = this.svgStringAdornerTemplate(x1, y1, x2, y2);
403
410
  var adornerSvgRoot = this.parentSurface.domSvgAdornerLayer;
404
411
  this.svgAdorner = annotationHelpers_1.annotationHelpers.createSvg(svgString, adornerSvgRoot);
405
412
  }
@@ -418,11 +425,3 @@ var AxisMarkerAnnotation = /** @class */ (function (_super) {
418
425
  return AxisMarkerAnnotation;
419
426
  }(RenderContextAnnotationBase_1.RenderContextAnnotationBase));
420
427
  exports.AxisMarkerAnnotation = AxisMarkerAnnotation;
421
- /** @ignore */
422
- var svgStringAdornerTemplate = function (x1, y1, x2, y2, x, y) {
423
- var colorLine = "#f00e0e66";
424
- var adornerFill = "#CDCDCD22";
425
- var adornerStroke = "#CDCDCD99";
426
- var delta = 1;
427
- return "<svg xmlns=\"http://www.w3.org/2000/svg\">\n <line x1=\"".concat(x1 - delta, "\" y1=\"").concat(y1, "\" x2=\"").concat(x2 + delta, "\" y2=\"").concat(y1, "\" stroke=\"").concat(colorLine, "\" stroke-width=\"").concat(2 * delta, "\" />\n <line x1=\"").concat(x2, "\" y1=\"").concat(y1 + delta, "\" x2=\"").concat(x2, "\" y2=\"").concat(y2 - delta, "\" stroke=\"").concat(colorLine, "\" stroke-width=\"").concat(2 * delta, "\" />\n <line x1=\"").concat(x1 - delta, "\" y1=\"").concat(y2, "\" x2=\"").concat(x2 + delta, "\" y2=\"").concat(y2, "\" stroke=\"").concat(colorLine, "\" stroke-width=\"").concat(2 * delta, "\" />\n <line x1=\"").concat(x1, "\" y1=\"").concat(y1 + delta, "\" x2=\"").concat(x1, "\" y2=\"").concat(y2 - delta, "\" stroke=\"").concat(colorLine, "\" stroke-width=\"").concat(2 * delta, "\" />\n <circle cx=\"").concat(x, "\" cy=\"").concat(y, "\" r=\"").concat(constants_1.ADORNER_GRIP_RADIUS, "\" fill=\"").concat(adornerFill, "\" stroke=\"").concat(adornerStroke, "\"/>\n</svg>");
428
- };
@@ -96,5 +96,6 @@ export declare class BoxAnnotation extends RenderContextAnnotationBase {
96
96
  protected checkIsClickedOnAnnotationInternal(x: number, y: number): boolean;
97
97
  protected notifyPropertyChanged(propertyName: string): void;
98
98
  protected updateAdornerInner(): void;
99
+ protected svgStringAdornerTemplate: (x1: number, y1: number, x2: number, y2: number) => string;
99
100
  private drawWithProvider;
100
101
  }