import * as React from 'react'; import { BaseButtonTool, IBaseButtonToolProps } from './BaseButtonTool'; export interface IBaseWindowToolProps extends IBaseButtonToolProps { /** * Window header content. */ WindowHeader?: React.ReactNode; /** * Default opened. */ defaultOpened?: boolean; /** * Hide open button. */ hideOpenButton?: boolean; /** * Hide close button. */ hideCloseButton?: boolean; /** * Hide reduce button. */ hideReduceButton?: boolean; /** * Open on activate */ openOnActivate?: boolean; /** * Close on deactivate */ closeOnDeactivate?: boolean; /** * Open handler. */ onOpen?: () => void; /** * Close handler. */ onClose?: () => void; /** * Default position. */ defaultPosition?: { x: number; y: number; }; /** * Should display fold/unfold button */ displayFoldButton?: boolean; } export interface IBaseWindowToolState { /** * Open. */ open: boolean; /** * ZIndex. */ zIndex: number; /** * Bounds. */ bounds: { top: number; bottom: number; left: number; right: number; }; /** * Position. */ position: { x: number; y: number; }; isUnfold: boolean; } export declare class BaseWindowTool
extends BaseButtonTool
{
static defaultProps: {
defaultOpened: boolean;
hideCloseButton: boolean;
displayFoldButton: boolean;
defaultPosition: {
x: number;
y: number;
};
toggle: boolean;
className: string;
buttonTitle: string;
activated: boolean;
defaultActivated: boolean;
independant: boolean;
};
windowElement: HTMLSpanElement;
constructor(props: P);
componentDidMount(): void;
componentDidUpdate(prevProps: P, prevState: S, snap: never): void;
componentWillUnmount(): void;
toolDidActivate(): void;
toolDidDeactivate(): void;
/**
* Open Window.
*/
open(): boolean;
/**
* Close Window
*/
close(): boolean;
unfold(): boolean;
fold(): boolean;
checkPosition(position: {
x: number;
y: number;
}): void;
handleResize: () => void;
handleStart: () => void;
handleDrag: (e: any, position: {
x: number;
y: number;
}) => void;
handleButtonClick: (event: React.MouseEvent (component: string | React.FunctionComponent ): {
new (props: P): {
renderHeaderContent(): React.ReactNode;
renderOpenButtonContent(): React.ReactNode;
renderTool(): React.ReactNode;
windowElement: HTMLSpanElement;
componentDidMount(): void;
componentDidUpdate(prevProps: P, prevState: IBaseWindowToolState, snap: never): void;
componentWillUnmount(): void;
toolDidActivate(): void;
toolDidDeactivate(): void;
/**
* Open Window.
*/
open(): boolean;
/**
* Close Window
*/
close(): boolean;
unfold(): boolean;
fold(): boolean;
checkPosition(position: {
x: number;
y: number;
}): void;
handleResize: () => void;
handleStart: () => void;
handleDrag: (e: any, position: {
x: number;
y: number;
}) => void;
handleButtonClick: (event: React.MouseEvent ) => IBaseWindowToolState | Pick ;
state: Readonly , nextState: Readonly , prevState: Readonly , nextContext: any): void;
UNSAFE_componentWillReceiveProps?(nextProps: Readonly , nextContext: any): void;
componentWillUpdate?(nextProps: Readonly , nextState: Readonly , nextState: Readonly