You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
2.9 KiB
87 lines
2.9 KiB
import { Linear } from '@antv/scale';
|
|
import { Component } from '../../core';
|
|
import { Group } from '../../shapes';
|
|
import { Selection } from '../../util';
|
|
import { Axis } from '../axis';
|
|
import { Title } from './title';
|
|
import { Handle } from './continuous/handle';
|
|
import { ContinuousOptions, ContinuousStyleProps } from './types';
|
|
export type { ContinuousOptions, ContinuousStyleProps };
|
|
export declare class Continuous extends Component<ContinuousStyleProps> {
|
|
constructor(options: ContinuousOptions);
|
|
protected eventToOffsetScale: Linear;
|
|
protected innerRibbonScale: Linear;
|
|
protected title?: Title;
|
|
protected label: Axis;
|
|
protected ribbon: Selection;
|
|
protected indicator: Selection;
|
|
protected get handleOffsetRatio(): number;
|
|
protected handlesGroup: Selection;
|
|
protected startHandle?: Handle;
|
|
protected endHandle?: Handle;
|
|
getBBox(): DOMRect;
|
|
render(attributes: Required<ContinuousStyleProps>, container: Group): void;
|
|
private get range();
|
|
private get ribbonScale();
|
|
private get ribbonRange();
|
|
get selection(): [number, number];
|
|
protected ifHorizontal<T>(a: T, b: T): T;
|
|
private renderTitle;
|
|
private get availableSpace();
|
|
private get labelFixedSpacing();
|
|
private get labelPosition();
|
|
private cacheLabelBBox;
|
|
private get labelBBox();
|
|
private get labelShape();
|
|
private get ribbonBBox();
|
|
private get ribbonShape();
|
|
private renderRibbon;
|
|
private getHandleClassName;
|
|
private renderHandles;
|
|
private adjustHandles;
|
|
/**
|
|
* Update SliderHandle sub-elements className to use legend prefix
|
|
* SliderHandle generates: handle-icon-rect, handle-icon-line, handle-label
|
|
* Should add legend className: g2-legend-handle-marker, g2-legend-handle-label
|
|
*/
|
|
private updateSliderHandleClassNames;
|
|
private cacheHandleBBox;
|
|
private get handleBBox();
|
|
/**
|
|
* 因为 handle label 的宽高是动态的,所以 handle bbox 是第一次渲染时的 bbox
|
|
*/
|
|
private get handleShape();
|
|
private setHandlePosition;
|
|
private renderIndicator;
|
|
private get labelData();
|
|
private get labelStyle();
|
|
private renderLabel;
|
|
private get labelAxisStyle();
|
|
private adjustLabel;
|
|
/** 当前交互的对象 */
|
|
private target;
|
|
/** 上次鼠标事件的位置 */
|
|
private prevValue;
|
|
bindEvents(): void;
|
|
private onHovering;
|
|
showIndicator(value: number, text?: string): void;
|
|
private hideIndicator;
|
|
private onDragStart;
|
|
private onDragging;
|
|
private onDragEnd;
|
|
private updateMouse;
|
|
setSelection(start: number, end: number): void;
|
|
private updateSelection;
|
|
private get step();
|
|
private getTickValue;
|
|
/**
|
|
* 事件触发的位置对应的value值
|
|
*/
|
|
private getValueByCanvasPoint;
|
|
/** reverse: 屏幕偏移量 -> 值 */
|
|
private getOffset;
|
|
private getRealSelection;
|
|
private getRealValue;
|
|
private dispatchSelection;
|
|
private dispatchIndicated;
|
|
}
|
|
|