@eclipse-scout/core
Version:
Eclipse Scout runtime
47 lines • 1.93 kB
TypeScript
/// <reference types="jquery" />
import { InitModelOf, LayoutData, SplitterEventMap, SplitterModel, Widget } from '../index';
export declare class Splitter extends Widget implements SplitterModel {
model: SplitterModel;
eventMap: SplitterEventMap;
self: Splitter;
splitHorizontal: boolean;
position: number;
orientation: 'top' | 'right' | 'bottom' | 'left';
layoutData: LayoutData;
$anchor: JQuery;
$root: JQuery;
/** distance from cursor to splitter, makes resizing smoother by preventing initial 'jump' */
protected _cursorOffset: {
left: number;
top: number;
};
protected _mouseDownHandler: (event: JQuery.MouseDownEvent) => void;
protected _$window: JQuery<Window>;
protected _$body: JQuery<Body>;
constructor();
protected _init(model: InitModelOf<this>): void;
protected _render(): void;
protected _renderProperties(): void;
protected _renderEnabled(): void;
protected _renderVisible(): void;
setLayoutData(layoutData: LayoutData): void;
getLayoutData(): LayoutData;
/**
* Sets the splitter position to the specified newSize (in pixels).
* If the newSize is not specified, the size is calculated automatically by reading the this.$anchor element's bounds.
*
* @returns the effective position in pixel.
*/
setPosition(position?: number): number;
/**
* Derives the position from $anchor element's bounds
*/
protected _derivePositionFromAnchor(): number;
protected _setPosition(position: number): void;
protected _renderPosition(): void;
protected _onMouseDown(event: JQuery.MouseDownEvent): void;
protected _getSplitterPosition(event: JQuery.MouseEventBase): number;
protected _onMouseMove(event: JQuery.MouseMoveEvent<Window>): void;
protected _onMouseUp(event: JQuery.MouseUpEvent<Window>): void;
}
//# sourceMappingURL=Splitter.d.ts.map