import { Graphics, InteractionEvent, Point, Rectangle } from "pixi.js"; import { DBase, DBaseOptions, DThemeBase } from "./d-base"; import { DContentOptions } from "./d-content"; import { UtilGestureMode } from "./util/util-gesture-mode"; import { UtilGesture } from "./util/util-gesture"; import { UtilWheelEventDeltas } from "./util/util-wheel-event"; import { DPaneScrollBar, DPaneScrollBarOptions } from "./d-pane-scrollbar"; /** * {@link DPane} gesture options. */ export interface DPaneGestureOptions { mode?: keyof typeof UtilGestureMode | UtilGestureMode; } /** * {@link DPane} options. */ export interface DPaneOptions extends DBaseOptions { /** * True to enable an overflow mask. */ mask?: boolean; /** * Content options or a content. */ content?: CONTENT_OPTIONS | DBase; /** * Scroll bar options. */ scrollbar?: DPaneScrollBarOptions; /** * Gesture options. */ gesture?: DPaneGestureOptions; } export interface DThemePane extends DThemeBase { isOverflowMaskEnabled(): boolean; getWheelSpeed(): number; getGestureMode(): UtilGestureMode; } export declare class DPane = DPaneOptions> extends DBase { protected static WORK_POINT?: Point; protected static WORK_RECTANGLE?: Rectangle; protected _content?: DBase; protected _overflowMask?: Graphics | null; protected _scrollbar?: DPaneScrollBar; protected _gestureUtil?: UtilGesture; constructor(options?: OPTIONS); protected initGesture(theme: THEME, options?: OPTIONS): void; get scrollbar(): DPaneScrollBar; protected newScrollBar(options?: DPaneScrollBarOptions): DPaneScrollBar; protected onScrollBarUpdate(isRegionVisible: boolean): void; protected initScrollBar(scrollbar: DPaneScrollBar): void; protected onScrollBarMoveX(start: number): void; protected onScrollBarMoveY(start: number): void; protected onOver(e: InteractionEvent): void; protected getType(): string; get content(): DBase; protected toContent(options?: OPTIONS): DBase; protected newContent(options?: CONTENT_OPTIONS): DBase; protected initContent(content: DBase): void; protected getOverflowMask(): Graphics | null; protected newOverflowMask(): Graphics | null; protected onWheel(e: WheelEvent, deltas: UtilWheelEventDeltas, global: Point): boolean; protected getWheelContentX(content: DBase, delta: number): number; protected getWheelContentY(content: DBase, delta: number): number; protected toContentX(content: DBase, x: number): number; protected toContentY(content: DBase, y: number): number; protected isRefitable(target: any): target is DBase; onResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void; protected onContentChange(): void; protected getFocusedChildClippingRect(focused: DBase, contentX: number, contentY: number, contentWidth: number, contentHeight: number, width: number, height: number, result: Rectangle): Rectangle; protected onChildFocus(focused: DBase): void; destroy(): void; }