Merge pull request #152 from sensebox/fix-output-types
fix output types
This commit is contained in:
		
						commit
						68f4fbf961
					
				| @ -10,23 +10,24 @@ | ||||
|  * | ||||
|  * TODO: maybe change this to a "PIN" BlocklyType | ||||
|  */ | ||||
| import Blockly from 'blockly/core'; | ||||
| import { selectedBoard } from '../helpers/board' | ||||
| import * as Types from '../helpers/types' | ||||
| import Blockly from "blockly/core"; | ||||
| import { selectedBoard } from "../helpers/board"; | ||||
| import * as Types from "../helpers/types"; | ||||
| 
 | ||||
| 
 | ||||
| Blockly.Blocks['io_digitalwrite'] = { | ||||
| Blockly.Blocks["io_digitalwrite"] = { | ||||
|   /** | ||||
|    * Block for creating a 'set pin' to a state. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/DigitalWrite'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/DigitalWrite"); | ||||
|     this.setColour(250); | ||||
|         this.appendValueInput('STATE') | ||||
|     this.appendValueInput("STATE") | ||||
|       .appendField(Blockly.Msg.ARD_DIGITALWRITE) | ||||
|             .appendField(new Blockly.FieldDropdown( | ||||
|                 selectedBoard().digitalPins), 'PIN') | ||||
|       .appendField( | ||||
|         new Blockly.FieldDropdown(selectedBoard().digitalPins), | ||||
|         "PIN" | ||||
|       ) | ||||
|       .appendField(Blockly.Msg.ARD_WRITE_TO) | ||||
|       .setCheck(Types.BOOLEAN.checkList); | ||||
|     this.setInputsInline(false); | ||||
| @ -40,23 +41,28 @@ Blockly.Blocks['io_digitalwrite'] = { | ||||
|    */ | ||||
|   updateFields: function () { | ||||
|     Blockly.Arduino.Boards.refreshBlockFieldDropdown( | ||||
|             this, 'PIN', 'digitalPins'); | ||||
|     } | ||||
|       this, | ||||
|       "PIN", | ||||
|       "digitalPins" | ||||
|     ); | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['io_digitalread'] = { | ||||
| Blockly.Blocks["io_digitalread"] = { | ||||
|   /** | ||||
|    * Block for creating a 'read pin'. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/DigitalRead'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/DigitalRead"); | ||||
|     this.setColour(250); | ||||
|     this.appendDummyInput() | ||||
|       .appendField(Blockly.Msg.ARD_DIGITALREAD) | ||||
|             .appendField(new Blockly.FieldDropdown( | ||||
|                 selectedBoard().digitalPins), 'PIN'); | ||||
|         this.setOutput(true, 'boolean'); | ||||
|       .appendField( | ||||
|         new Blockly.FieldDropdown(selectedBoard().digitalPins), | ||||
|         "PIN" | ||||
|       ); | ||||
|     this.setOutput(true, "boolean"); | ||||
|     this.setTooltip(Blockly.Msg.ARD_DIGITALREAD_TIP); | ||||
|   }, | ||||
|   /** @return {!string} The type of return value for the block, an integer. */ | ||||
| @ -69,22 +75,27 @@ Blockly.Blocks['io_digitalread'] = { | ||||
|    */ | ||||
|   updateFields: function () { | ||||
|     Blockly.Arduino.Boards.refreshBlockFieldDropdown( | ||||
|             this, 'PIN', 'digitalPins'); | ||||
|     } | ||||
|       this, | ||||
|       "PIN", | ||||
|       "digitalPins" | ||||
|     ); | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['io_builtin_led'] = { | ||||
| Blockly.Blocks["io_builtin_led"] = { | ||||
|   /** | ||||
|    * Block for setting built-in LED to a state. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/DigitalWrite'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/DigitalWrite"); | ||||
|     this.setColour(250); | ||||
|         this.appendValueInput('STATE') | ||||
|     this.appendValueInput("STATE") | ||||
|       .appendField(Blockly.Msg.ARD_BUILTIN_LED) | ||||
|             .appendField(new Blockly.FieldDropdown( | ||||
|                 selectedBoard().builtinLed), 'BUILT_IN_LED') | ||||
|       .appendField( | ||||
|         new Blockly.FieldDropdown(selectedBoard().builtinLed), | ||||
|         "BUILT_IN_LED" | ||||
|       ) | ||||
|       .appendField(Blockly.Msg.ARD_WRITE_TO) | ||||
|       .setCheck(Types.BOOLEAN.compatibleTypes); | ||||
|     this.setInputsInline(false); | ||||
| @ -98,7 +109,10 @@ Blockly.Blocks['io_builtin_led'] = { | ||||
|    */ | ||||
|   updateFields: function () { | ||||
|     Blockly.Arduino.Boards.refreshBlockFieldDropdown( | ||||
|             this, 'BUILT_IN_LED', 'builtinLed'); | ||||
|       this, | ||||
|       "BUILT_IN_LED", | ||||
|       "builtinLed" | ||||
|     ); | ||||
|   }, | ||||
|   /** @return {!string} The type of input value for the block, an integer. */ | ||||
|   getBlockType: function () { | ||||
| @ -106,18 +120,17 @@ Blockly.Blocks['io_builtin_led'] = { | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['io_analogwrite'] = { | ||||
| Blockly.Blocks["io_analogwrite"] = { | ||||
|   /** | ||||
|    * Block for creating a 'set pin' to an analogue value. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/AnalogWrite'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/AnalogWrite"); | ||||
|     this.setColour(250); | ||||
|         this.appendValueInput('NUM') | ||||
|     this.appendValueInput("NUM") | ||||
|       .appendField(Blockly.Msg.ARD_ANALOGWRITE) | ||||
|             .appendField(new Blockly.FieldDropdown( | ||||
|                 selectedBoard().pwmPins), 'PIN') | ||||
|       .appendField(new Blockly.FieldDropdown(selectedBoard().pwmPins), "PIN") | ||||
|       .appendField(Blockly.Msg.ARD_WRITE_TO) | ||||
|       .setCheck(Types.NUMBER.compatibleTypes); | ||||
|     this.setInputsInline(false); | ||||
| @ -130,7 +143,7 @@ Blockly.Blocks['io_analogwrite'] = { | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   updateFields: function () { | ||||
|         Blockly.Arduino.Boards.refreshBlockFieldDropdown(this, 'PIN', 'pwmPins'); | ||||
|     Blockly.Arduino.Boards.refreshBlockFieldDropdown(this, "PIN", "pwmPins"); | ||||
|   }, | ||||
|   /** @return {!string} The type of input value for the block, an integer. */ | ||||
|   getBlockType: function () { | ||||
| @ -138,88 +151,95 @@ Blockly.Blocks['io_analogwrite'] = { | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['io_analogread'] = { | ||||
| Blockly.Blocks["io_analogread"] = { | ||||
|   /** | ||||
|    * Block for reading an analogue input. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/AnalogRead'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/AnalogRead"); | ||||
|     this.setColour(250); | ||||
|     this.appendDummyInput() | ||||
|       .appendField(Blockly.Msg.ARD_ANALOGREAD) | ||||
|             .appendField(new Blockly.FieldDropdown( | ||||
|                 selectedBoard().analogPins), 'PIN'); | ||||
|         this.setOutput(true, Types.NUMBER.typeId); | ||||
|       .appendField( | ||||
|         new Blockly.FieldDropdown(selectedBoard().analogPins), | ||||
|         "PIN" | ||||
|       ); | ||||
|     this.setOutput(true, Types.NUMBER.typeName); | ||||
|     this.setTooltip(Blockly.Msg.ARD_ANALOGREAD_TIP); | ||||
|   }, | ||||
|   /** @return {!string} The type of return value for the block, an integer. */ | ||||
|   getBlockType: function () { | ||||
|         return Types.NUMBER.typeId; | ||||
|     return Types.NUMBER.typeName; | ||||
|   }, | ||||
|   /** | ||||
|    * Updates the content of the the pin related fields. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   updateFields: function () { | ||||
|         Blockly.Arduino.Boards.refreshBlockFieldDropdown(this, 'PIN', 'analogPins'); | ||||
|     } | ||||
|     Blockly.Arduino.Boards.refreshBlockFieldDropdown(this, "PIN", "analogPins"); | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['io_highlow'] = { | ||||
| Blockly.Blocks["io_highlow"] = { | ||||
|   /** | ||||
|    * Block for creating a pin state. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/Constants'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/Constants"); | ||||
|     this.setColour(250); | ||||
|         this.appendDummyInput() | ||||
|             .appendField( | ||||
|                 new Blockly.FieldDropdown([[Blockly.Msg.ARD_HIGH, 'HIGH'], [Blockly.Msg.ARD_LOW, 'LOW']]), | ||||
|                 'STATE'); | ||||
|         this.setOutput(true, Types.BOOLEAN.typeId); | ||||
|     this.appendDummyInput().appendField( | ||||
|       new Blockly.FieldDropdown([ | ||||
|         [Blockly.Msg.ARD_HIGH, "HIGH"], | ||||
|         [Blockly.Msg.ARD_LOW, "LOW"], | ||||
|       ]), | ||||
|       "STATE" | ||||
|     ); | ||||
|     this.setOutput(true, Types.BOOLEAN.typeName); | ||||
|     this.setTooltip(Blockly.Msg.ARD_HIGHLOW_TIP); | ||||
|   }, | ||||
|   /** @return {!string} The type of return value for the block, an integer. */ | ||||
|   getBlockType: function () { | ||||
|     return Types.BOOLEAN; | ||||
|     } | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['io_pulsein'] = { | ||||
| Blockly.Blocks["io_pulsein"] = { | ||||
|   /** | ||||
|    * Block for measuring the duration of a pulse in an input pin. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|     this.jsonInit({ | ||||
|             "type": "math_foo", | ||||
|             "message0": Blockly.Msg.ARD_PULSE_READ, | ||||
|             "args0": [{ | ||||
|                 "type": "input_value", | ||||
|                 "name": "PULSETYPE", | ||||
|                 "check": Types.BOOLEAN.compatibleTypes | ||||
|             }, { | ||||
|                 "type": "field_dropdown", | ||||
|                 "name": "PULSEPIN", | ||||
|                 "options": selectedBoard().digitalPins, | ||||
|             } | ||||
|       type: "math_foo", | ||||
|       message0: Blockly.Msg.ARD_PULSE_READ, | ||||
|       args0: [ | ||||
|         { | ||||
|           type: "input_value", | ||||
|           name: "PULSETYPE", | ||||
|           check: Types.BOOLEAN.compatibleTypes, | ||||
|         }, | ||||
|         { | ||||
|           type: "field_dropdown", | ||||
|           name: "PULSEPIN", | ||||
|           options: selectedBoard().digitalPins, | ||||
|         }, | ||||
|       ], | ||||
|             "output": Types.NUMBER.typeId, | ||||
|             "inputsInline": true, | ||||
|             "colour": 250, | ||||
|             "tooltip": Blockly.Msg.ARD_PULSE_TIP, | ||||
|             "helpUrl": 'https://www.arduino.cc/en/Reference/PulseIn' | ||||
|       output: Types.NUMBER.typeName, | ||||
|       inputsInline: true, | ||||
|       colour: 250, | ||||
|       tooltip: Blockly.Msg.ARD_PULSE_TIP, | ||||
|       helpUrl: "https://www.arduino.cc/en/Reference/PulseIn", | ||||
|     }); | ||||
|   }, | ||||
|   /** @return {!string} The type of input value for the block, an integer. */ | ||||
|   getBlockType: function () { | ||||
|         return Types.NUMBER.typeId; | ||||
|     } | ||||
|     return Types.NUMBER.typeName; | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['io_pulsetimeout'] = { | ||||
| Blockly.Blocks["io_pulsetimeout"] = { | ||||
|   /** | ||||
|    * Block for measuring (with a time-out) the duration of a pulse in an input | ||||
|    * pin. | ||||
| @ -227,31 +247,34 @@ Blockly.Blocks['io_pulsetimeout'] = { | ||||
|    */ | ||||
|   init: function () { | ||||
|     this.jsonInit({ | ||||
|             "type": "math_foo", | ||||
|             "message0": Blockly.Msg.ARD_PULSE_READ_TIMEOUT, | ||||
|             "args0": [{ | ||||
|                 "type": "input_value", | ||||
|                 "name": "PULSETYPE", | ||||
|                 "check": Types.BOOLEAN.compatibleTypes | ||||
|             }, { | ||||
|                 "type": "field_dropdown", | ||||
|                 "name": "PULSEPIN", | ||||
|                 "options": selectedBoard().digitalPins, | ||||
|             }, { | ||||
|                 "type": "input_value", | ||||
|                 "name": "TIMEOUT", | ||||
|                 "check": Types.NUMBER.compatibleTypes | ||||
|             } | ||||
|       type: "math_foo", | ||||
|       message0: Blockly.Msg.ARD_PULSE_READ_TIMEOUT, | ||||
|       args0: [ | ||||
|         { | ||||
|           type: "input_value", | ||||
|           name: "PULSETYPE", | ||||
|           check: Types.BOOLEAN.compatibleTypes, | ||||
|         }, | ||||
|         { | ||||
|           type: "field_dropdown", | ||||
|           name: "PULSEPIN", | ||||
|           options: selectedBoard().digitalPins, | ||||
|         }, | ||||
|         { | ||||
|           type: "input_value", | ||||
|           name: "TIMEOUT", | ||||
|           check: Types.NUMBER.compatibleTypes, | ||||
|         }, | ||||
|       ], | ||||
|             "output": Types.NUMBER.typeId, | ||||
|             "inputsInline": true, | ||||
|             "colour": 250, | ||||
|             "tooltip": Blockly.Msg.ARD_PULSETIMEOUT_TIP, | ||||
|             "helpUrl": 'https://www.arduino.cc/en/Reference/PulseIn' | ||||
|       output: Types.NUMBER.typeName, | ||||
|       inputsInline: true, | ||||
|       colour: 250, | ||||
|       tooltip: Blockly.Msg.ARD_PULSETIMEOUT_TIP, | ||||
|       helpUrl: "https://www.arduino.cc/en/Reference/PulseIn", | ||||
|     }); | ||||
|   }, | ||||
|   /** @return {!string} The type of input value for the block, an integer. */ | ||||
|   getBlockType: function () { | ||||
|         return Types.NUMBER.typeId; | ||||
|     } | ||||
|     return Types.NUMBER.typeName; | ||||
|   }, | ||||
| }; | ||||
|  | ||||
| @ -1,57 +1,52 @@ | ||||
| import Blockly, { FieldDropdown } from 'blockly/core' | ||||
| import * as Types from '../helpers/types' | ||||
| import { getColour } from '../helpers/colour'; | ||||
| import Blockly, { FieldDropdown } from "blockly/core"; | ||||
| import * as Types from "../helpers/types"; | ||||
| import { getColour } from "../helpers/colour"; | ||||
| 
 | ||||
| Blockly.Blocks['lists_create_empty'] = { | ||||
| Blockly.Blocks["lists_create_empty"] = { | ||||
|   /** | ||||
|    * Elapsed time in milliseconds block definition | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/Millis'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/Millis"); | ||||
|     this.setColour(getColour().arrays); | ||||
|         this.appendDummyInput() | ||||
|             .appendField("create List with") | ||||
|         this.appendValueInput('NUMBER'); | ||||
|     this.appendDummyInput().appendField("create List with"); | ||||
|     this.appendValueInput("NUMBER"); | ||||
|     this.appendDummyInput() | ||||
|       .appendField("Items of Type") | ||||
|             .appendField(new FieldDropdown(Types.VARIABLE_TYPES), 'type'); | ||||
|         this.setOutput(true, Types.ARRAY.typeId); | ||||
|       .appendField(new FieldDropdown(Types.VARIABLE_TYPES), "type"); | ||||
|     this.setOutput(true, Types.ARRAY.typeName); | ||||
|     this.setTooltip(Blockly.Msg.ARD_TIME_MILLIS_TIP); | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| Blockly.Blocks['array_getIndex'] = { | ||||
| Blockly.Blocks["array_getIndex"] = { | ||||
|   /** | ||||
|    * Elapsed time in milliseconds block definition | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/Millis'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/Millis"); | ||||
|     this.setColour(getColour().arrays); | ||||
|         this.appendDummyInput() | ||||
|             .appendField(new Blockly.FieldVariable( | ||||
|                 'X', | ||||
|                 null, | ||||
|                 ['Array'], | ||||
|                 'Array' | ||||
|             ), 'FIELDNAME'); | ||||
|         this.setOutput(true, Types.ARRAY.typeId); | ||||
|     this.appendDummyInput().appendField( | ||||
|       new Blockly.FieldVariable("X", null, ["Array"], "Array"), | ||||
|       "FIELDNAME" | ||||
|     ); | ||||
|     this.setOutput(true, Types.ARRAY.typeName); | ||||
|     this.setTooltip(Blockly.Msg.ARD_TIME_MILLIS_TIP); | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks['lists_length'] = { | ||||
| Blockly.Blocks["lists_length"] = { | ||||
|   /** | ||||
|    * Elapsed time in milliseconds block definition | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/Millis'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/Millis"); | ||||
|     this.setColour(getColour().arrays); | ||||
|         this.appendValueInput('ARRAY') | ||||
|             .appendField('length of') | ||||
|     this.appendValueInput("ARRAY") | ||||
|       .appendField("length of") | ||||
|       .setCheck(Types.ARRAY.compatibleTypes); | ||||
|     this.setOutput(true, Types.NUMBER.typeName); | ||||
|     this.setTooltip(Blockly.Msg.ARD_TIME_MILLIS_TIP); | ||||
|  | ||||
| @ -11,32 +11,31 @@ | ||||
|  * TODO: This block can be improved to set the new range properly. | ||||
|  */ | ||||
| 
 | ||||
| import * as Blockly from "blockly/core"; | ||||
| import { getColour } from "../helpers/colour"; | ||||
| import * as Types from "../helpers/types"; | ||||
| 
 | ||||
| import * as Blockly from 'blockly/core'; | ||||
| import { getColour } from '../helpers/colour'; | ||||
| import * as Types from '../helpers/types' | ||||
| 
 | ||||
| Blockly.Blocks['base_map'] = { | ||||
| Blockly.Blocks["base_map"] = { | ||||
|   /** | ||||
|    * Block for creating a the map function. | ||||
|    * @this Blockly.Block | ||||
|    */ | ||||
|   init: function () { | ||||
|         this.setHelpUrl('http://arduino.cc/en/Reference/map'); | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/map"); | ||||
|     this.setColour(getColour().math); | ||||
|         this.appendValueInput('NUM') | ||||
|     this.appendValueInput("NUM") | ||||
|       .appendField(Blockly.Msg.ARD_MAP) | ||||
|       .setCheck(Types.NUMBER.compatibleTypes); | ||||
|         this.appendValueInput('FMIN') | ||||
|     this.appendValueInput("FMIN") | ||||
|       .appendField(Blockly.Msg.ARD_MAP_FROMMIN) | ||||
|       .setCheck(Types.NUMBER.compatibleTypes); | ||||
|         this.appendValueInput('FMAX') | ||||
|     this.appendValueInput("FMAX") | ||||
|       .appendField(Blockly.Msg.ARD_MAP_FROMMAX) | ||||
|       .setCheck(Types.NUMBER.compatibleTypes); | ||||
|         this.appendValueInput('DMIN') | ||||
|     this.appendValueInput("DMIN") | ||||
|       .appendField(Blockly.Msg.ARD_MAP_TOMIN) | ||||
|       .setCheck(Types.NUMBER.compatibleTypes); | ||||
|         this.appendValueInput('DMAX') | ||||
|     this.appendValueInput("DMAX") | ||||
|       .appendField(Blockly.Msg.ARD_MAP_TOMAX) | ||||
|       .setCheck(Types.NUMBER.compatibleTypes); | ||||
|     this.setOutput(true); | ||||
| @ -45,6 +44,6 @@ Blockly.Blocks['base_map'] = { | ||||
|   }, | ||||
|   /** @return {string} The type of return value for the block, an integer. */ | ||||
|   getBlockType: function () { | ||||
|         return Types.NUMBER.typeId; | ||||
|     } | ||||
|     return Types.NUMBER.typeName; | ||||
|   }, | ||||
| }; | ||||
|  | ||||
| @ -62,7 +62,7 @@ Blockly.Blocks["sensebox_rtc_get"] = { | ||||
|         ]), | ||||
|         "dropdown" | ||||
|       ); | ||||
|     this.setOutput(true, Types.LARGE_NUMBER.typeId); | ||||
|     this.setOutput(true, Types.LARGE_NUMBER.typeName); | ||||
|     this.setTooltip(Blockly.Msg.sensebox_rtc_get_tooltip); | ||||
|   }, | ||||
| }; | ||||
|  | ||||
| @ -59,7 +59,7 @@ Blockly.Blocks["time_millis"] = { | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/Millis"); | ||||
|     this.setColour(getColour().time); | ||||
|     this.appendDummyInput().appendField(Blockly.Msg.ARD_TIME_MILLIS); | ||||
|     this.setOutput(true, Types.LARGE_NUMBER.typeId); | ||||
|     this.setOutput(true, Types.LARGE_NUMBER.typeName); | ||||
|     this.setTooltip(Blockly.Msg.ARD_TIME_MILLIS_TIP); | ||||
|   }, | ||||
|   /** @return {string} The type of return value for the block, an integer. */ | ||||
| @ -77,7 +77,7 @@ Blockly.Blocks["time_micros"] = { | ||||
|     this.setHelpUrl("http://arduino.cc/en/Reference/Micros"); | ||||
|     this.setColour(getColour().time); | ||||
|     this.appendDummyInput().appendField(Blockly.Msg.ARD_TIME_MICROS); | ||||
|     this.setOutput(true, Types.LARGE_NUMBER.typeId); | ||||
|     this.setOutput(true, Types.LARGE_NUMBER.typeName); | ||||
|     this.setTooltip(Blockly.Msg.ARD_TIME_MICROS_TIP); | ||||
|   }, | ||||
|   /** | ||||
|  | ||||
| @ -1,23 +1,26 @@ | ||||
| 
 | ||||
| export const IO = { | ||||
| 
 | ||||
|   ARD_ANALOGREAD: "lese analogen Pin#", | ||||
|     ARD_ANALOGREAD_TIP: "Gibt einen Wert zwischen 0 und 1024 zurüch", | ||||
|   ARD_ANALOGREAD_TIP: "Gibt einen Wert zwischen 0 und 1023 zurück", | ||||
|   ARD_ANALOGWRITE: "setzte analogen Pin#", | ||||
|     ARD_ANALOGWRITE_TIP: "Schreibe analogen Wert zwischen 0 und 255 an einen spezifischen PWM Port", | ||||
|   ARD_ANALOGWRITE_TIP: | ||||
|     "Schreibe analogen Wert zwischen 0 und 255 an einen spezifischen PWM Port", | ||||
|   ARD_BUILTIN_LED: "eingebaute LED", | ||||
|   ARD_BUILTIN_LED_TIP: "Schaltet die interne LED An oder Aus", | ||||
|     ARD_COMPONENT_WARN1: "A %1 configuration block with the same %2 name must be added to use this block!", | ||||
|   ARD_COMPONENT_WARN1: | ||||
|     "A %1 configuration block with the same %2 name must be added to use this block!", | ||||
|   ARD_DEFINE: "Definiere", | ||||
|   ARD_DIGITALREAD: "lesen digitalen Pin#", | ||||
|   ARD_DIGITALREAD_TIP: "Lese Wert an digitalen Pin: HIGH(1) oder LOW(0)", | ||||
|   ARD_DIGITALWRITE: "setzte digitalen Pin#", | ||||
|     ARD_DIGITALWRITE_TIP: "Schreibe digitalen Wert HIGH (1) oder LOW(0) an spezifischen Port", | ||||
|   ARD_DIGITALWRITE_TIP: | ||||
|     "Schreibe digitalen Wert HIGH (1) oder LOW(0) an spezifischen Port", | ||||
|   ARD_FUN_RUN_LOOP: "Endlosschleife()", | ||||
|   ARD_FUN_RUN_SETUP: "Setup()", | ||||
|     ARD_FUN_RUN_TIP: "Definiert die setup() und loop() Funktionen. Die setup()-Funktion wird beim starten **einmal** ausgeführt. Anschließend wir die loop()-Funktion in einer **Endlosschleife** ausgeführt. Füge in die Setup()-Funktion Blöcke ein, um z.B. das Display zu initalisieren, eine Verbindung zum WiFi-Netzwerk herzustellen oder um die LoRa Verbindung zu initialsieren.", | ||||
|   ARD_FUN_RUN_TIP: | ||||
|     "Definiert die setup() und loop() Funktionen. Die setup()-Funktion wird beim starten **einmal** ausgeführt. Anschließend wir die loop()-Funktion in einer **Endlosschleife** ausgeführt. Füge in die Setup()-Funktion Blöcke ein, um z.B. das Display zu initalisieren, eine Verbindung zum WiFi-Netzwerk herzustellen oder um die LoRa Verbindung zu initialsieren.", | ||||
|   ARD_HIGH: "HIGH", | ||||
|     ARD_HIGHLOW_TIP: "Setzt einen Status auf HIGH oder LOWSet a pin state logic High or Low.", | ||||
|   ARD_HIGHLOW_TIP: | ||||
|     "Setzt einen Status auf HIGH oder LOWSet a pin state logic High or Low.", | ||||
|   ARD_LOW: "LOW", | ||||
|   ARD_MAP: "Verteile Wert", | ||||
|   ARD_MAP_FROMMIN: "von Minimum", | ||||
| @ -30,16 +33,21 @@ export const IO = { | ||||
|   ARD_NOTONE_PIN: "keinen Ton an Pin", | ||||
|   ARD_NOTONE_PIN_TIP: "Stoppe die Tonerzeugung an Pin", | ||||
|   ARD_NOTONE_TIP: "Schaltet den Ton am ausgewählten Pin aus", | ||||
|     ARD_PIN_WARN1: "Pin %1 wird benötigt für  %2 als Pin %3. Bereitsgenutzt als %4.", | ||||
|     ARD_PULSETIMEOUT_TIP: "Misst die Laufzeit eines Impulses am ausgewählten Pin, wenn die Zeit ist in Microsekunden.", | ||||
|   ARD_PIN_WARN1: | ||||
|     "Pin %1 wird benötigt für  %2 als Pin %3. Bereitsgenutzt als %4.", | ||||
|   ARD_PULSETIMEOUT_TIP: | ||||
|     "Misst die Laufzeit eines Impulses am ausgewählten Pin, wenn die Zeit ist in Microsekunden.", | ||||
|   ARD_PULSE_READ: "Misst %1 Impuls an Pin #%2", | ||||
|     ARD_PULSE_READ_TIMEOUT: "Misst %1 Impuls an Pin #%2 (Unterbrechung nach %3 μs)", | ||||
|   ARD_PULSE_READ_TIMEOUT: | ||||
|     "Misst %1 Impuls an Pin #%2 (Unterbrechung nach %3 μs)", | ||||
|   ARD_PULSE_TIP: "Misst die Zeit eines Impulses an dem ausgewählten Pin.", | ||||
|   ARD_SERIAL_BPS: "bps", | ||||
|   ARD_SERIAL_PRINT: "schreibe", | ||||
|   ARD_SERIAL_PRINT_NEWLINE: "neue Zeile hinzufügen", | ||||
|     ARD_SERIAL_PRINT_TIP: "Prints data to the console/serial port as human-readable ASCII text.",  // untranslated
 | ||||
|     ARD_SERIAL_PRINT_WARN: "A setup block for %1 must be added to the workspace to use this block!",  // untranslated
 | ||||
|   ARD_SERIAL_PRINT_TIP: | ||||
|     "Prints data to the console/serial port as human-readable ASCII text.", // untranslated
 | ||||
|   ARD_SERIAL_PRINT_WARN: | ||||
|     "A setup block for %1 must be added to the workspace to use this block!", // untranslated
 | ||||
|   ARD_SERIAL_SETUP: "Setup", | ||||
|   ARD_SERIAL_SETUP_TIP: "Selects the speed for a specific Serial peripheral", // untranslated
 | ||||
|   ARD_SERIAL_SPEED: ":  Übertragungsgeschwindigkeit zu", | ||||
| @ -62,12 +70,14 @@ export const IO = { | ||||
|   ARD_SPI_SETUP_MSBFIRST: "MSBFIRST", // untranslated
 | ||||
|   ARD_SPI_SETUP_SHIFT: "data shift", // untranslated
 | ||||
|   ARD_SPI_SETUP_TIP: "Configures the SPI peripheral.", // untranslated
 | ||||
|     ARD_SPI_TRANSRETURN_TIP: "Send a SPI message to an specified slave device and get data back.",  // untranslated
 | ||||
|   ARD_SPI_TRANSRETURN_TIP: | ||||
|     "Send a SPI message to an specified slave device and get data back.", // untranslated
 | ||||
|   ARD_SPI_TRANS_NONE: "none", // untranslated
 | ||||
|   ARD_SPI_TRANS_SLAVE: "to slave pin", // untranslated
 | ||||
|   ARD_SPI_TRANS_TIP: "Send a SPI message to an specified slave device.", // untranslated
 | ||||
|   ARD_SPI_TRANS_VAL: "transfer", // untranslated
 | ||||
|     ARD_SPI_TRANS_WARN1: "A setup block for %1 must be added to the workspace to use this block!",  // untranslated
 | ||||
|   ARD_SPI_TRANS_WARN1: | ||||
|     "A setup block for %1 must be added to the workspace to use this block!", // untranslated
 | ||||
|   ARD_SPI_TRANS_WARN2: "Old pin value %1 is no longer available.", // untranslated
 | ||||
|   ARD_STEPPER_COMPONENT: "stepper", // untranslated
 | ||||
|   ARD_STEPPER_DEFAULT_NAME: "MyStepper", // untranslated
 | ||||
| @ -80,7 +90,8 @@ export const IO = { | ||||
|   ARD_STEPPER_PIN4: "pin4#", // untranslated
 | ||||
|   ARD_STEPPER_REVOLVS: "how many steps per revolution", // untranslated
 | ||||
|   ARD_STEPPER_SETUP: "Setup stepper motor", // untranslated
 | ||||
|     ARD_STEPPER_SETUP_TIP: "Configures a stepper motor pinout and other settings.",  // untranslated
 | ||||
|   ARD_STEPPER_SETUP_TIP: | ||||
|     "Configures a stepper motor pinout and other settings.", // untranslated
 | ||||
|   ARD_STEPPER_SPEED: "set speed (rpm) to", // untranslated
 | ||||
|   ARD_STEPPER_STEP: "move stepper", // untranslated
 | ||||
|   ARD_STEPPER_STEPS: "steps", // untranslated
 | ||||
| @ -104,5 +115,4 @@ export const IO = { | ||||
|   NEW_INSTANCE_TITLE: "Neue Instanz mit Name:", | ||||
|   RENAME_INSTANCE: "Instanz umbenennen...", | ||||
|   RENAME_INSTANCE_TITLE: "Benenne alle '%1' Instanzen zu:", | ||||
| 
 | ||||
| } | ||||
| }; | ||||
|  | ||||
| @ -1,13 +1,13 @@ | ||||
| export const IO = { | ||||
| 
 | ||||
| 
 | ||||
|   ARD_ANALOGREAD: "read analog pin#", | ||||
|     ARD_ANALOGREAD_TIP: "Return value between 0 and 1024", | ||||
|   ARD_ANALOGREAD_TIP: "Return value between 0 and 1023", | ||||
|   ARD_ANALOGWRITE: "set analog pin#", | ||||
|     ARD_ANALOGWRITE_TIP: "Write analog value between 0 and 255 to a specific PWM Port", | ||||
|   ARD_ANALOGWRITE_TIP: | ||||
|     "Write analog value between 0 and 255 to a specific PWM Port", | ||||
|   ARD_BUILTIN_LED: "set built-in LED", | ||||
|   ARD_BUILTIN_LED_TIP: "Light on or off for the built-in LED of the Arduino", | ||||
|     ARD_COMPONENT_WARN1: "A %1 configuration block with the same %2 name must be added to use this block!", | ||||
|   ARD_COMPONENT_WARN1: | ||||
|     "A %1 configuration block with the same %2 name must be added to use this block!", | ||||
|   ARD_DEFINE: "Define", | ||||
|   ARD_DIGITALREAD: "read digital pin#", | ||||
|   ARD_DIGITALREAD_TIP: "Read digital value on a pin: HIGH or LOW", | ||||
| @ -31,15 +31,18 @@ export const IO = { | ||||
|   ARD_NOTONE_PIN_TIP: "Stop generating a tone on a pin", | ||||
|   ARD_NOTONE_TIP: "Turns the tone off on the selected pin", | ||||
|   ARD_PIN_WARN1: "Pin %1 is needed for %2 as pin %3. Already used as %4.", | ||||
|     ARD_PULSETIMEOUT_TIP: "Measures the duration of a pulse on the selected pin, if it is within the time-out in microseconds.", | ||||
|   ARD_PULSETIMEOUT_TIP: | ||||
|     "Measures the duration of a pulse on the selected pin, if it is within the time-out in microseconds.", | ||||
|   ARD_PULSE_READ: "measure %1 pulse on pin #%2", | ||||
|   ARD_PULSE_READ_TIMEOUT: "measure %1 pulse on pin #%2 (timeout after %3 μs)", | ||||
|   ARD_PULSE_TIP: "Measures the duration of a pulse on the selected pin.", | ||||
|   ARD_SERIAL_BPS: "bps", | ||||
|   ARD_SERIAL_PRINT: "print", | ||||
|   ARD_SERIAL_PRINT_NEWLINE: "add new line", | ||||
|     ARD_SERIAL_PRINT_TIP: "Prints data to the console/serial port as human-readable ASCII text.", | ||||
|     ARD_SERIAL_PRINT_WARN: "A setup block for %1 must be added to the workspace to use this block!", | ||||
|   ARD_SERIAL_PRINT_TIP: | ||||
|     "Prints data to the console/serial port as human-readable ASCII text.", | ||||
|   ARD_SERIAL_PRINT_WARN: | ||||
|     "A setup block for %1 must be added to the workspace to use this block!", | ||||
|   ARD_SERIAL_SETUP: "Setup", | ||||
|   ARD_SERIAL_SETUP_TIP: "Selects the speed for a specific Serial peripheral", | ||||
|   ARD_SERIAL_SPEED: ":  speed to", | ||||
| @ -62,12 +65,14 @@ export const IO = { | ||||
|   ARD_SPI_SETUP_MSBFIRST: "MSBFIRST", | ||||
|   ARD_SPI_SETUP_SHIFT: "data shift", | ||||
|   ARD_SPI_SETUP_TIP: "Configures the SPI peripheral.", | ||||
|     ARD_SPI_TRANSRETURN_TIP: "Send a SPI message to an specified slave device and get data back.", | ||||
|   ARD_SPI_TRANSRETURN_TIP: | ||||
|     "Send a SPI message to an specified slave device and get data back.", | ||||
|   ARD_SPI_TRANS_NONE: "none", | ||||
|   ARD_SPI_TRANS_SLAVE: "to slave pin", | ||||
|   ARD_SPI_TRANS_TIP: "Send a SPI message to an specified slave device.", | ||||
|   ARD_SPI_TRANS_VAL: "transfer", | ||||
|     ARD_SPI_TRANS_WARN1: "A setup block for %1 must be added to the workspace to use this block!", | ||||
|   ARD_SPI_TRANS_WARN1: | ||||
|     "A setup block for %1 must be added to the workspace to use this block!", | ||||
|   ARD_SPI_TRANS_WARN2: "Old pin value %1 is no longer available.", | ||||
|   ARD_STEPPER_COMPONENT: "stepper", | ||||
|   ARD_STEPPER_DEFAULT_NAME: "MyStepper", | ||||
| @ -80,7 +85,8 @@ export const IO = { | ||||
|   ARD_STEPPER_PIN4: "pin4#", | ||||
|   ARD_STEPPER_REVOLVS: "how many steps per revolution", | ||||
|   ARD_STEPPER_SETUP: "Setup stepper motor", | ||||
|     ARD_STEPPER_SETUP_TIP: "Configures a stepper motor pinout and other settings.", | ||||
|   ARD_STEPPER_SETUP_TIP: | ||||
|     "Configures a stepper motor pinout and other settings.", | ||||
|   ARD_STEPPER_SPEED: "set speed (rpm) to", | ||||
|   ARD_STEPPER_STEP: "move stepper", | ||||
|   ARD_STEPPER_STEPS: "steps", | ||||
| @ -104,4 +110,4 @@ export const IO = { | ||||
|   NEW_INSTANCE_TITLE: "New instance name:", | ||||
|   RENAME_INSTANCE: "Rename instance...", | ||||
|   RENAME_INSTANCE_TITLE: "Rename all '%1' instances to:", | ||||
| } | ||||
| }; | ||||
|  | ||||
| @ -544,7 +544,7 @@ Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = | ||||
| 
 | ||||
| // Ardublockly strings
 | ||||
| Blockly.Msg.ARD_ANALOGREAD = "read analog pin#"; | ||||
| Blockly.Msg.ARD_ANALOGREAD_TIP = "Return value between 0 and 1024"; | ||||
| Blockly.Msg.ARD_ANALOGREAD_TIP = "Return value between 0 and 1023"; | ||||
| Blockly.Msg.ARD_ANALOGWRITE = "set analog pin#"; | ||||
| Blockly.Msg.ARD_ANALOGWRITE_TIP = | ||||
|   "Write analog value between 0 and 255 to a specific PWM Port"; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user