fix(boards): 修复block init时由于this指向变化导致数据读取出错
This commit is contained in:
@@ -103,7 +103,7 @@ export const controls_whileUntil = {
|
||||
this.appendValueInput('BOOL')
|
||||
.setCheck([Boolean, Number])
|
||||
.appendField(Blockly.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'MODE');
|
||||
.appendField(new Blockly.FieldDropdown(controls_whileUntil.OPERATORS), 'MODE');
|
||||
this.appendStatementInput('DO')
|
||||
.appendField(Blockly.Msg.MIXLY_DO);
|
||||
this.setPreviousStatement(true);
|
||||
@@ -127,7 +127,7 @@ export const controls_whileUntil = {
|
||||
export const controls_flow_statements = {
|
||||
init: function () {
|
||||
this.setColour(LOOPS_HUE);
|
||||
var dropdown = new Blockly.FieldDropdown(this.OPERATORS);
|
||||
var dropdown = new Blockly.FieldDropdown(controls_flow_statements.OPERATORS);
|
||||
this.appendDummyInput()
|
||||
.appendField(dropdown, 'FLOW')
|
||||
.appendField(Blockly.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP);
|
||||
|
||||
@@ -944,7 +944,7 @@ export const image_shift = {
|
||||
.setCheck(["esp32_image", "List", String]);
|
||||
this.appendDummyInput('')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET2)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(image_shift.OPERATORS), 'OP');
|
||||
this.appendValueInput('val')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_SHIFT)
|
||||
.setCheck(Number);
|
||||
@@ -983,7 +983,7 @@ export const image_arithmetic = {
|
||||
.appendField(Blockly.Msg.MICROBIT_DISPLAY_MERGE_SHAPE);
|
||||
this.appendValueInput('B')
|
||||
// .setCheck(["esp32_image", "List", String])
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(image_arithmetic.OPERATORS), 'OP');
|
||||
this.setInputsInline(true);
|
||||
var thisBlock = this;
|
||||
this.setTooltip(function () {
|
||||
@@ -1300,7 +1300,7 @@ export const display_image_size = {
|
||||
.setCheck("esp32_image")
|
||||
// .appendField(Blockly.Msg.blockpy_USE_LIST);
|
||||
this.appendDummyInput("")
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(display_image_size.OPERATORS), 'OP');
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true);
|
||||
var thisBlock = this;
|
||||
@@ -1332,7 +1332,7 @@ export const display_rect = {
|
||||
.setCheck("var");
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_RECT)
|
||||
.appendField(new Blockly.FieldDropdown(this.STATUS), 'OP')
|
||||
.appendField(new Blockly.FieldDropdown(display_rect.STATUS), 'OP')
|
||||
// this.appendValueInput("PIN", Number)
|
||||
// .setCheck(Number)
|
||||
// .setAlign(Blockly.inputs.Align.RIGHT)
|
||||
@@ -1736,7 +1736,7 @@ export const display_animate = {
|
||||
this.setOutput(true, 'Tuple');
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_ESP32_DISPLAY_ANIMATE)
|
||||
.appendField(new Blockly.FieldDropdown(this.ANIMATE), 'ANIMATION')
|
||||
.appendField(new Blockly.FieldDropdown(display_animate.ANIMATE), 'ANIMATION')
|
||||
//this.setTooltip(Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP);
|
||||
},
|
||||
ANIMATE: [
|
||||
@@ -1753,7 +1753,7 @@ export const display_circle = {
|
||||
.setCheck("var");
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)
|
||||
.appendField(new Blockly.FieldDropdown(this.STATUS), 'OP')
|
||||
.appendField(new Blockly.FieldDropdown(display_circle.STATUS), 'OP')
|
||||
this.jsonInit({
|
||||
"message0": Blockly.Msg.MIXLY_HANBIT_SHOW_CIRCLE,
|
||||
"args0": [
|
||||
@@ -1798,7 +1798,7 @@ export const display_triangle = {
|
||||
.setCheck("var");
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_DISPLAY_DRAW + Blockly.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)
|
||||
.appendField(new Blockly.FieldDropdown(this.STATUS), 'OP')
|
||||
.appendField(new Blockly.FieldDropdown(display_triangle.STATUS), 'OP')
|
||||
this.jsonInit({
|
||||
"message0": Blockly.Msg.MIXLY_HANBIT_SHOW_triangle,
|
||||
"args0": [
|
||||
|
||||
@@ -145,7 +145,7 @@ export const display_matrix_extern_shift = {
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET)
|
||||
this.appendDummyInput('')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET2)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(display_matrix_extern_shift.OPERATORS), 'OP');
|
||||
this.appendValueInput('val')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_SHIFT)
|
||||
.setCheck(Number);
|
||||
@@ -264,7 +264,7 @@ export const display_matrix_extern_image_builtins = {
|
||||
this.setColour(DISPLAY_EXTERN_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_Built_in_image1)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'image');
|
||||
.appendField(new Blockly.FieldDropdown(display_matrix_extern_image_builtins.OPERATORS), 'image');
|
||||
this.setOutput(true, "esp32_image");
|
||||
this.setInputsInline(true);
|
||||
this.setTooltip(Blockly.Msg.MIXLY_MICROBIT_Clear_display);
|
||||
@@ -297,7 +297,7 @@ export const matrix_extern_image_arithmetic = {
|
||||
.appendField(Blockly.Msg.MICROBIT_DISPLAY_MERGE_SHAPE);
|
||||
this.appendValueInput('B')
|
||||
// .setCheck(["esp32_image", "List", String])
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(matrix_extern_image_arithmetic.OPERATORS), 'OP');
|
||||
this.setInputsInline(true);
|
||||
var thisBlock = this;
|
||||
this.setTooltip(function () {
|
||||
@@ -396,7 +396,7 @@ export const display_image_size = {
|
||||
.setCheck("esp32_image")
|
||||
// .appendField(Blockly.Msg.blockpy_USE_LIST);
|
||||
this.appendDummyInput("")
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(display_image_size.OPERATORS), 'OP');
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true);
|
||||
var thisBlock = this;
|
||||
@@ -428,7 +428,7 @@ export const display_rect = {
|
||||
.setCheck("var");
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_RECT)
|
||||
.appendField(new Blockly.FieldDropdown(this.STATUS), 'OP')
|
||||
.appendField(new Blockly.FieldDropdown(display_rect.STATUS), 'OP')
|
||||
// this.appendValueInput("PIN", Number)
|
||||
// .setCheck(Number)
|
||||
// .setAlign(Blockly.inputs.Align.RIGHT)
|
||||
@@ -664,7 +664,7 @@ export const display_animate = {
|
||||
this.setOutput(true, 'Tuple');
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_ESP32_DISPLAY_ANIMATE)
|
||||
.appendField(new Blockly.FieldDropdown(this.ANIMATE), 'ANIMATION')
|
||||
.appendField(new Blockly.FieldDropdown(display_animate.ANIMATE), 'ANIMATION')
|
||||
//this.setTooltip(Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP);
|
||||
},
|
||||
ANIMATE: [
|
||||
@@ -681,7 +681,7 @@ export const display_circle = {
|
||||
.setCheck("var");
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)
|
||||
.appendField(new Blockly.FieldDropdown(this.STATUS), 'OP')
|
||||
.appendField(new Blockly.FieldDropdown(display_circle.STATUS), 'OP')
|
||||
this.jsonInit({
|
||||
"message0": Blockly.Msg.MIXLY_HANBIT_SHOW_CIRCLE,
|
||||
"args0": [
|
||||
@@ -1540,7 +1540,7 @@ export const extern_oled_shift = {
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET)
|
||||
this.appendDummyInput('')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET2)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(extern_oled_shift.OPERATORS), 'OP');
|
||||
this.appendValueInput('val')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_SHIFT)
|
||||
.setCheck(Number);
|
||||
|
||||
@@ -210,7 +210,7 @@ export const image_arithmetic = {
|
||||
.appendField(Blockly.Msg.MICROBIT_DISPLAY_MERGE_SHAPE);
|
||||
this.appendValueInput('B')
|
||||
// .setCheck(["esp32_image", "List", String])
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(image_arithmetic.OPERATORS), 'OP');
|
||||
this.setInputsInline(true);
|
||||
var thisBlock = this;
|
||||
this.setTooltip(function () {
|
||||
@@ -251,7 +251,7 @@ export const display_shift = {
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET)
|
||||
this.appendDummyInput('')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET2)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(display_shift.OPERATORS), 'OP');
|
||||
this.appendValueInput('val')
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_SHIFT)
|
||||
.setCheck(Number);
|
||||
@@ -416,7 +416,7 @@ export const mixgome_display_font = {
|
||||
this.setColour(DISPLAY_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.OLED_SET_FONT)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(mixgome_display_font.OPERATORS), 'OP');
|
||||
this.setPreviousStatement(true, null);
|
||||
this.setNextStatement(true, null);
|
||||
this.setInputsInline(true);
|
||||
@@ -721,7 +721,7 @@ export const mpython_pbm_image = {
|
||||
init: function () {
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_Built_in_image1)
|
||||
.appendField(new Blockly.FieldDropdown(this.IMAGES), 'path');
|
||||
.appendField(new Blockly.FieldDropdown(mpython_pbm_image.IMAGES), 'path');
|
||||
this.setColour(DISPLAY_ONBOARD_HUE);
|
||||
this.setOutput(true);
|
||||
},
|
||||
@@ -886,7 +886,7 @@ export const mixbot_display_rotate = {
|
||||
this.setColour(DISPLAY_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_MIXBOT_SCREEN_ROTATE)
|
||||
.appendField(new Blockly.FieldDropdown(this.OPERATORS), 'OP');
|
||||
.appendField(new Blockly.FieldDropdown(mixbot_display_rotate.OPERATORS), 'OP');
|
||||
this.setPreviousStatement(true, null);
|
||||
this.setNextStatement(true, null);
|
||||
this.setInputsInline(true);
|
||||
|
||||
@@ -416,7 +416,7 @@ export const requests_attribute = {
|
||||
this.setColour(NETWORK_HUE);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_JS_GET)
|
||||
.appendField(new Blockly.FieldDropdown(this.ATTR), 'ATTR')
|
||||
.appendField(new Blockly.FieldDropdown(requests_attribute.ATTR), 'ATTR')
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true, String);
|
||||
var thisBlock = this;
|
||||
@@ -446,7 +446,7 @@ export const requests_method = {
|
||||
this.setColour(NETWORK_HUE);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.blockpy_CONDUCT)
|
||||
.appendField(new Blockly.FieldDropdown(this.METHOD), 'DIR')
|
||||
.appendField(new Blockly.FieldDropdown(requests_method.METHOD), 'DIR')
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.blockpy_REQUESTS)
|
||||
this.setInputsInline(true);
|
||||
@@ -557,7 +557,7 @@ export const requests_attribute2 = {
|
||||
this.setColour(COMMUNICATE_HUE);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_JS_GET)
|
||||
.appendField(new Blockly.FieldDropdown(this.ATTR), 'ATTR')
|
||||
.appendField(new Blockly.FieldDropdown(requests_attribute2.ATTR), 'ATTR')
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true, String);
|
||||
},
|
||||
|
||||
@@ -539,7 +539,7 @@ export const sensor_dht11 = {
|
||||
.appendField(Blockly.Msg.MIXLY_PIN)
|
||||
.setCheck(Number);
|
||||
this.appendDummyInput("")
|
||||
.appendField(new Blockly.FieldDropdown(this.METHOD), "WHAT");
|
||||
.appendField(new Blockly.FieldDropdown(sensor_dht11.METHOD), "WHAT");
|
||||
this.setOutput(true, Number);
|
||||
var thisBlock = this;
|
||||
this.setTooltip(function () {
|
||||
|
||||
@@ -182,7 +182,7 @@ export const sensor_dht11 = {
|
||||
.appendField(Blockly.Msg.MIXLY_PIN)
|
||||
.setCheck(Number);
|
||||
this.appendDummyInput("")
|
||||
.appendField(new Blockly.FieldDropdown(this.METHOD), "WHAT");
|
||||
.appendField(new Blockly.FieldDropdown(sensor_dht11.METHOD), "WHAT");
|
||||
this.setOutput(true, Number);
|
||||
var thisBlock = this;
|
||||
this.setTooltip(function () {
|
||||
@@ -1665,7 +1665,7 @@ export const PS2_stk = {
|
||||
this.setColour(SENSOR_EXTERN_HUE);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.PS2_stick)
|
||||
.appendField(new Blockly.FieldDropdown(this.PSSTK), "psstk");
|
||||
.appendField(new Blockly.FieldDropdown(PS2_stk.PSSTK), "psstk");
|
||||
this.setOutput(true, Number);
|
||||
this.setTooltip('');
|
||||
},
|
||||
@@ -1739,7 +1739,7 @@ export const PS2_stk_new = {
|
||||
.appendField(Blockly.Msg.PS2);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_JOYSTICK)
|
||||
.appendField(new Blockly.FieldDropdown(this.PSSTK), "psstk");
|
||||
.appendField(new Blockly.FieldDropdown(PS2_stk_new.PSSTK), "psstk");
|
||||
this.setOutput(true, Number);
|
||||
this.setTooltip('');
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user