pxt-core
Version:
Microsoft MakeCode provides Blocks / JavaScript / Python tools and editors
61 lines (60 loc) • 1.82 kB
TypeScript
/// <reference path="../../pxtlib.d.ts" />
/// <reference path="../../pxtsim.d.ts" />
import * as Blockly from "blockly";
import { FieldCustom } from "./field_utils";
export declare class FieldMatrix extends Blockly.Field implements FieldCustom {
private static CELL_WIDTH;
private static CELL_HORIZONTAL_MARGIN;
private static CELL_VERTICAL_MARGIN;
private static CELL_CORNER_RADIUS;
private static BOTTOM_MARGIN;
private static Y_AXIS_WIDTH;
private static X_AXIS_HEIGHT;
private static TAB;
isFieldCustom_: boolean;
SERIALIZABLE: boolean;
private params;
private onColor;
private offColor;
private static DEFAULT_OFF_COLOR;
private scale;
private matrixWidth;
private matrixHeight;
private yAxisLabel;
private xAxisLabel;
private cellState;
private cells;
private elt;
private currentDragState_;
private selected;
constructor(text: string, params: any, validator?: Blockly.FieldValidator);
private keyHandler;
private clearSelection;
private removeKeyboardFocusHandlers;
private blurHandler;
private setFocusIndicator;
/**
* Show the inline free-text editor on top of the text.
* @private
*/
showEditor_(): void;
private initMatrix;
private getLabel;
private dontHandleMouseEvent_;
private clearLedDragHandler;
updateEditable(): void;
private createRow;
private createCell;
private toggleRect;
private handleRootMouseMoveListener;
private getColor;
private getOpacity;
private updateCell;
setValue(newValue: string | number, restoreState?: boolean): void;
render_(): void;
getValue(): string;
private restoreStateFromString;
private updateValue;
private getYAxisWidth;
private getXAxisHeight;
}