UNPKG

chart-0714

Version:

Professional trading chart library with advanced customization for trading journal apps

46 lines (45 loc) 1.69 kB
import { DrawingManager } from '../../core/DrawingManager'; import { UnifiedCoordinateSystem } from '../../core/UnifiedCoordinateSystem'; import { DataManager } from '../../core/DataManager'; import { UnifiedRenderer } from '../../renderers/UnifiedRenderer'; import { LabelRenderer } from '../../renderers/LabelRenderer'; import { CursorType } from '../../utils/cursor'; export interface EventCallbacks { onMouseMove?: (x: number, y: number, chartCoords: { time: number; price: number; }) => void; onMouseClick?: (x: number, y: number, chartCoords: { time: number; price: number; }) => void; onMouseDown?: (x: number, y: number) => void; onMouseUp?: (x: number, y: number) => void; onMouseLeave?: () => void; onContextMenu?: (e: MouseEvent) => void; onDoubleClick?: (e: MouseEvent) => void; } export declare class ChartEventController { private coordSystem; private drawingManager; private dataManager; private unifiedRenderer; private labelRenderer; private callbacks; private canvas; private lastMouseX; private lastMouseY; private isDraggingDrawing; private dragStartChartCoords; private cursorType; private boundHandlers; constructor(canvas: HTMLCanvasElement, coordSystem: UnifiedCoordinateSystem, drawingManager: DrawingManager, dataManager: DataManager | null, unifiedRenderer: UnifiedRenderer, labelRenderer: LabelRenderer, callbacks?: EventCallbacks); private handleContextMenu; private setupEventListeners; getLastMousePosition(): { x: number; y: number; }; setCursorType(type: CursorType): void; dispose(): void; }