import { PipeEventName, PipelineDimension, PipelineEventHandler, PipelineEventRegsiter, PipeSupportEvent } from './pipeline'; import { Disposable, DisposableCollection, Emitter } from '@gedit/utils'; import { PipelineRenderer } from './pipeline-renderer'; import { Layer, LayerRegistry, PlaygroundConfigEntity } from '../layer'; import { AbleManager, AbleRegistry, EntityManager, EntityRegistry, PlaygroundContext } from '../../common'; import { PipelineEntitiesSelector } from './pipeline-entities-selector'; import { PipelineDispatcher } from './pipeline-dispatcher'; import { IMessageHandler, Message } from '@phosphor/messaging'; import { PlaygroundCommandRegistry, PlaygroundKeybindingRegistry, PlaygroundMenuRegistry } from '../playground-registries'; import { SelectionService } from '@gedit/application-common'; import { FrontendApplicationStateService } from '@gedit/application-common/lib/browser'; export declare enum PipelineMessage { ZOOM = "PIPELINE_ZOOM", SCROLL = "PIPELINE_SCROLL" } /** * pipeline 注册器, 用于注册一些事件 */ export declare class PipelineRegistry implements Disposable, IMessageHandler { private _isFocused; protected toDispose: DisposableCollection; readonly onResizeEmitter: Emitter; readonly onFocusEmitter: Emitter; readonly onBlurEmitter: Emitter; readonly onZoomEmitter: Emitter; readonly onScrollEmitter: Emitter<{ scrollX: number; scrollY: number; }>; readonly onFocus: import("@gedit/utils").Event; readonly onBlur: import("@gedit/utils").Event; readonly onZoom: import("@gedit/utils").Event; readonly onScroll: import("@gedit/utils").Event<{ scrollX: number; scrollY: number; }>; constructor(); dispatcher: PipelineDispatcher; renderer: PipelineRenderer; readonly commands: PlaygroundCommandRegistry; readonly menus: PlaygroundMenuRegistry; readonly keybindings: PlaygroundKeybindingRegistry; selector: PipelineEntitiesSelector; entityManager: EntityManager; ableManager: AbleManager; context: PlaygroundContext; selectionService?: SelectionService; readonly stateService?: FrontendApplicationStateService; protected playgroundEvents: { [key: string]: { handlers: PipelineEventRegsiter[]; } & Disposable; }; protected globalEvents: { [key: string]: { handlers: PipelineEventRegsiter[]; } & Disposable; }; _listenEvent(name: PipeEventName, handle: PipelineEventHandler, isGlobal: boolean, priority?: number): Disposable; /** * 监听画布上的浏览器事件 */ listenPlaygroundEvent(name: PipeEventName, handle: (event: PipeSupportEvent) => boolean | undefined, priority?: number): Disposable; /** * 监听全局的事件 * @param name * @param handle */ listenGlobalEvent(name: PipeEventName, handle: (event: PipeSupportEvent) => boolean | undefined, priority?: number): Disposable; /** * 订阅关联的entity,会影响draw */ protected subscribeEntities(layer: Layer, entities: EntityRegistry[]): void; /** * 订阅关联的able, 会影响draw */ protected subscribeAbles(layer: Layer, ables: AbleRegistry[]): void; /** * 注册layer * @param Registry */ registerLayer(Registry: LayerRegistry): void; get configEntity(): PlaygroundConfigEntity; ready(): void; processMessage(msg: Message): void; /** * pipline大小变化时候会触发 */ readonly onResize: import("@gedit/utils").Event; dispose(): void; } //# sourceMappingURL=pipeline-registry.d.ts.map