UNPKG

@rcsb/rcsb-saguaro

Version:
70 lines (69 loc) 2.7 kB
import { RcsbD3Manager } from "./RcsbD3/RcsbD3Manager"; import { RcsbFvContextManager } from "../RcsbFv/RcsbFvContextManager/RcsbFvContextManager"; import { RcsbDisplayInterface } from "./RcsbDisplay/RcsbDisplayInterface"; import { RcsbFvTrackDataElementInterface } from "../RcsbDataManager/RcsbDataManager"; import { RcsbSelection } from "./RcsbSelection"; import { Subject } from "rxjs"; import { RcsbScaleInterface } from "./RcsbD3/RcsbD3ScaleFactory"; export interface LocationViewInterface { from: number; to: number; } export declare class RcsbBoard { readonly d3Manager: RcsbD3Manager; private readonly domId; private readonly boardDiv; private _width; private _bgColor; private _innerPadding; private tracks; private highlightHoverElementFlag; private readonly selection; private readonly _xScale; private limits; private currentLocationView; private updateTask; private updateDelay; private upToDate; private isIntersecting; private zoomEventHandler; private readonly boardSubject; private readonly mouseHoverSubject; readonly elementClickSubject: Subject<{ d?: RcsbFvTrackDataElementInterface; e?: MouseEvent; }>; private readonly contextManager; private readonly scrollEvent; constructor(elementId: string, xScale: RcsbScaleInterface, selection: RcsbSelection, contextManager: RcsbFvContextManager); removeScrollEvent(): void; private addSVG; private addMainG; setElementClickCallback(f: (d?: RcsbFvTrackDataElementInterface, e?: MouseEvent) => void): void; setHighlightHoverPosition(): void; addHoverCallback(f: (n: Array<RcsbFvTrackDataElementInterface>) => void): void; setRange(from: number, to: number): void; setSelection(boardId: string, mode: 'select' | 'hover'): void; highlightRegion(d: RcsbFvTrackDataElementInterface | null, operation: 'set' | 'add' | 'replace-last', mode: 'select' | 'hover', propFlag?: boolean): void; private moveSelection; startBoard(): void; private startTracks; reset(): void; setHighlightHoverElement(flag: boolean): void; private addHighlightHoverElement; addTrack(track: RcsbDisplayInterface | Array<RcsbDisplayInterface>, options?: {}): void; private addTrackCallbacks; private setBoardHeight; setBoardWidth(w: number): void; private setLocation; private updateAllTracks; private moveAllTracks; xScale(): RcsbScaleInterface; private moveBoard; private updateAndMove; private updateWithDelay; setScale(domId: string): void; getSelection(): RcsbSelection; private triggerScaleEvent; private triggerSelectionEvent; }