@devexperts/dxcharts-lite
Version:
46 lines (45 loc) • 2 kB
TypeScript
/*
* Copyright (C) 2019 - 2025 Devexperts Solutions IE Limited
* This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
* If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
import { Subject } from 'rxjs';
import { CanvasBoundsContainer, HitBoundsTest } from '../../canvas/canvas-bounds-container';
import { YAxisConfig } from '../../chart.config';
import EventBus from '../../events/event-bus';
import { ChartBaseElement } from '../../model/chart-base-element';
import { CanvasInputListenerComponent } from '../../inputlisteners/canvas-input-listener.component';
import { Pixel, Unit } from '../../model/scaling/viewport.model';
import { ChartPanComponent } from '../pan/chart-pan.component';
import { ScaleModel } from '../../model/scale.model';
import { HitTestCanvasModel } from '../../model/hit-test-canvas.model';
/**
* Handles the mouse drag on Y axis - to zoom the viewport vertically.
* @doc-tags scaling,zoom,viewport
*/
export declare class YAxisScaleHandler extends ChartBaseElement {
private bus;
private config;
private scale;
private canvasInputListener;
private bounds;
private hitTest;
private hitTestCanvasModel;
yAxisDragEndSubject: Subject<void>;
lastYStart: Unit;
lastYEnd: Unit;
lastYHeight: Unit;
lastYPxHeight: Pixel;
private dragNDropYComponent;
private dblClickCallback;
private touches;
private dblTapCallback;
constructor(bus: EventBus, config: YAxisConfig, panning: ChartPanComponent, scale: ScaleModel, canvasInputListener: CanvasInputListenerComponent, bounds: CanvasBoundsContainer, hitTest: HitBoundsTest, hitTestCanvasModel: HitTestCanvasModel);
isDragging(): boolean;
protected doActivate(): void;
private onYDragStart;
private onYDragTick;
private onYDragEnd;
setDblTapCallback: (cb: () => void) => () => void;
setDblClickCallback: (cb: () => void) => () => void;
}