@univerjs/engine-render 0.6.1 → 0.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.js +1 -1
- package/lib/es/index.js +4213 -4136
- package/lib/types/components/sheets/sheet.render-skeleton.d.ts +0 -1
- package/lib/types/index.d.ts +1 -1
- package/lib/types/render-manager/render-manager.service.d.ts +2 -15
- package/lib/types/scene.d.ts +5 -1
- package/lib/types/scene.input-manager.d.ts +12 -2
- package/lib/types/shape/scroll-bar.d.ts +101 -21
- package/lib/types/viewport.d.ts +3 -3
- package/lib/umd/index.js +1 -1
- package/package.json +5 -5
- package/lib/types/shape/base-scroll-bar.d.ts +0 -52
|
@@ -52,7 +52,6 @@ export declare class SpreadsheetSkeleton extends SheetSkeleton {
|
|
|
52
52
|
private _gridlinesColor;
|
|
53
53
|
private _scene;
|
|
54
54
|
constructor(worksheet: Worksheet, _styles: Styles, _localeService: LocaleService, _contextService: IContextService, _configService: IConfigService, _injector: Injector);
|
|
55
|
-
initConfig(): void;
|
|
56
55
|
setScene(scene: Scene): void;
|
|
57
56
|
_updateLayout(): void;
|
|
58
57
|
/**
|
package/lib/types/index.d.ts
CHANGED
|
@@ -40,7 +40,7 @@ export * from './engine';
|
|
|
40
40
|
export * from './group';
|
|
41
41
|
export * from './layer';
|
|
42
42
|
export { IRenderingEngine, UniverRenderEnginePlugin } from './plugin';
|
|
43
|
-
export { IRenderManagerService, type RenderComponentType, RenderManagerService } from './render-manager/render-manager.service';
|
|
43
|
+
export { getCurrentTypeOfRenderer, IRenderManagerService, type RenderComponentType, RenderManagerService, withCurrentTypeOfRenderer } from './render-manager/render-manager.service';
|
|
44
44
|
export { type IRender, type IRenderContext, type IRenderModule, RenderUnit } from './render-manager/render-unit';
|
|
45
45
|
export * from './scene';
|
|
46
46
|
export { type IChangeObserverConfig } from './scene.transformer';
|
|
@@ -8,8 +8,6 @@ import { IRender, RenderUnit } from './render-unit';
|
|
|
8
8
|
import { Engine } from '../engine';
|
|
9
9
|
export type RenderComponentType = SheetComponent | DocComponent | Slide | BaseObject;
|
|
10
10
|
export interface IRenderManagerService extends IDisposable {
|
|
11
|
-
currentRender$: Observable<Nullable<string>>;
|
|
12
|
-
getCurrent(): Nullable<IRender>;
|
|
13
11
|
addRender(unitId: string, renderer: IRender): void;
|
|
14
12
|
/**
|
|
15
13
|
* create renderUnit & init deps from renderDependencies by renderUnit's type.
|
|
@@ -18,7 +16,6 @@ export interface IRenderManagerService extends IDisposable {
|
|
|
18
16
|
*/
|
|
19
17
|
createRender(unitId: string): IRender;
|
|
20
18
|
removeRender(unitId: string): void;
|
|
21
|
-
setCurrent(unitId: string): void;
|
|
22
19
|
/**
|
|
23
20
|
* Get RenderUnit By Id, RenderUnit implements IRender
|
|
24
21
|
* @param unitId
|
|
@@ -30,7 +27,6 @@ export interface IRenderManagerService extends IDisposable {
|
|
|
30
27
|
*/
|
|
31
28
|
getRenderUnitById(unitId: string): Nullable<IRender>;
|
|
32
29
|
getAllRenderersOfType(type: UniverInstanceType): RenderUnit[];
|
|
33
|
-
getCurrentTypeOfRenderer(type: UniverInstanceType): Nullable<RenderUnit>;
|
|
34
30
|
getRenderAll(): Map<string, IRender>;
|
|
35
31
|
defaultEngine: Engine;
|
|
36
32
|
/** @deprecated */
|
|
@@ -39,10 +35,7 @@ export interface IRenderManagerService extends IDisposable {
|
|
|
39
35
|
create(unitId: string): void;
|
|
40
36
|
created$: Observable<IRender>;
|
|
41
37
|
disposed$: Observable<string>;
|
|
42
|
-
/** @deprecated There will be multi units to render at the same time, so there is no *first*. */
|
|
43
|
-
getFirst(): Nullable<IRender>;
|
|
44
38
|
has(unitId: string): boolean;
|
|
45
|
-
withCurrentTypeOfUnit<T>(type: UniverInstanceType, id: DependencyIdentifier<T>): Nullable<T>;
|
|
46
39
|
/**
|
|
47
40
|
* add dep to _renderDependencies(type, dep)
|
|
48
41
|
* @param type
|
|
@@ -54,10 +47,7 @@ export declare class RenderManagerService extends Disposable implements IRenderM
|
|
|
54
47
|
private readonly _injector;
|
|
55
48
|
private readonly _univerInstanceService;
|
|
56
49
|
private _defaultEngine;
|
|
57
|
-
private _currentUnitId;
|
|
58
50
|
private _renderMap;
|
|
59
|
-
private readonly _currentRender$;
|
|
60
|
-
readonly currentRender$: Observable<Nullable<string>>;
|
|
61
51
|
private readonly _createRender$;
|
|
62
52
|
/** @deprecated */
|
|
63
53
|
readonly createRender$: Observable<string>;
|
|
@@ -90,8 +80,6 @@ export declare class RenderManagerService extends Disposable implements IRenderM
|
|
|
90
80
|
*/
|
|
91
81
|
createRender(unitId: string): IRender;
|
|
92
82
|
getAllRenderersOfType(type: UniverInstanceType): RenderUnit[];
|
|
93
|
-
getCurrentTypeOfRenderer(type: UniverInstanceType): Nullable<RenderUnit>;
|
|
94
|
-
withCurrentTypeOfUnit<T>(type: UniverInstanceType, id: DependencyIdentifier<T>): Nullable<T>;
|
|
95
83
|
/**
|
|
96
84
|
* init deps by injector.get(dep), and injector derives from renderer.
|
|
97
85
|
* @param renderer
|
|
@@ -110,9 +98,6 @@ export declare class RenderManagerService extends Disposable implements IRenderM
|
|
|
110
98
|
private _addRenderUnit;
|
|
111
99
|
removeRender(unitId: string): void;
|
|
112
100
|
has(unitId: string): boolean;
|
|
113
|
-
setCurrent(unitId: string): void;
|
|
114
|
-
getCurrent(): Nullable<IRender>;
|
|
115
|
-
getFirst(): Nullable<IRender>;
|
|
116
101
|
/**
|
|
117
102
|
* @deprecated use getRenderUnitById instead
|
|
118
103
|
* Get RenderUnit from this._renderMap.
|
|
@@ -126,3 +111,5 @@ export declare class RenderManagerService extends Disposable implements IRenderM
|
|
|
126
111
|
}
|
|
127
112
|
export declare const IRenderManagerService: import('@wendellhu/redi').IdentifierDecorator<IRenderManagerService>;
|
|
128
113
|
export declare function isDisposable(thing: unknown): thing is IDisposable;
|
|
114
|
+
export declare function getCurrentTypeOfRenderer(type: UniverInstanceType, instanceService: IUniverInstanceService, renderManageService: IRenderManagerService): Nullable<IRender>;
|
|
115
|
+
export declare function withCurrentTypeOfRenderer<T>(type: UniverInstanceType, id: DependencyIdentifier<T>, instanceService: IUniverInstanceService, renderManagerService: IRenderManagerService): Nullable<T>;
|
package/lib/types/scene.d.ts
CHANGED
|
@@ -281,7 +281,7 @@ export declare class Scene extends Disposable {
|
|
|
281
281
|
};
|
|
282
282
|
dispose(): void;
|
|
283
283
|
/**
|
|
284
|
-
* Get the object under the pointer, if scene.event is disabled,
|
|
284
|
+
* Get the object under the pointer, if scene.event is disabled, return null.
|
|
285
285
|
* @param {Vector2} coord
|
|
286
286
|
* @return {Nullable<BaseObject | Scene>} object under the pointer
|
|
287
287
|
*/
|
|
@@ -315,4 +315,8 @@ export declare class Scene extends Disposable {
|
|
|
315
315
|
*/
|
|
316
316
|
disableObjectsEvent(): void;
|
|
317
317
|
enableObjectsEvent(): void;
|
|
318
|
+
_capturedObject: BaseObject | null;
|
|
319
|
+
get capturedObject(): BaseObject | null;
|
|
320
|
+
setCaptureObject(o: BaseObject): void;
|
|
321
|
+
releaseCapturedObject(): void;
|
|
318
322
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { BaseObject } from './base-object';
|
|
1
2
|
import { IDragEvent, IKeyboardEvent, IMouseEvent, IPointerEvent, IWheelEvent } from './basics/i-events';
|
|
2
3
|
import { ISceneInputControlOptions, Scene } from './scene';
|
|
3
4
|
import { Disposable } from '@univerjs/core';
|
|
@@ -49,12 +50,20 @@ export declare class InputManager extends Disposable {
|
|
|
49
50
|
*/
|
|
50
51
|
detachControl(): void;
|
|
51
52
|
/**
|
|
52
|
-
*
|
|
53
|
+
* Get the object under the pointer, if scene.event is disabled, return null.
|
|
53
54
|
* @param offsetX
|
|
54
55
|
* @param offsetY
|
|
55
56
|
*/
|
|
56
57
|
private _getObjectAtPos;
|
|
57
|
-
|
|
58
|
+
/**
|
|
59
|
+
*
|
|
60
|
+
* If currentObject is null, return true
|
|
61
|
+
* @param isTrigger
|
|
62
|
+
* @param currentObject
|
|
63
|
+
* @returns
|
|
64
|
+
*/
|
|
65
|
+
private _shouldDispatchEventToScene;
|
|
66
|
+
private _isObjectInSceneViewer;
|
|
58
67
|
/**
|
|
59
68
|
* @hidden
|
|
60
69
|
* @returns Boolean if delta for pointer exceeds drag movement threshold
|
|
@@ -62,4 +71,5 @@ export declare class InputManager extends Disposable {
|
|
|
62
71
|
private _isPointerSwiping;
|
|
63
72
|
private _prePointerDoubleOrTripleClick;
|
|
64
73
|
private _resetDoubleClickParam;
|
|
74
|
+
get capturedObject(): BaseObject | null;
|
|
65
75
|
}
|
|
@@ -1,9 +1,52 @@
|
|
|
1
|
+
import { Nullable, Disposable } from '@univerjs/core';
|
|
1
2
|
import { Vector2 } from '../basics/vector2';
|
|
2
3
|
import { UniverRenderingContext } from '../context';
|
|
4
|
+
import { Scene } from '../scene';
|
|
3
5
|
import { Viewport } from '../viewport';
|
|
4
|
-
import { IScrollBarProps, BaseScrollBar } from './base-scroll-bar';
|
|
5
6
|
import { Rect } from './rect';
|
|
6
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Sadly, the props name here is not the same as the members in Scrollbar.
|
|
9
|
+
*/
|
|
10
|
+
export interface IScrollBarProps {
|
|
11
|
+
mainScene?: Scene;
|
|
12
|
+
thumbMargin?: number;
|
|
13
|
+
thumbLengthRatio?: number;
|
|
14
|
+
thumbBackgroundColor?: string;
|
|
15
|
+
thumbHoverBackgroundColor?: string;
|
|
16
|
+
thumbActiveBackgroundColor?: string;
|
|
17
|
+
/**
|
|
18
|
+
* The thickness of a scrolling track(not scrolling thumb).
|
|
19
|
+
*/
|
|
20
|
+
barSize?: number;
|
|
21
|
+
/**
|
|
22
|
+
* The thickness of track border.
|
|
23
|
+
*/
|
|
24
|
+
barBorder?: number;
|
|
25
|
+
enableHorizontal?: boolean;
|
|
26
|
+
enableVertical?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* The min width of horizon thumb
|
|
29
|
+
*/
|
|
30
|
+
minThumbSizeH?: number;
|
|
31
|
+
/**
|
|
32
|
+
* The min height of vertical thumb
|
|
33
|
+
*/
|
|
34
|
+
minThumbSizeV?: number;
|
|
35
|
+
}
|
|
36
|
+
export declare class ScrollBar extends Disposable {
|
|
37
|
+
_enableHorizontal: boolean;
|
|
38
|
+
_enableVertical: boolean;
|
|
39
|
+
horizontalThumbSize: number;
|
|
40
|
+
horizontalMinusMiniThumb: number;
|
|
41
|
+
horizontalTrackWidth: number;
|
|
42
|
+
horizonScrollTrack: Nullable<Rect>;
|
|
43
|
+
horizonThumbRect: Nullable<Rect>;
|
|
44
|
+
verticalThumbSize: number;
|
|
45
|
+
verticalTrackHeight: number;
|
|
46
|
+
verticalMinusMiniThumb: number;
|
|
47
|
+
verticalScrollTrack: Nullable<Rect>;
|
|
48
|
+
verticalThumbRect: Nullable<Rect>;
|
|
49
|
+
placeholderBarRect: Nullable<Rect>;
|
|
7
50
|
protected _viewport: Viewport;
|
|
8
51
|
private _mainScene;
|
|
9
52
|
private _lastX;
|
|
@@ -14,43 +57,80 @@ export declare class ScrollBar extends BaseScrollBar {
|
|
|
14
57
|
private _horizonPointerUpSub;
|
|
15
58
|
private _verticalPointerMoveSub;
|
|
16
59
|
private _verticalPointerUpSub;
|
|
60
|
+
private _thumbDefaultBackgroundColor;
|
|
61
|
+
private _thumbHoverBackgroundColor;
|
|
62
|
+
private _thumbActiveBackgroundColor;
|
|
63
|
+
private _trackBackgroundColor;
|
|
64
|
+
private _trackBorderColor;
|
|
17
65
|
/**
|
|
18
|
-
* The thickness of a scrolling
|
|
66
|
+
* The thickness of a scrolling track
|
|
67
|
+
* ThumbSize = trackSize - thumbMargin * 2
|
|
19
68
|
*/
|
|
20
|
-
|
|
21
|
-
barBorder: number;
|
|
22
|
-
thumbMargin: number;
|
|
23
|
-
thumbLengthRatio: number;
|
|
69
|
+
private _trackThickness;
|
|
24
70
|
/**
|
|
25
|
-
*
|
|
71
|
+
* The margin between thumb and bar.
|
|
72
|
+
* ThumbSize = barSize - thumbMargin * 2
|
|
26
73
|
*/
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
barBorderColor: string;
|
|
74
|
+
private _vThumbMargin;
|
|
75
|
+
private _hThumbMargin;
|
|
76
|
+
private _trackBorderThickness;
|
|
77
|
+
private _thumbLengthRatio;
|
|
32
78
|
/**
|
|
33
|
-
* The min width of horizon thumb
|
|
79
|
+
* The min width of horizon thumb, Corresponds to minThumbSizeH in props
|
|
34
80
|
*/
|
|
35
|
-
|
|
81
|
+
private _minThumbSizeH;
|
|
36
82
|
/**
|
|
37
|
-
* The min height of vertical thumb
|
|
83
|
+
* The min height of vertical thumb, Corresponds to minThumbSizeV in props
|
|
38
84
|
*/
|
|
39
|
-
|
|
85
|
+
private _minThumbSizeV;
|
|
40
86
|
private _eventSub;
|
|
41
87
|
constructor(view: Viewport, props?: IScrollBarProps);
|
|
88
|
+
setProps(props?: IScrollBarProps): void;
|
|
89
|
+
get enableHorizontal(): boolean;
|
|
90
|
+
set enableHorizontal(val: boolean);
|
|
91
|
+
get enableVertical(): boolean;
|
|
92
|
+
set enableVertical(val: boolean);
|
|
93
|
+
get limitX(): number;
|
|
94
|
+
get limitY(): number;
|
|
95
|
+
get ratioScrollX(): number;
|
|
96
|
+
get ratioScrollY(): number;
|
|
97
|
+
get miniThumbRatioX(): number;
|
|
98
|
+
get miniThumbRatioY(): number;
|
|
99
|
+
hasHorizonThumb(): boolean;
|
|
100
|
+
hasVerticalThumb(): boolean;
|
|
101
|
+
get scrollHorizonThumbThickness(): number;
|
|
102
|
+
get scrollVerticalThumbThickness(): number;
|
|
103
|
+
set barSize(v: number);
|
|
104
|
+
get barSize(): number;
|
|
105
|
+
set trackThickness(v: number);
|
|
106
|
+
get trackThickness(): number;
|
|
42
107
|
static attachTo(view: Viewport, props?: IScrollBarProps): ScrollBar;
|
|
43
108
|
dispose(): void;
|
|
44
109
|
render(ctx: UniverRenderingContext, left?: number, top?: number): void;
|
|
45
|
-
|
|
110
|
+
private _resizeHorizontal;
|
|
111
|
+
private _resizeVertical;
|
|
112
|
+
private _resizeRightBottomCorner;
|
|
113
|
+
private _viewportH;
|
|
114
|
+
private _viewportW;
|
|
115
|
+
private _contentW;
|
|
116
|
+
private _contentH;
|
|
117
|
+
/**
|
|
118
|
+
* Adjust scroll track & thumb size based on the viewport size.
|
|
119
|
+
* @param viewportWidth
|
|
120
|
+
* @param viewportHeight
|
|
121
|
+
* @param contentWidth
|
|
122
|
+
* @param contentHeight
|
|
123
|
+
*/
|
|
124
|
+
resize(viewportWidth?: number, viewportHeight?: number, contentWidth?: number, contentHeight?: number): void;
|
|
46
125
|
makeDirty(state: boolean): void;
|
|
47
126
|
makeViewDirty(state: boolean): void;
|
|
48
127
|
pick(coord: Vector2): Rect<import('./rect').IRectProps> | null;
|
|
49
|
-
setProps(props?: IScrollBarProps): void;
|
|
50
|
-
private _resizeHorizontal;
|
|
51
|
-
private _resizeVertical;
|
|
52
128
|
private _initialScrollRect;
|
|
53
129
|
private _initialVerticalEvent;
|
|
130
|
+
private _horizonHoverFunc;
|
|
131
|
+
private _horizonHoverLeaveFunc;
|
|
132
|
+
private _verticalHoverFunc;
|
|
133
|
+
private _verticalHoverLeaveFunc;
|
|
54
134
|
private _hoverFunc;
|
|
55
135
|
private _initialHorizontalEvent;
|
|
56
136
|
}
|
package/lib/types/viewport.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { IWheelEvent } from './basics/i-events';
|
|
|
4
4
|
import { IBoundRectNoAngle, IViewportInfo, Vector2 } from './basics/vector2';
|
|
5
5
|
import { UniverRenderingContext } from './context';
|
|
6
6
|
import { Scene } from './scene';
|
|
7
|
-
import {
|
|
7
|
+
import { ScrollBar } from './shape/scroll-bar';
|
|
8
8
|
import { Subject } from 'rxjs';
|
|
9
9
|
import { Transform } from './basics/transform';
|
|
10
10
|
import { Canvas as UniverCanvas } from './canvas';
|
|
@@ -224,7 +224,7 @@ export declare class Viewport {
|
|
|
224
224
|
* canvas resize & freeze change would invoke this method
|
|
225
225
|
*/
|
|
226
226
|
resetCanvasSizeAndUpdateScroll(): void;
|
|
227
|
-
setScrollBar(instance:
|
|
227
|
+
setScrollBar(instance: ScrollBar): void;
|
|
228
228
|
removeScrollBar(): void;
|
|
229
229
|
/**
|
|
230
230
|
* NOT same as resetCanvasSizeAndScrollbar
|
|
@@ -291,7 +291,7 @@ export declare class Viewport {
|
|
|
291
291
|
x: number;
|
|
292
292
|
y: number;
|
|
293
293
|
};
|
|
294
|
-
getScrollBar(): Nullable<
|
|
294
|
+
getScrollBar(): Nullable<ScrollBar>;
|
|
295
295
|
/**
|
|
296
296
|
* Just record state of scroll. This method won't scroll viewport and scrollbar.
|
|
297
297
|
* TODO: @lumixraku this method is so wried, viewportMain did not call it, now only called in freeze situation.
|