@visactor/vchart
Version:
charts lib based @visactor/VGrammar
60 lines (59 loc) • 2.31 kB
TypeScript
import type { DataView } from '@visactor/vdataset';
import { BaseComponent } from '../base/base-component';
import type { IEffect } from '../../model/interface';
import type { ILayoutRect, ILayoutType, IOrientType, IPoint, StringOrNumber } from '../../typings';
import { CompilableData } from '../../compile/data/compilable-data';
import type { ILegend, ILegendCommonSpec } from './interface';
import type { IGraphic, IGroup } from '@visactor/vrender-core';
export declare abstract class BaseLegend<T extends ILegendCommonSpec> extends BaseComponent<T> implements ILegend {
layoutType: ILayoutType;
layoutZIndex: number;
layoutLevel: number;
static specKey: string;
specKey: string;
protected _orient: IOrientType;
get orient(): IOrientType;
protected _visible: boolean;
get visible(): boolean;
protected _position: 'start' | 'middle' | 'end';
get position(): "start" | "end" | "middle";
protected _legendData: CompilableData;
getLegendData(): any;
private _preSelectedData;
protected _selectedData: StringOrNumber[];
getSelectedData(): StringOrNumber[];
protected _legendComponent: IGroup;
private _cacheAttrs;
effect: IEffect;
protected _seriesUserId?: StringOrNumber[];
protected _seriesIndex?: number[];
protected _regionUserId?: StringOrNumber[];
protected _regionUserIndex?: number[];
setAttrFromSpec(): void;
created(): void;
_compareSpec(spec: T, prevSpec: T): {
change: boolean;
reMake: boolean;
reRender: boolean;
reSize: boolean;
reCompile: boolean;
};
protected abstract _initLegendData(): DataView;
protected abstract _initSelectedData(): void;
protected abstract _getLegendAttributes(rect: ILayoutRect): any;
protected abstract _getLegendConstructor(): any;
protected abstract _initEvent(): void;
private _bindLegendDataChange;
protected initData(): void;
setSelectedData(selectedData: StringOrNumber[]): void;
afterSetLayoutStartPoint(pos: IPoint): void;
getBoundsInRect(rect: ILayoutRect, fullSpace: ILayoutRect): {
x1: number;
y1: number;
x2: number;
y2: number;
};
onDataUpdate(): void;
protected _getNeedClearVRenderComponents(): IGraphic[];
clear(): void;
}