react-mutation-mapper
Version:
Generic Mutation Mapper
55 lines (54 loc) • 1.98 kB
TypeScript
/// <reference types="jquery" />
import * as React from 'react';
import { SyntheticEvent } from 'react';
import { DataFilter } from '../../model/DataFilter';
import DataStore from '../../model/DataStore';
import TrackItem, { TrackItemSpec } from './TrackItem';
export declare type TrackProps = {
dataStore: DataStore;
width: number;
proteinLength: number;
trackItems?: TrackItemSpec[];
trackTitle?: JSX.Element;
hideBaseline?: boolean;
xOffset?: number;
defaultFilters?: DataFilter[];
idClassPrefix?: string;
isSubTrack?: boolean;
};
export default class Track extends React.Component<TrackProps, {}> {
private hitZoneConfig;
private shiftPressed;
private tooltipActive;
private shapes;
constructor(props: TrackProps);
setHitZone(hitRect: {
x: number;
y: number;
width: number;
height: number;
}, content?: JSX.Element, onMouseOver?: () => void, onClick?: () => void, onMouseOut?: () => void, cursor?: string, tooltipPlacement?: string): void;
getOverlay(): JSX.Element | undefined;
getOverlayPlacement(): string | undefined;
onMouseLeave(): void;
onBackgroundMouseMove(): void;
onBackgroundClick(): void;
onTrackItemClick(shapeComponent: TrackItem): void;
onTrackItemHover(shapeComponent: TrackItem): void;
onKeyDown(e: JQueryKeyEventObject): void;
onKeyUp(e: JQueryKeyEventObject): void;
onMouseOver(e: SyntheticEvent<any>): void;
onSVGMouseLeave(e: SyntheticEvent<any>): void;
onTooltipVisibleChange(visible: boolean): void;
onHitzoneMouseOut(): void;
get svgHeight(): number;
get items(): JSX.Element[];
private unhoverAllComponents;
private getComponentIndex;
private get tooltipVisible();
private get hitZone();
get tooltipVisibleProps(): any;
componentDidMount(): void;
componentWillUnmount(): void;
render(): JSX.Element;
}