import * as go from '../../../../libs/gojs/release/go'; /** * @constructor * @extends Tool * @class */ export declare class ColumnResizingTool extends go.Tool { /** @type {GraphObject} */ private _handleArchetype; constructor(); readonly name: string; /** @type {string} */ private _tableName; /** @type {GraphObject} */ private _handle; /** @type {Panel} */ private _adornedTable; /** * A small GraphObject used as a resize handle for each column. * This tool expects that this object's {@link GraphObject#desiredSize} (a.k.a width and height) has been set to real numbers. * @name ColumnResizingTool#handleArchetype * @function. * @return {Shape} */ handleArchetype: go.Shape; /** * The name of the Table Panel to be resized, by default the name 'TABLE'. * @name ColumnResizingTool#tableName * @function. * @return {string} */ tableName: string; /** * This read-only property returns the {@link GraphObject} that is the tool handle being dragged by the user. * This will be contained by an {@link Adornment} whose category is 'ColumnResizing'. * Its {@link Adornment#adornedObject} is the same as the {@link #adornedTable}. * @name ColumnResizingTool#handle * @function. * @return {GraphObject} */ readonly handle: go.GraphObject; /** * Gets the {@link Panel} of type {@link Panel#Table} whose columns may be resized. * This must be contained within the selected Part. * @name ColumnResizingTool#adornedTable * @function. * @return {Panel} */ readonly adornedTable: go.Panel; /** * Show an {@link Adornment} with a resize handle at each column. * Don't show anything if {@link #tableName} doesn't identify a {@link Panel} * that has a {@link Panel#type} of type {@link Panel#Table}. * @this {ColumnResizingTool} * @param {Part} part the part. */ updateAdornments(part: go.Part, reload?: boolean): void; /** * @this {ColumnResizingTool} * @param {Panel} table the Table Panel whose columns may be resized * @return {Adornment} */ makeAdornment(table: go.Panel, count: number): go.Adornment; /** * @this {ColumnResizingTool} * @param {Panel} table the Table Panel whose columns may be resized * @param {RowColumnDefinition} coldef the column definition to be resized * @return a copy of the {@link #handleArchetype} */ makeHandle(table: go.Panel, coldef: go.RowColumnDefinition): go.GraphObject; /** * This predicate is true when there is a resize handle at the mouse down point. * @this {ColumnResizingTool} * @return {boolean} */ canStart(): boolean; /** * @this {ColumnResizingTool} */ doActivate(): void; /** * @this {ColumnResizingTool} */ doDeactivate(): void; /** * @this {ColumnResizingTool} */ doMouseMove(): void; /** * @this {ColumnResizingTool} */ doMouseUp(): void; /** * This should change the {@link RowColumnDefinition#width} of the column being resized * to a value corresponding to the given mouse point. * @expose * @this {ColumnResizingTool} * @param {Point} newPoint the value of the call to {@link #computeResize}. */ resize(newPoint: go.Point): void; /** * This can be overridden in order to customize the resizing process. * @expose * @this {ColumnResizingTool} * @param {Point} p the point where the handle is being dragged. * @return {Point} */ computeResize(p: go.Point): go.Point; /** * Pressing the Delete key removes any column width setting and stops this tool. * @this {ColumnResizingTool} */ doKeyDown(): void; private setDataProperty; }