1 | import { Controller } from './base';
|
2 | import { ScrollbarOption, ComponentOption } from '../../interface';
|
3 | import View from '../view';
|
4 | export default class Scrollbar extends Controller<ScrollbarOption> {
|
5 | private scrollbar;
|
6 | private container;
|
7 | private trackLen;
|
8 | private thumbLen;
|
9 | private cnt;
|
10 | private step;
|
11 | private ratio;
|
12 | private data;
|
13 | private xScaleCfg;
|
14 | private yScalesCfg;
|
15 | private onChangeFn;
|
16 | constructor(view: View);
|
17 | get name(): string;
|
18 | destroy(): void;
|
19 | init(): void;
|
20 | /**
|
21 | * 渲染
|
22 | */
|
23 | render(): void;
|
24 | /**
|
25 | * 布局
|
26 | */
|
27 | layout(): void;
|
28 | /**
|
29 | * 更新
|
30 | */
|
31 | update(): void;
|
32 | getComponents(): ComponentOption[];
|
33 | clear(): void;
|
34 | /** 设置滚动条位置 */
|
35 | setValue(ratio: number): void;
|
36 | /** 获得滚动条位置 */
|
37 | getValue(): number;
|
38 | /**
|
39 | * 获取 scrollbar 的主题配置
|
40 | */
|
41 | private getThemeOptions;
|
42 | /**
|
43 | * 获取 scrollbar 组件的主题样式
|
44 | */
|
45 | private getScrollbarTheme;
|
46 | private resetMeasure;
|
47 | private onValueChange;
|
48 | private measureScrollbar;
|
49 | private getScrollRange;
|
50 | private changeViewData;
|
51 | private createScrollbar;
|
52 | private updateScrollbar;
|
53 | private getStep;
|
54 | private getCnt;
|
55 | private getScrollbarComponentCfg;
|
56 | /**
|
57 | * 填充一些默认的配置项目
|
58 | */
|
59 | private getValidScrollbarCfg;
|
60 | /**
|
61 | * 获取数据
|
62 | */
|
63 | private getScrollbarData;
|
64 | }
|