pxt-core
Version:
Microsoft MakeCode provides Blocks / JavaScript / Python tools and editors
37 lines (36 loc) • 1.47 kB
TypeScript
/// <reference path="../../pxtlib.d.ts" />
import * as Blockly from "blockly";
import { FieldCustom } from "./field_utils";
export declare abstract class FieldBase<U> extends Blockly.Field implements FieldCustom {
static CHECKMARK_OVERHANG: number;
isFieldCustom_: true;
SERIALIZABLE: boolean;
options: U;
protected valueText: string;
protected loaded: boolean;
protected workspace: Blockly.Workspace;
constructor(text: string, params: U, validator?: Blockly.FieldValidator);
protected abstract onInit(): void;
protected abstract onDispose(): void;
protected abstract onValueChanged(newValue: string): string;
static pendingInit: FieldBase<any>[];
static pendingTimeout: any;
static enqueueInit(field: FieldBase<any>): void;
static flushInitQueue(): void;
init(): void;
dispose(): void;
getValue(): string;
doValueUpdate_(newValue: string): void;
getDisplayText_(): string;
onLoadedIntoWorkspace(): void;
/**
* Returns a human-readable description of the field's current value.
*/
getFieldDescription(): string;
protected getAnchorDimensions(): any;
protected isInitialized(): boolean;
protected getBlockData(): string;
protected setBlockData(value: string): void;
protected getSiblingBlock(inputName: string, useGrandparent?: boolean): Blockly.Block;
protected getSiblingField(fieldName: string, useGrandparent?: boolean): Blockly.Field<any>;
}