scichart
Version:
Fast WebGL JavaScript Charting Library and Framework
131 lines (130 loc) • 5.06 kB
TypeScript
import { ISubChartDefinition } from "../../Builder/buildSurface";
import { Rect } from "../../Core/Rect";
import { Thickness } from "../../Core/Thickness";
import { ESciChartSurfaceType } from "../../types/SciChartSurfaceType";
import { ESubChartClippingMode } from "../../types/SubChartClippingMode";
import { TSubSurfaceCoordinateMode } from "../../types/SubSurfaceCoordinateMode";
import { TSubSurfacePosition } from "../../types/SubSurfacePosition";
import { TSciChart } from "../../types/TSciChart";
import { BrushCache } from "../Drawing/BrushCache";
import { WebGlRenderContext2D } from "../Drawing/WebGlRenderContext2D";
import { I2DSubSurfaceOptions, I2DSurfaceOptions } from "./I2DSurfaceOptions";
import { ISciChartSubSurface } from "./ISciChartSubSurface";
import { ISciChartSurface } from "./ISciChartSurface";
import { ISciChartSubSurfaceOptions } from "./sciChartSubSurfaceCommon";
import { SciChartSurface } from "./SciChartSurface";
/**
* @summary The {@link SciChartSubSurface} is the surface created within another surface
* @description
* It can be added using {@link SciChartSubSurface.createSubSurface} method.
*
* To update the positioning of the {@link SciChartSubSurface}, use {@link SciChartSubSurface.subPosition};
* also you can call {@link SciChartSubSurface.updateSubLayout} to refresh the layout of the sub-surface.
* @remarks
* It is not possible to have more than one level of nested sub-surfaces.
*/
export declare class SciChartSubSurface extends SciChartSurface implements ISciChartSubSurface {
static createSubSurface(parentSurface: ISciChartSurface, options?: I2DSubSurfaceOptions): SciChartSubSurface;
readonly isSubSurface: boolean;
/** @inheritDoc */
readonly subChartContainer: HTMLDivElement;
topSectionClass: string;
leftSectionClass: string;
bottomSectionClass: string;
rightSectionClass: string;
/** @inheritDoc */
backgroundFillBrushCache: BrushCache;
protected isTransparentProperty: boolean;
protected clippingModeProperty: ESubChartClippingMode;
private subPositionProperty;
private coordinateModeProperty;
private parentXAxisIdProperty;
private parentYAxisIdProperty;
private subChartContainerId;
private parentSurfaceProperty;
private isVisibleProperty;
private sectionScaleProperty;
/**
* Creates an instance of the {@link SciChartSubSurface}
* @param webAssemblyContext The {@link TSciChart | SciChart 2D WebAssembly Context} containing native methods and
* access to our WebGL2 Engine and WebAssembly numerical methods
* @param options optional parameters of type {@link ISciChartSubSurfaceOptions} used to configure the {@link SciChartSubSurface}
*/
constructor(webAssemblyContext: TSciChart, options?: ISciChartSubSurfaceOptions);
get viewRect(): Rect;
get clipRect(): Rect;
get clippingMode(): ESubChartClippingMode;
set clippingMode(value: ESubChartClippingMode);
/**
* @inheritDoc
*/
get isTransparent(): boolean;
set isTransparent(value: boolean);
/**
* @inheritDoc
*/
get coordinateMode(): TSubSurfaceCoordinateMode;
set coordinateMode(coordinateMode: TSubSurfaceCoordinateMode);
/**
* @inheritDoc
*/
get parentXAxisId(): string;
set parentXAxisId(id: string);
/**
* @inheritDoc
*/
get parentYAxisId(): string;
set parentYAxisId(id: string);
/**
* @inheritDoc
*/
get subPosition(): TSubSurfacePosition;
set subPosition(value: TSubSurfacePosition);
/**
* @inheritDoc
*/
get isVisible(): boolean;
set isVisible(isVisible: boolean);
/**
* @inheritDoc
*/
get sectionScale(): number;
set sectionScale(value: number);
/**
* @inheritDoc
*/
updateSubLayout(): void;
/**
* @inheritDoc
*/
get parentSurface(): ISciChartSurface;
/**
* @inheritDoc
*/
changeViewportSize(pixelWidth: number, pixelHeight: number): void;
/**
* @inheritDoc
*/
getSubChartContainer(): HTMLDivElement;
/**
* @inheritDoc
*/
getSubChartRect(): Rect;
get currentWebGlRenderContext(): WebGlRenderContext2D;
/**
* @inheritDoc
*/
delete(clearHtml?: boolean): void;
protected getOptions(): I2DSurfaceOptions & Required<Omit<I2DSubSurfaceOptions, keyof I2DSurfaceOptions>>;
/** Serializes the current {@link SciChartSubSurface} to a JSON definition. See {@link ISubChartDefinition} */
toJSON(excludeData?: boolean): {
type: ESciChartSurfaceType;
} & ISubChartDefinition;
protected calcPadding(): Thickness;
/**
* @inheritDoc
*/
protected applySciChartBackground(background: string, renderContext: WebGlRenderContext2D): void;
protected updateWrapper(subChartOffset: Thickness): void;
protected getOffsets(subChartContainer: HTMLDivElement): Thickness;
}