[]
        
(Showing Draft Content)

GC.Spread.Sheets.CellTypes.Base

Class: Base

Sheets.CellTypes.Base

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new Base()

Represents the base class for the other cell type classes.

example

// define a custom cell type
function MyCellType(color) {
    GC.Spread.Sheets.CellTypes.Base.apply(this, arguments);
    this.color = color || "orange";
    this.typeName = "MyCellType";
}
MyCellType.prototype = new GC.Spread.Sheets.CellTypes.Base();
MyCellType.prototype.paint = function (ctx, value, x, y, width, height, style, context) {
    var MARGIN = 5,
        plotLeft = x + MARGIN,
        plotWidth = width - 2 * MARGIN,
        plotTop = y + MARGIN,
        plotHeight = height - 2 * MARGIN,
        halfHeight = plotHeight / 2,
        halfWidth = plotWidth / 2;

    ctx.beginPath();
    ctx.moveTo(plotLeft, plotTop + halfHeight);
    ctx.lineTo(plotLeft + halfWidth, plotTop);
    ctx.lineTo(plotLeft + plotWidth, plotTop + halfHeight);
    ctx.lineTo(plotLeft + halfWidth, plotTop + plotHeight);
    ctx.lineTo(plotLeft, plotTop + halfHeight);
    ctx.strokeStyle = this.color;
    ctx.stroke();
};
// set the custom cell type to a cell
sheet.setCellType(0, 0, new MyCellType("green"));

Properties

typeName

typeName: string

Represents the type name string used for supporting serialization.

Methods

activateEditor

activateEditor(editorContext, cellStyle, cellRect, context?): void

Activates the editor, including setting properties or attributes for the editor and binding events for the editor.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
cellStyle Style The cell's actual style.
cellRect Rect The cell's layout information.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void


createEditorElement

createEditorElement(context?): HTMLElement

Creates a DOM element then returns it.

Parameters

Name Type Description
context? any The context associated with the cell type. See the Remarks for more information.

Returns

HTMLElement

Returns a DOM element.


deactivateEditor

deactivateEditor(editorContext, context?): void

Deactivates the editor, such as unbinding events for editor.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void


focus

focus(editorContext, context?): void

Focuses the editor DOM element.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void


format

format(value, format, formattedData?, context?): string

Formats a value with the specified format to a string.

Parameters

Name Type Description
value any The object value to format.
format string | GeneralFormatter The format.
formattedData? FormattedData the formatted data.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

string

Returns the formatted string.


fromJSON

fromJSON(settings): void

Loads the object state from the specified JSON string.

Parameters

Name Type Description
settings any The cell type data from deserialization.

Returns

void


getAutoFitHeight

getAutoFitHeight(value, text, cellStyle, zoomFactor, context?): number

Gets a cell's height that can be used to handle the row's automatic fit.

Parameters

Name Type Description
value any The cell's value.
text string The cell's text.
cellStyle Style The cell's actual value.
zoomFactor number The current sheet's zoom factor.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

number

Returns the cell's height that can be used to handle the row's automatic fit.


getAutoFitWidth

getAutoFitWidth(value, text, cellStyle, zoomFactor, context?): number

Gets a cell's width that can be used to handle the column's automatic fit.

Parameters

Name Type Description
value any The cell's value.
text string The cell's text.
cellStyle Style The cell's actual value.
zoomFactor number The current sheet's zoom factor.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

number

Returns the cell's width that can be used to handle the column's automatic fit.


getEditorValue

getEditorValue(editorContext, context?): any

Gets the editor's value.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

any

Returns the editor's value.


getHitInfo

getHitInfo(x, y, cellStyle, cellRect, context?): IHitTestCellTypeHitInfo

Gets the cell type's hit information.

Parameters

Name Type Description
x number x-coordinate of pointer's current location relative to the canvas.
y number y-coordinate of pointer's current location relative to the canvas.
cellStyle Style The current cell's actual style.
cellRect Rect The current cell's layout information.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

IHitTestCellTypeHitInfo

Returns an object that contains the x, y, row, col, cellRect, and sheetArea parameters, and a value to indicate isReservedLocation. isReservedLocation is true if the hit test is in a special area that the cell type needs to handle; otherwise, false.


isEditingValueChanged

isEditingValueChanged(oldValue, newValue, context?): boolean

Whether the editing value has changed.

Parameters

Name Type Description
oldValue any Old editing value.
newValue any New editing value.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

boolean

true if oldValue equals newValue; otherwise, false.


isImeAware

isImeAware(context?): boolean

Whether this cell type is aware of IME.

Parameters

Name Type Description
context? any The context associated with the cell type. See the Remarks for more information.

Returns

boolean

true if the cell type is aware of IME; otherwise, false.


isReservedKey

isReservedKey(e, context?): boolean

Whether the cell type handles the keyboard event itself.

Parameters

Name Type Description
e KeyboardEvent The KeyboardEvent.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

boolean

Returns true if the cell type handles the keyboard event itself; otherwise, false.


paint

paint(ctx, value, x, y, w, h, style, context?): void

Paints a cell on the canvas.

Parameters

Name Type Description
ctx CanvasRenderingContext2D The canvas's two-dimensional context.
value any The cell's value.
x number x-coordinate relative to the canvas.
y number y-coordinate relative to the canvas.
w number The cell's width.
h number The cell's height.
style Style The cell's actual style.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void


paintContent

paintContent(ctx, value, x, y, w, h, style, context?): void

Paints the cell content area on the canvas.

Parameters

Name Type Description
ctx CanvasRenderingContext2D The canvas's two-dimensional context.
value any The cell's value.
x number x-coordinate relative to the canvas.
y number y-coordinate relative to the canvas.
w number The cell content area's width.
h number The cell content area's height.
style Style The cell's actual style.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void


parse

parse(text, formatStr, context?): any

Parses the text with the specified format string to an object.

Parameters

Name Type Description
text string The parse text string.
formatStr string The parse format string.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

any

The parsed object.


processKeyDown

processKeyDown(event, context?): boolean

Processes key down in display mode.

Parameters

Name Type Description
event KeyboardEvent The KeyboardEvent.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

boolean

Returns true if the process is successful; otherwise, false.


processKeyUp

processKeyUp(event, context?): boolean

Processes key up in display mode.

Parameters

Name Type Description
event KeyboardEvent The KeyboardEvent.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

boolean

Returns true if the process is successful; otherwise, false.


processMouseDown

processMouseDown(hitInfo): boolean

Processes mouse down in display mode.

Parameters

Name Type Description
hitInfo IHitTestCellTypeHitInfo The hit test information returned by the getHitInfo method. See the Remarks for more information.

Returns

boolean

Returns true if the process is successful; otherwise, false.


processMouseEnter

processMouseEnter(hitInfo): boolean

Processes mouse enter in display mode.

Parameters

Name Type Description
hitInfo IHitTestCellTypeHitInfo The hit test information returned by the getHitInfo method. See the Remarks for more information.

Returns

boolean

Returns true if the process is successful; otherwise, false.


processMouseLeave

processMouseLeave(hitInfo): boolean

Processes mouse leave in display mode.

Parameters

Name Type Description
hitInfo IHitTestCellTypeHitInfo The hit test information returned by the getHitInfo method. See the Remarks for more information.

Returns

boolean

Returns true if the process is successful; otherwise, false.


processMouseMove

processMouseMove(hitInfo): boolean

Processes mouse move in display mode.

Parameters

Name Type Description
hitInfo IHitTestCellTypeHitInfo The hit test information returned by the getHitInfo method. See the Remarks for more information.

Returns

boolean

Returns true if the process is successful; otherwise, false.


processMouseUp

processMouseUp(hitInfo): boolean

Processes mouse up in display mode.

Parameters

Name Type Description
hitInfo IHitTestCellTypeHitInfo The hit test information returned by the getHitInfo method. See the Remarks for more information.

Returns

boolean

Returns true if the process is successful; otherwise, false.


selectAll

selectAll(editorContext, context?): void

Selects all the text in the editor DOM element.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void


setEditorValue

setEditorValue(editorContext, value, context?): void

Sets the editor's value.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
value any The value returned from the active cell.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void


toJSON

toJSON(): any

Saves the object state to a JSON string.

Returns

any

The cell type data.


updateEditor

updateEditor(editorContext, cellStyle, cellRect, context?): Rect

Updates the editor's size.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
cellStyle Style The cell's actual style.
cellRect Rect The cell's layout information.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

Rect

Returns the new size for cell wrapper element, it should contain two properties 'width' and 'height'.


updateEditorContainer

updateEditorContainer(editorContext, editorBounds, cellStyle): void

Updates the cell wrapper element size.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
editorBounds Rect The cell wrapper element's new size.
cellStyle Style The cell's actual style.

Returns

void


updateImeMode

updateImeMode(editorContext, imeMode, context?): void

Updates the editor's ime-mode.

Parameters

Name Type Description
editorContext HTMLElement The DOM element that was created by the createEditorElement method.
imeMode ImeMode The ime-mode from cell's actual style.
context? any The context associated with the cell type. See the Remarks for more information.

Returns

void