UNPKG

scichart

Version:

Fast WebGL JavaScript Charting Library and Framework

59 lines (58 loc) 2.92 kB
import { MouseManager } from "../../Core/Mouse/MouseManager"; import { ObservableArray } from "../../Core/ObservableArray"; import { Rect } from "../../Core/Rect"; import { IChartModifierBase } from "../ChartModifiers/ChartModifierBase"; import { IAnnotation } from "./Annotations/IAnnotation"; import { ISciChartSurfaceBase } from "./ISciChartSurfaceBase"; import { INotifyOnDpiChanged } from "./TextureManager/DpiHelper"; import { ISuspendable } from "./UpdateSuspender"; export interface ISciChartSurfaceNative extends ISciChartSurfaceBase, ISuspendable, INotifyOnDpiChanged { /** * The {@link HTMLCanvasElement} which is the WebGL canvas that SciChart draws to */ domCanvasWebGL: HTMLCanvasElement; /** * Gets Chart Modifier Groups, is used for sharing events between chart modifiers */ readonly chartModifierGroups: string[]; /** * Gets the Series View {@link Rect}, a rectangle relative to the entire size of the {@link SciChartSurfaceBase} */ readonly seriesViewRect: Rect; readonly clipRect: Rect; /** * @summary Gets the collection of {@link IAnnotation} - annotations, markers or shapes drawn over the top of a {@link SciChartSurface} * @description A {@link SciChartSurface} can have zero to many {@link IAnnotation | Annotations}. * * The Annotations are drawn using our WebGL / WebAssembly rendering engine, but some use SVG for maximum configurability. * See derived types of {@link IAnnotation} such as {@link BoxAnnotation}, {@link LineAnnotation} etc... * * Use this collection to add and remove Annotations to the chart. */ readonly annotations: ObservableArray<IAnnotation>; /** * An {@link ObservableArray} of {@link IChartModifierBase} derived types. Chart Modifiers provide behavior such as zooming, panning, * tooltips, legends and more in SciChart's High Performance Realtime * {@link https://www.scichart.com/javascript-chart-features | JavaScript Charts}. * You can use our built in modifiers (see derived types of {@link ChartModifierBase}, or create your own for custom interaction behavior. */ readonly chartModifiers: ObservableArray<IChartModifierBase>; /** * Used internally, the flag is set after {@link SciChartSurfaceBase} is initialized */ setIsInitialized(): void; /** * Gets the main WebGL or 2D canvas */ getMainCanvas(): HTMLCanvasElement; /** Used internally to prevent redraw attamps if the webGL context ahs been lost */ isWebGLContextActive: boolean; /** * Gets the SciChartSurface Background as an HTML color code */ background: string; /** * The {@link MouseManager} subscribes to mouse events on the {@link domChartRoot} and routes them to components within SciChart */ mouseManager: MouseManager; }