UNPKG

ts-mind

Version:

A web-mind lib write in typescript.Sound apis and friendly plug-in mechanism in this lib.

73 lines (72 loc) 2.6 kB
import TSMind from ".."; import layout_provider from "./layout"; import { TSM_node } from "../node"; interface ITSMViewProvOptions { [k: string]: any; } declare type ITSMViewEle<T = HTMLElement> = T | null; export default class view_provider { private tsm; opts: ITSMViewProvOptions; layout: layout_provider; container: HTMLElement; e_panel: HTMLElement; e_nodes: HTMLElement; e_canvas: HTMLCanvasElement; e_editor: HTMLInputElement; canvas_ctx: CanvasRenderingContext2D; size: { w: number; h: number; }; selected_node: ITSMViewEle<TSM_node>; editing_node: ITSMViewEle<TSM_node>; private actualZoom; private zoomStep; private minZoom; private maxZoom; constructor(tsm: TSMind, options: ITSMViewProvOptions); add_event: (obj: {}, event_name: ITSMEventType, event_handle: ITSMAnyCall<any[], any>) => void; get_binded_nodeid(element: HTMLElement): null | string; is_expander: (element: HTMLElement) => boolean; reset: () => void; reset_theme: () => void; reset_custom_style: () => void; load: () => void; expand_size: () => void; init_nodes_size: (node: TSM_node) => void; init_nodes: () => void; add_node: (node: TSM_node) => void; create_node_element: (node: TSM_node, parent_node: HTMLElement | DocumentFragment) => void; remove_node: (node: TSM_node) => void; update_node: (node: TSM_node) => void; select_node: (node: TSM_node | null) => void; select_clear: () => void; get_editing_node: () => TSM_node | null; is_editing: () => boolean; edit_node_begin: (node: TSM_node) => void; edit_node_end: () => void; get_view_offset: () => { x: number; y: number; }; resize: () => void; _show: () => void; zoomIn: () => boolean; zoomOut: () => boolean; setZoom: (zoom: number) => boolean; _center_root: () => void; show: (keep_center: boolean) => void; relayout: () => void; save_location: (node: TSM_node) => void; restore_location: (node: TSM_node) => void; clear_nodes: () => void; show_nodes: () => void; reset_node_custom_style: (node: TSM_node) => void; _reset_node_custom_style: (node_element: HTMLElement, node_data: any) => void; clear_node_custom_style: (node: TSM_node) => void; clear_lines: (canvas_ctx?: CanvasRenderingContext2D) => void; show_lines: (canvas_ctx?: CanvasRenderingContext2D) => void; draw_line: (pin: ITSMPotions, pout: ITSMPotions, offset: ITSMPotions, canvas_ctx?: CanvasRenderingContext2D) => void; } export {};