oncoprintjs
Version:
A data visualization for cancer genomic data.
80 lines (79 loc) • 3.54 kB
TypeScript
/// <reference types="jquery" />
/// <reference types="jstree" />
import OncoprintModel, { TrackId } from './oncoprintmodel';
import OncoprintToolTip from './oncoprinttooltip';
export default class OncoprintLabelView {
private $canvas;
private model;
private tooltip;
private supersampling_ratio;
private base_font_size;
private track_tops;
private cell_tops;
private cell_tops_view_space;
private cell_tops_this_space;
private cell_heights;
private cell_heights_view_space;
private cell_heights_this_space;
private label_middles_view_space;
private label_middles_this_space;
private label_left_padding;
private labels;
private sublabels;
private label_colors;
private label_circle_colors;
private label_font_weight;
private html_labels;
private track_link_urls;
private track_descriptions;
private minimum_track_height;
private maximum_label_width;
private tracks;
private show_sublabels;
private rendering_suppressed;
private highlighted_track_label_only;
private drag_callback;
private dragged_label_track_id;
private drag_mouse_y;
private scroll_y;
private ctx;
constructor($canvas: JQuery<HTMLCanvasElement>, model: OncoprintModel, tooltip: OncoprintToolTip);
private circleRadius;
private renderedLabelWidth;
private updateFromModel;
private setUpContext;
private resizeAndClear;
private isNecessaryToShortenLabel;
private shortenLabelIfNecessary;
private static formatTooltipHeader;
private renderAllLabels;
private isMouseOnLabel;
private getLabelAboveMouseSpace;
private getLabelBelowMouseSpace;
private startDragging;
private stopDragging;
private getMaximumLabelLength;
getWidth(): number;
getFontSize(no_supersampling_adjustment?: boolean): number;
setDragCallback(callback: OncoprintLabelView['drag_callback']): void;
removeTrack(model: OncoprintModel, getCellViewHeight: () => number): void;
moveTrack(model: OncoprintModel, getCellViewHeight: () => number): void;
setTrackGroupOrder(model: OncoprintModel, getCellViewHeight: () => number): void;
setShowTrackLabels(model: OncoprintModel, getCellViewHeight: () => number): void;
addTracks(model: OncoprintModel, track_ids: TrackId[], getCellViewHeight: () => number): void;
setShowTrackSublabels(model: OncoprintModel, getCellViewHeight: () => number): void;
setScroll(model: OncoprintModel, getCellViewHeight: () => number): void;
setHorzScroll(model: OncoprintModel): void;
setViewport(model: OncoprintModel, getCellViewHeight: () => number): void;
setVertScroll(model: OncoprintModel, getCellViewHeight: () => number): void;
setVertZoom(model: OncoprintModel, getCellViewHeight: () => number): void;
setZoom(model: OncoprintModel, getCellViewHeight: () => number): void;
highlightTrackLabelOnly(track_id: TrackId, model: OncoprintModel): void;
setHighlightedTracks(model: OncoprintModel): void;
setTrackMovable(model: OncoprintModel): void;
setTrackGroupHeader(model: OncoprintModel, getCellViewHeight: () => number): void;
sort(model: OncoprintModel, getCellViewHeight: () => number): void;
suppressRendering(): void;
releaseRendering(model: OncoprintModel, getCellViewHeight: () => number): void;
toSVGGroup(model: OncoprintModel, full_labels: boolean, offset_x: number, offset_y: number): SVGGElement;
}