c5cec3a6ba
* bump pxt * fix build issues * Auto-gen of projects/summary * removing feild editors moved to pxt * various typing fixes * more typing fixes * fixing various typing issues * Start on integration of new pxt * serial number fixes * gc-ify MMap object * Re-build generated files * fix console listeners * clear lf() warnings * More generated files * also auto-generated * Compilation fixes * fix merge * mostly fixing blocks * fix sim * fix field motors * enable a few features * moving to tsx * try to fix edtiro compilation * more defs * removing commands * removing extra $ * fix blockly warning * hiding images * enabling more pxt features * hide images * setup autorun * add lock on target_reset * update deps * return trylock result * updated pxt * rename video section * add alpha channel * upgraded pxt * bump pxt/version * removed alpha ref * var ceanup * don't do major bump
32 lines
1.1 KiB
TypeScript
32 lines
1.1 KiB
TypeScript
/// <reference path="../node_modules/pxt-core/localtypings/blockly.d.ts"/>
|
|
/// <reference path="../node_modules/pxt-core/built/pxtblocks.d.ts"/>
|
|
/// <reference path="../node_modules/pxt-core/built/pxtsim.d.ts"/>
|
|
|
|
export interface FieldPortsOptions extends pxtblockly.FieldImagesOptions {
|
|
columns?: string;
|
|
width?: string;
|
|
}
|
|
|
|
export class FieldPorts extends pxtblockly.FieldImages implements Blockly.FieldCustom {
|
|
public isFieldCustom_ = true;
|
|
|
|
constructor(text: string, options: FieldPortsOptions, validator?: Function) {
|
|
super(text, { blocksInfo: options.blocksInfo, sort: true, data: options.data }, validator);
|
|
|
|
this.columns_ = parseInt(options.columns) || 4;
|
|
this.width_ = parseInt(options.width) || 300;
|
|
|
|
this.setText = Blockly.FieldDropdown.prototype.setText;
|
|
this.updateSize_ = (Blockly.Field as any).prototype.updateSize_;
|
|
this.updateTextNode_ = Blockly.Field.prototype.updateTextNode_;
|
|
}
|
|
|
|
trimOptions_() {
|
|
}
|
|
|
|
protected buttonClick_ = function (e: any) {
|
|
let value = e.target.getAttribute('data-value');
|
|
this.setValue(value);
|
|
Blockly.DropDownDiv.hide();
|
|
};
|
|
} |