diff --git a/boards/default_src/arduino_avr/blocks/pinout.js b/boards/default_src/arduino_avr/blocks/pinout.js
new file mode 100644
index 00000000..bedb192d
--- /dev/null
+++ b/boards/default_src/arduino_avr/blocks/pinout.js
@@ -0,0 +1,53 @@
+import * as Blockly from 'blockly/core';
+
+const PINOUT_HUE = '#555555';
+
+export const uno_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/Uno.png'), 515, 372, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const nano_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/Nano.png'), 515, 368, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const mega_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/Mega.png'), 515, 736, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const promini_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/ProMini.png'), 515, 371, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const leonardo_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/Leonardo.png'), 515, 371, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
\ No newline at end of file
diff --git a/boards/default_src/arduino_avr/blocks/tools.js b/boards/default_src/arduino_avr/blocks/tools.js
index 85ad140f..996748da 100644
--- a/boards/default_src/arduino_avr/blocks/tools.js
+++ b/boards/default_src/arduino_avr/blocks/tools.js
@@ -101,56 +101,6 @@ export const tool_modulus = {
}
};
-export const uno_pin = {
- init: function () {
- this.appendDummyInput()
- .appendField(new Blockly.FieldImage(require('../media/boards/uno.png'), 525, 372, "*"));
- this.setColour(TOOLS_HUE);
- this.setTooltip();
- this.setHelpUrl();
- }
-};
-
-export const nano_pin = {
- init: function () {
- this.appendDummyInput()
- .appendField(new Blockly.FieldImage(require('../media/boards/nano.png'), 525, 368, "*"));
- this.setColour(TOOLS_HUE);
- this.setTooltip();
- this.setHelpUrl();
- }
-};
-
-export const mega_pin = {
- init: function () {
- this.appendDummyInput()
- .appendField(new Blockly.FieldImage(require('../media/boards/mega.png'), 525, 736, "*"));
- this.setColour(TOOLS_HUE);
- this.setTooltip();
- this.setHelpUrl();
- }
-};
-
-export const promini_pin = {
- init: function () {
- this.appendDummyInput()
- .appendField(new Blockly.FieldImage(require('../media/boards/ProMini.png'), 525, 371, "*"));
- this.setColour(TOOLS_HUE);
- this.setTooltip();
- this.setHelpUrl();
- }
-};
-
-export const leonardo_pin = {
- init: function () {
- this.appendDummyInput()
- .appendField(new Blockly.FieldImage(require('../media/boards/leonardo.png'), 525, 371, "*"));
- this.setColour(TOOLS_HUE);
- this.setTooltip();
- this.setHelpUrl();
- }
-};
-
//获取两个日期差值
export const get_the_number_of_days_between_the_two_dates = {
init: function () {
diff --git a/boards/default_src/arduino_avr/export.js b/boards/default_src/arduino_avr/export.js
index 61b1a8db..aa4c4816 100644
--- a/boards/default_src/arduino_avr/export.js
+++ b/boards/default_src/arduino_avr/export.js
@@ -11,6 +11,7 @@ import * as ArduinoAVRInoutBlocks from './blocks/inout';
import * as ArduinoAVRListsBlocks from './blocks/lists';
import * as ArduinoAVRLogicBlocks from './blocks/logic';
import * as ArduinoAVRMathBlocks from './blocks/math';
+import * as ArduinoAVRPinoutBlocks from './blocks/pinout';
import * as ArduinoAVRPinsBlocks from './blocks/pins';
import * as ArduinoAVRProceduresBlocks from './blocks/procedures';
import * as ArduinoAVRScoopBlocks from './blocks/scoop';
@@ -32,6 +33,7 @@ import * as ArduinoAVRInoutGenerators from './generators/inout';
import * as ArduinoAVRListsGenerators from './generators/lists';
import * as ArduinoAVRLogicGenerators from './generators/logic';
import * as ArduinoAVRMathGenerators from './generators/math';
+import * as ArduinoAVRPinoutGenerators from './generators/pinout';
import * as ArduinoAVRPinsGenerators from './generators/pins';
import * as ArduinoAVRProceduresGenerators from './generators/procedures';
import * as ArduinoAVRScoopGenerators from './generators/scoop';
@@ -55,6 +57,7 @@ export {
ArduinoAVRListsBlocks,
ArduinoAVRLogicBlocks,
ArduinoAVRMathBlocks,
+ ArduinoAVRPinoutBlocks,
ArduinoAVRPinsBlocks,
ArduinoAVRProceduresBlocks,
ArduinoAVRScoopBlocks,
@@ -75,6 +78,7 @@ export {
ArduinoAVRListsGenerators,
ArduinoAVRLogicGenerators,
ArduinoAVRMathGenerators,
+ ArduinoAVRPinoutGenerators,
ArduinoAVRPinsGenerators,
ArduinoAVRProceduresGenerators,
ArduinoAVRScoopGenerators,
diff --git a/boards/default_src/arduino_avr/generators/pinout.js b/boards/default_src/arduino_avr/generators/pinout.js
new file mode 100644
index 00000000..277fe95e
--- /dev/null
+++ b/boards/default_src/arduino_avr/generators/pinout.js
@@ -0,0 +1,8 @@
+export const uno_pin = function () {
+ return '';
+}
+
+export const nano_pin = uno_pin;
+export const mega_pin = uno_pin;
+export const promini_pin = uno_pin;
+export const leonardo_pin = uno_pin;
\ No newline at end of file
diff --git a/boards/default_src/arduino_avr/generators/tools.js b/boards/default_src/arduino_avr/generators/tools.js
index ac5c443c..d41bb827 100644
--- a/boards/default_src/arduino_avr/generators/tools.js
+++ b/boards/default_src/arduino_avr/generators/tools.js
@@ -537,15 +537,6 @@ export const tool_modulus = function (_, generator) {
return [code, generator.ORDER_ATOMIC];
}
-export const nano_pin = function () {
- return "";
-}
-
-export const promini_pin = nano_pin;
-export const leonardo_pin = nano_pin;
-export const uno_pin = nano_pin;
-export const mega_pin = nano_pin;
-
//获取两个日期差值
export const get_the_number_of_days_between_the_two_dates = function (_, generator) {
var year_start = generator.valueToCode(this, 'year_start', generator.ORDER_ATOMIC);
diff --git a/boards/default_src/arduino_avr/index.js b/boards/default_src/arduino_avr/index.js
index 92f698bb..169a2cfb 100644
--- a/boards/default_src/arduino_avr/index.js
+++ b/boards/default_src/arduino_avr/index.js
@@ -24,6 +24,7 @@ import {
ArduinoAVRListsBlocks,
ArduinoAVRLogicBlocks,
ArduinoAVRMathBlocks,
+ ArduinoAVRPinoutBlocks,
ArduinoAVRPinsBlocks,
ArduinoAVRProceduresBlocks,
ArduinoAVRScoopBlocks,
@@ -44,6 +45,7 @@ import {
ArduinoAVRListsGenerators,
ArduinoAVRLogicGenerators,
ArduinoAVRMathGenerators,
+ ArduinoAVRPinoutGenerators,
ArduinoAVRPinsGenerators,
ArduinoAVRProceduresGenerators,
ArduinoAVRScoopGenerators,
@@ -82,6 +84,7 @@ Object.assign(
ArduinoAVRListsBlocks,
ArduinoAVRLogicBlocks,
ArduinoAVRMathBlocks,
+ ArduinoAVRPinoutBlocks,
ArduinoAVRPinsBlocks,
ArduinoAVRProceduresBlocks,
ArduinoAVRScoopBlocks,
@@ -108,6 +111,7 @@ Object.assign(
ArduinoAVRListsGenerators,
ArduinoAVRLogicGenerators,
ArduinoAVRMathGenerators,
+ ArduinoAVRPinoutGenerators,
ArduinoAVRPinsGenerators,
ArduinoAVRProceduresGenerators,
ArduinoAVRScoopGenerators,
diff --git a/boards/default_src/arduino_avr/media/boards/Leonardo.png b/boards/default_src/arduino_avr/media/boards/Leonardo.png
new file mode 100644
index 00000000..d00850ed
Binary files /dev/null and b/boards/default_src/arduino_avr/media/boards/Leonardo.png differ
diff --git a/boards/default_src/arduino_avr/media/boards/Mega.png b/boards/default_src/arduino_avr/media/boards/Mega.png
new file mode 100644
index 00000000..660d3895
Binary files /dev/null and b/boards/default_src/arduino_avr/media/boards/Mega.png differ
diff --git a/boards/default_src/arduino_avr/media/boards/Nano.png b/boards/default_src/arduino_avr/media/boards/Nano.png
new file mode 100644
index 00000000..196839f1
Binary files /dev/null and b/boards/default_src/arduino_avr/media/boards/Nano.png differ
diff --git a/boards/default_src/arduino_avr/media/boards/ProMini.png b/boards/default_src/arduino_avr/media/boards/ProMini.png
index 3ab15239..2c95ed7b 100644
Binary files a/boards/default_src/arduino_avr/media/boards/ProMini.png and b/boards/default_src/arduino_avr/media/boards/ProMini.png differ
diff --git a/boards/default_src/arduino_avr/media/boards/Uno.png b/boards/default_src/arduino_avr/media/boards/Uno.png
new file mode 100644
index 00000000..7e7c9465
Binary files /dev/null and b/boards/default_src/arduino_avr/media/boards/Uno.png differ
diff --git a/boards/default_src/arduino_avr/media/boards/leonardo.png b/boards/default_src/arduino_avr/media/boards/leonardo.png
deleted file mode 100644
index 5720ef06..00000000
Binary files a/boards/default_src/arduino_avr/media/boards/leonardo.png and /dev/null differ
diff --git a/boards/default_src/arduino_avr/media/boards/mega.png b/boards/default_src/arduino_avr/media/boards/mega.png
deleted file mode 100644
index 8a124b73..00000000
Binary files a/boards/default_src/arduino_avr/media/boards/mega.png and /dev/null differ
diff --git a/boards/default_src/arduino_avr/media/boards/nano.png b/boards/default_src/arduino_avr/media/boards/nano.png
deleted file mode 100644
index 93ad0863..00000000
Binary files a/boards/default_src/arduino_avr/media/boards/nano.png and /dev/null differ
diff --git a/boards/default_src/arduino_avr/media/boards/uno.png b/boards/default_src/arduino_avr/media/boards/uno.png
deleted file mode 100644
index 490b091f..00000000
Binary files a/boards/default_src/arduino_avr/media/boards/uno.png and /dev/null differ
diff --git a/boards/default_src/arduino_esp32/blocks/Handbit.js b/boards/default_src/arduino_esp32/blocks/handbit.js
similarity index 100%
rename from boards/default_src/arduino_esp32/blocks/Handbit.js
rename to boards/default_src/arduino_esp32/blocks/handbit.js
diff --git a/boards/default_src/arduino_esp32/blocks/MixePi.js b/boards/default_src/arduino_esp32/blocks/mixepi.js
similarity index 100%
rename from boards/default_src/arduino_esp32/blocks/MixePi.js
rename to boards/default_src/arduino_esp32/blocks/mixepi.js
diff --git a/boards/default_src/arduino_esp32/blocks/MixGo.js b/boards/default_src/arduino_esp32/blocks/mixgo.js
similarity index 100%
rename from boards/default_src/arduino_esp32/blocks/MixGo.js
rename to boards/default_src/arduino_esp32/blocks/mixgo.js
diff --git a/boards/default_src/arduino_esp32/blocks/pinout.js b/boards/default_src/arduino_esp32/blocks/pinout.js
new file mode 100644
index 00000000..540c5dae
--- /dev/null
+++ b/boards/default_src/arduino_esp32/blocks/pinout.js
@@ -0,0 +1,164 @@
+import * as Blockly from 'blockly/core';
+
+const PINOUT_HUE = '#555555';
+
+
+export const esp32_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/ESP32.png'), 525, 265, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const handbit_A = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/HandbitA.jpg'), 525, 260, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const handbit_B = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/HandbitB.jpg'), 460, 260, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const handbit_pin_A = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/HandbitPinA.jpg'), 270, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const handbit_pin_B = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/HandbitPinB.jpg'), 270, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const mixgo_pin_A = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/MixGoPinA.png'), 525, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const mixgo_pin_B = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/MixGoPinB.png'), 525, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const PocketCard_A = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/PocketCardA.jpg'), 525, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const PocketCard_B = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/PocketCardB.jpg'), 525, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const esp32_cam_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/ESP32Cam.png'), 525, 270, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const esp32_pico_kit_1_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/ESP32PicoKit.png'), 525, 230, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const nodemcu_32s_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/NodeMCU32S.png'), 380, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const esp32c3_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/ESP32C3.jpg'), 525, 365, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const core_esp32c3_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/CoreESP32C3.png'), 500, 376, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const esp32s3_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/ESP32S3.jpg'), 500, 350, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
+
+export const esp32s2_pin = {
+ init: function () {
+ this.appendDummyInput()
+ .appendField(new Blockly.FieldImage(require('../media/boards/ESP32S2.jpg'), 500, 350, '*'));
+ this.setColour(PINOUT_HUE);
+ this.setTooltip();
+ this.setHelpUrl();
+ }
+};
\ No newline at end of file
diff --git a/boards/default_src/arduino_esp32/blocks/PocketCard.js b/boards/default_src/arduino_esp32/blocks/pocketcard.js
similarity index 99%
rename from boards/default_src/arduino_esp32/blocks/PocketCard.js
rename to boards/default_src/arduino_esp32/blocks/pocketcard.js
index b6db8f18..e254fbef 100644
--- a/boards/default_src/arduino_esp32/blocks/PocketCard.js
+++ b/boards/default_src/arduino_esp32/blocks/pocketcard.js
@@ -1,6 +1,6 @@
import * as Blockly from 'blockly/core';
import { Profile } from 'mixly';
-import { sensor_mixgo_pin_near } from './MixGo';
+import { sensor_mixgo_pin_near } from './mixgo';
const SENSOR_HUE = 40;
const ACTUATOR_HUE = 100;
diff --git a/boards/default_src/arduino_esp32/blocks/tools.js b/boards/default_src/arduino_esp32/blocks/tools.js
deleted file mode 100644
index e733d92f..00000000
--- a/boards/default_src/arduino_esp32/blocks/tools.js
+++ /dev/null
@@ -1,102 +0,0 @@
-import * as Blockly from 'blockly/core';
-
-const TOOLS_HUE = "#555555";
-let toolsBlocks = {};
-let toolsGenerators = {};
-
-const BOARDS_PIN_DEF = {
- esp32_pin: {
- path: require("../media/ESP32.png"),
- height: 270
- },
- handbit_A: {
- path: require("../media/handbit_A.jpg"),
- height: 260
- },
- handbit_B: {
- path: require("../media/handbit_B.jpg"),
- height: 260,
- width: 460
- },
- handbit_pin_A: {
- path: require("../media/handbit_pin_A.jpg"),
- width: 270
- },
- handbit_pin_B: {
- path: require("../media/handbit_pin_B.jpg"),
- width: 290
- },
- mixgo_pin_A: {
- path: require("../media/MixGo_pin_A.png")
- },
- mixgo_pin_B: {
- path: require("../media/MixGo_pin_B.png")
- },
- PocketCard_A: {
- path: require("../media/PocketCard_A.jpg")
- },
- PocketCard_B: {
- path: require("../media/PocketCard_B.jpg")
- },
- PocketCard_pin: {
- path: require("../media/PocketCard_pin.png")
- },
- esp32_cam_pin: {
- path: require("../media/ESP32_CAM_pin.png"),
- height: 270
- },
- esp32_pico_kit_1_pin: {
- path: require("../media/ESP32_pico_kit_1.png"),
- height: 230
- },
- nodemcu_32s_pin: {
- path: require("../media/nodemcu_32s_pin.png"),
- width: 380
- },
- esp32c3_pin: {
- path: require("../media/ESP32c3.jpg")
- },
- core_esp32c3_pin: {
- path: require("../media/core_esp32c3_pin.png"),
- width: 500
- },
- esp32s3_pin: {
- path: require("../media/ESP32s3.jpg"),
- height: 350,
- width: 500
- },
- esp32s2_pin: {
- path: require("../media/ESP32s2.jpg"),
- height: 350,
- width: 500
- }
-}
-
-for (let i in BOARDS_PIN_DEF) {
- const defaultDef = {
- path: require('../media/ESP32.png'),
- height: 376,
- width: 525,
- tooltip: '',
- helpUrl: ''
- };
- let pinDef = {};
- Object.assign(pinDef, defaultDef, BOARDS_PIN_DEF[i]);
-
- toolsBlocks[i] = {
- init: function () {
- this.appendDummyInput()
- .appendField(new Blockly.FieldImage(pinDef.path, pinDef.width, pinDef.height, "*"));
- this.setColour(TOOLS_HUE);
- this.setTooltip(pinDef.tooltip);
- this.setHelpUrl(pinDef.helpUrl);
- }
- };
-
- toolsGenerators[i] = function () {
- return '';
- }
-}
-
-export const blocks = toolsBlocks;
-export const generators = toolsGenerators;
\ No newline at end of file
diff --git a/boards/default_src/arduino_esp32/css/color_esp32_arduino.css b/boards/default_src/arduino_esp32/css/color_esp32_arduino.css
index 4164f261..6bbf3969 100644
--- a/boards/default_src/arduino_esp32/css/color_esp32_arduino.css
+++ b/boards/default_src/arduino_esp32/css/color_esp32_arduino.css
@@ -98,6 +98,42 @@ div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(10)>div.blocklyTr
background-size: 100% auto;
}
+/*子模块的第一个图标(未选中时)*/
+div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(10)>div:nth-child(2)>div:nth-child(1)>div.blocklyTreeRow>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
+ background: url('../../../../common/media/mark/resources.png') no-repeat;
+ background-size: 100% auto;
+}
+
+/*子模块的第一个图标(选中时)*/
+div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(10)>div:nth-child(2)>div:nth-child(1)>div.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
+ background: url('../../../../common/media/mark/resources2.png') no-repeat;
+ background-size: 100% auto;
+}
+
+/*子模块的第二个图标(未选中时)*/
+div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(10)>div:nth-child(2)>div:nth-child(2)>div.blocklyTreeRow>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
+ background: url('../../../../common/media/mark/resources.png') no-repeat;
+ background-size: 100% auto;
+}
+
+/*子模块的第二个图标(选中时)*/
+div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(10)>div:nth-child(2)>div:nth-child(2)>div.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
+ background: url('../../../../common/media/mark/resources2.png') no-repeat;
+ background-size: 100% auto;
+}
+
+/*子模块的第三个图标(未选中时)*/
+div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(10)>div:nth-child(2)>div:nth-child(3)>div.blocklyTreeRow>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
+ background: url('../../../../common/media/mark/resources.png') no-repeat;
+ background-size: 100% auto;
+}
+
+/*子模块的第三个图标(选中时)*/
+div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(10)>div:nth-child(2)>div:nth-child(3)>div.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
+ background: url('../../../../common/media/mark/resources2.png') no-repeat;
+ background-size: 100% auto;
+}
+
div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(11)>div.blocklyTreeRow>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
background: url('../../../../common/media/mark/sensor.png') no-repeat;
background-size: 100% auto;
diff --git a/boards/default_src/arduino_esp32/export.js b/boards/default_src/arduino_esp32/export.js
index 8a43cdf3..f33cf1db 100644
--- a/boards/default_src/arduino_esp32/export.js
+++ b/boards/default_src/arduino_esp32/export.js
@@ -4,28 +4,29 @@ import * as ArduinoESP32ActuatorBlocks from './blocks/actuator';
import * as ArduinoESP32CommunicateBlocks from './blocks/communicate';
import * as ArduinoESP32ControlBlocks from './blocks/control';
import * as ArduinoESP32EthernetBlocks from './blocks/ethernet';
-import * as ArduinoESP32HandbitBlocks from './blocks/Handbit';
+import * as ArduinoESP32HandbitBlocks from './blocks/handbit';
import * as ArduinoESP32InoutBlocks from './blocks/inout';
-import * as ArduinoESP32MixePiBlocks from './blocks/MixePi';
-import * as ArduinoESP32MixGoBlocks from './blocks/MixGo';
+import * as ArduinoESP32MixePiBlocks from './blocks/mixepi';
+import * as ArduinoESP32MixGoBlocks from './blocks/mixgo';
+import * as ArduinoESP32PinoutBlocks from './blocks/pinout';
import * as ArduinoESP32PinsBlocks from './blocks/pins';
-import * as ArduinoESP32PocketCardBlocks from './blocks/PocketCard';
+import * as ArduinoESP32PocketCardBlocks from './blocks/pocketcard';
import * as ArduinoESP32SensorBlocks from './blocks/sensor';
import * as ArduinoESP32SerialBlocks from './blocks/serial';
import * as ArduinoESP32SidanBlocks from './blocks/sidan';
import * as ArduinoESP32StorageBlocks from './blocks/storage';
-import * as ArduinoESP32Tools from './blocks/tools';
import * as ArduinoESP32ActuatorGenerators from './generators/actuator';
import * as ArduinoESP32CommunicateGenerators from './generators/communicate';
import * as ArduinoESP32ControlGenerators from './generators/control';
import * as ArduinoESP32EthernetGenerators from './generators/ethernet';
-import * as ArduinoESP32HandbitGenerators from './generators/Handbit';
+import * as ArduinoESP32HandbitGenerators from './generators/handbit';
import * as ArduinoESP32InoutGenerators from './generators/inout';
-import * as ArduinoESP32MixePiGenerators from './generators/MixePi';
-import * as ArduinoESP32MixGoGenerators from './generators/MixGo';
+import * as ArduinoESP32MixePiGenerators from './generators/mixepi';
+import * as ArduinoESP32MixGoGenerators from './generators/mixgo';
+import * as ArduinoESP32PinoutGenerators from './generators/pinout';
import * as ArduinoESP32PinsGenerators from './generators/pins';
-import * as ArduinoESP32PocketCardGenerators from './generators/PocketCard';
+import * as ArduinoESP32PocketCardGenerators from './generators/pocketcard';
import * as ArduinoESP32SensorGenerators from './generators/sensor';
import * as ArduinoESP32SerialGenerators from './generators/serial';
import * as ArduinoESP32SidanGenerators from './generators/sidan';
@@ -35,9 +36,6 @@ import ArduinoESP32ZhHans from './language/zh-hans';
import ArduinoESP32ZhHant from './language/zh-hant';
import ArduinoESP32En from './language/en';
-const ArduinoESP32ToolsBlocks = ArduinoESP32Tools.blocks;
-const ArduinoESP32ToolsGenerators = ArduinoESP32Tools.generators;
-
export {
ArduinoESP32Pins,
ArduinoESP32ActuatorBlocks,
@@ -48,13 +46,13 @@ export {
ArduinoESP32InoutBlocks,
ArduinoESP32MixePiBlocks,
ArduinoESP32MixGoBlocks,
+ ArduinoESP32PinoutBlocks,
ArduinoESP32PinsBlocks,
ArduinoESP32PocketCardBlocks,
ArduinoESP32SensorBlocks,
ArduinoESP32SerialBlocks,
ArduinoESP32SidanBlocks,
ArduinoESP32StorageBlocks,
- ArduinoESP32ToolsBlocks,
ArduinoESP32ActuatorGenerators,
ArduinoESP32CommunicateGenerators,
ArduinoESP32ControlGenerators,
@@ -63,13 +61,13 @@ export {
ArduinoESP32InoutGenerators,
ArduinoESP32MixePiGenerators,
ArduinoESP32MixGoGenerators,
+ ArduinoESP32PinoutGenerators,
ArduinoESP32PinsGenerators,
ArduinoESP32PocketCardGenerators,
ArduinoESP32SensorGenerators,
ArduinoESP32SerialGenerators,
ArduinoESP32SidanGenerators,
ArduinoESP32StorageGenerators,
- ArduinoESP32ToolsGenerators,
ArduinoESP32ZhHans,
ArduinoESP32ZhHant,
ArduinoESP32En
diff --git a/boards/default_src/arduino_esp32/generators/Handbit.js b/boards/default_src/arduino_esp32/generators/handbit.js
similarity index 99%
rename from boards/default_src/arduino_esp32/generators/Handbit.js
rename to boards/default_src/arduino_esp32/generators/handbit.js
index 168a7c45..a988b32f 100644
--- a/boards/default_src/arduino_esp32/generators/Handbit.js
+++ b/boards/default_src/arduino_esp32/generators/handbit.js
@@ -8,7 +8,6 @@ export const handbit_button_is_pressed = function (_, generator) {
}
export const handbit_light = sensor_light;
-
export const handbit_sound = sensor_sound;
// 传感器_重力感应块
diff --git a/boards/default_src/arduino_esp32/generators/MixePi.js b/boards/default_src/arduino_esp32/generators/mixepi.js
similarity index 100%
rename from boards/default_src/arduino_esp32/generators/MixePi.js
rename to boards/default_src/arduino_esp32/generators/mixepi.js
diff --git a/boards/default_src/arduino_esp32/generators/MixGo.js b/boards/default_src/arduino_esp32/generators/mixgo.js
similarity index 100%
rename from boards/default_src/arduino_esp32/generators/MixGo.js
rename to boards/default_src/arduino_esp32/generators/mixgo.js
diff --git a/boards/default_src/arduino_esp32/generators/pinout.js b/boards/default_src/arduino_esp32/generators/pinout.js
new file mode 100644
index 00000000..bfb422f6
--- /dev/null
+++ b/boards/default_src/arduino_esp32/generators/pinout.js
@@ -0,0 +1,19 @@
+export const esp32_pin = function () {
+ return '';
+}
+
+export const handbit_A = esp32_pin;
+export const handbit_B = esp32_pin;
+export const handbit_pin_A = esp32_pin;
+export const handbit_pin_B = esp32_pin;
+export const mixgo_pin_A = esp32_pin;
+export const mixgo_pin_B = esp32_pin;
+export const PocketCard_A = esp32_pin;
+export const PocketCard_B = esp32_pin;
+export const esp32_cam_pin = esp32_pin;
+export const esp32_pico_kit_1_pin = esp32_pin;
+export const nodemcu_32s_pin = esp32_pin;
+export const esp32c3_pin = esp32_pin;
+export const core_esp32c3_pin = esp32_pin;
+export const esp32s3_pin = esp32_pin;
+export const esp32s2_pin = esp32_pin;
\ No newline at end of file
diff --git a/boards/default_src/arduino_esp32/generators/PocketCard.js b/boards/default_src/arduino_esp32/generators/pocketcard.js
similarity index 100%
rename from boards/default_src/arduino_esp32/generators/PocketCard.js
rename to boards/default_src/arduino_esp32/generators/pocketcard.js
diff --git a/boards/default_src/arduino_esp32/index.js b/boards/default_src/arduino_esp32/index.js
index 8ed96eab..3ef10cfc 100644
--- a/boards/default_src/arduino_esp32/index.js
+++ b/boards/default_src/arduino_esp32/index.js
@@ -62,13 +62,13 @@ import {
ArduinoESP32InoutBlocks,
ArduinoESP32MixePiBlocks,
ArduinoESP32MixGoBlocks,
+ ArduinoESP32PinoutBlocks,
ArduinoESP32PinsBlocks,
ArduinoESP32PocketCardBlocks,
ArduinoESP32SensorBlocks,
ArduinoESP32SerialBlocks,
ArduinoESP32SidanBlocks,
ArduinoESP32StorageBlocks,
- ArduinoESP32ToolsBlocks,
ArduinoESP32ActuatorGenerators,
ArduinoESP32CommunicateGenerators,
ArduinoESP32ControlGenerators,
@@ -77,13 +77,13 @@ import {
ArduinoESP32InoutGenerators,
ArduinoESP32MixePiGenerators,
ArduinoESP32MixGoGenerators,
+ ArduinoESP32PinoutGenerators,
ArduinoESP32PinsGenerators,
ArduinoESP32PocketCardGenerators,
ArduinoESP32SensorGenerators,
ArduinoESP32SerialGenerators,
ArduinoESP32SidanGenerators,
ArduinoESP32StorageGenerators,
- ArduinoESP32ToolsGenerators,
ArduinoESP32ZhHans,
ArduinoESP32ZhHant,
ArduinoESP32En
@@ -140,13 +140,13 @@ Object.assign(
ArduinoESP32InoutBlocks,
ArduinoESP32MixePiBlocks,
ArduinoESP32MixGoBlocks,
+ ArduinoESP32PinoutBlocks,
ArduinoESP32PinsBlocks,
ArduinoESP32PocketCardBlocks,
ArduinoESP32SensorBlocks,
ArduinoESP32SerialBlocks,
ArduinoESP32SidanBlocks,
- ArduinoESP32StorageBlocks,
- ArduinoESP32ToolsBlocks
+ ArduinoESP32StorageBlocks
);
Object.assign(
@@ -180,11 +180,11 @@ Object.assign(
ArduinoESP32InoutGenerators,
ArduinoESP32MixePiGenerators,
ArduinoESP32MixGoGenerators,
+ ArduinoESP32PinoutGenerators,
ArduinoESP32PinsGenerators,
ArduinoESP32PocketCardGenerators,
ArduinoESP32SensorGenerators,
ArduinoESP32SerialGenerators,
ArduinoESP32SidanGenerators,
- ArduinoESP32StorageGenerators,
- ArduinoESP32ToolsGenerators
+ ArduinoESP32StorageGenerators
);
\ No newline at end of file
diff --git a/boards/default_src/arduino_esp32/media/core_esp32c3_pin.png b/boards/default_src/arduino_esp32/media/boards/CoreESP32C3.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/core_esp32c3_pin.png
rename to boards/default_src/arduino_esp32/media/boards/CoreESP32C3.png
diff --git a/boards/default_src/arduino_esp32/media/ESP32.png b/boards/default_src/arduino_esp32/media/boards/ESP32.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/ESP32.png
rename to boards/default_src/arduino_esp32/media/boards/ESP32.png
diff --git a/boards/default_src/arduino_esp32/media/ESP32c3.jpg b/boards/default_src/arduino_esp32/media/boards/ESP32C3.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/ESP32c3.jpg
rename to boards/default_src/arduino_esp32/media/boards/ESP32C3.jpg
diff --git a/boards/default_src/arduino_esp32/media/ESP32_CAM_pin.png b/boards/default_src/arduino_esp32/media/boards/ESP32Cam.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/ESP32_CAM_pin.png
rename to boards/default_src/arduino_esp32/media/boards/ESP32Cam.png
diff --git a/boards/default_src/arduino_esp32/media/ESP32_pico_kit_1.png b/boards/default_src/arduino_esp32/media/boards/ESP32PicoKit.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/ESP32_pico_kit_1.png
rename to boards/default_src/arduino_esp32/media/boards/ESP32PicoKit.png
diff --git a/boards/default_src/arduino_esp32/media/ESP32s2.jpg b/boards/default_src/arduino_esp32/media/boards/ESP32S2.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/ESP32s2.jpg
rename to boards/default_src/arduino_esp32/media/boards/ESP32S2.jpg
diff --git a/boards/default_src/arduino_esp32/media/ESP32s3.jpg b/boards/default_src/arduino_esp32/media/boards/ESP32S3.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/ESP32s3.jpg
rename to boards/default_src/arduino_esp32/media/boards/ESP32S3.jpg
diff --git a/boards/default_src/arduino_esp32/media/handbit_A.jpg b/boards/default_src/arduino_esp32/media/boards/HandbitA.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/handbit_A.jpg
rename to boards/default_src/arduino_esp32/media/boards/HandbitA.jpg
diff --git a/boards/default_src/arduino_esp32/media/handbit_B.jpg b/boards/default_src/arduino_esp32/media/boards/HandbitB.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/handbit_B.jpg
rename to boards/default_src/arduino_esp32/media/boards/HandbitB.jpg
diff --git a/boards/default_src/arduino_esp32/media/handbit_pin_A.jpg b/boards/default_src/arduino_esp32/media/boards/HandbitPinA.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/handbit_pin_A.jpg
rename to boards/default_src/arduino_esp32/media/boards/HandbitPinA.jpg
diff --git a/boards/default_src/arduino_esp32/media/handbit_pin_B.jpg b/boards/default_src/arduino_esp32/media/boards/HandbitPinB.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/handbit_pin_B.jpg
rename to boards/default_src/arduino_esp32/media/boards/HandbitPinB.jpg
diff --git a/boards/default_src/arduino_esp32/media/MixGo_pin_A.png b/boards/default_src/arduino_esp32/media/boards/MixGoPinA.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/MixGo_pin_A.png
rename to boards/default_src/arduino_esp32/media/boards/MixGoPinA.png
diff --git a/boards/default_src/arduino_esp32/media/MixGo_pin_B.png b/boards/default_src/arduino_esp32/media/boards/MixGoPinB.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/MixGo_pin_B.png
rename to boards/default_src/arduino_esp32/media/boards/MixGoPinB.png
diff --git a/boards/default_src/arduino_esp32/media/nodemcu_32s_pin.png b/boards/default_src/arduino_esp32/media/boards/NodeMCU32S.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/nodemcu_32s_pin.png
rename to boards/default_src/arduino_esp32/media/boards/NodeMCU32S.png
diff --git a/boards/default_src/arduino_esp32/media/PocketCard_A.jpg b/boards/default_src/arduino_esp32/media/boards/PocketCardA.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/PocketCard_A.jpg
rename to boards/default_src/arduino_esp32/media/boards/PocketCardA.jpg
diff --git a/boards/default_src/arduino_esp32/media/PocketCard_B.jpg b/boards/default_src/arduino_esp32/media/boards/PocketCardB.jpg
similarity index 100%
rename from boards/default_src/arduino_esp32/media/PocketCard_B.jpg
rename to boards/default_src/arduino_esp32/media/boards/PocketCardB.jpg
diff --git a/boards/default_src/arduino_esp32/media/PocketCard_pin.png b/boards/default_src/arduino_esp32/media/boards/PocketCardPin.png
similarity index 100%
rename from boards/default_src/arduino_esp32/media/PocketCard_pin.png
rename to boards/default_src/arduino_esp32/media/boards/PocketCardPin.png
diff --git a/boards/default_src/arduino_esp32/mixly-modules/loader.js b/boards/default_src/arduino_esp32/mixly-modules/loader.js
index c794e17f..97c8cef1 100644
--- a/boards/default_src/arduino_esp32/mixly-modules/loader.js
+++ b/boards/default_src/arduino_esp32/mixly-modules/loader.js
@@ -1,3 +1,4 @@
+import * as goog from 'goog';
import { Workspace, ContextMenu } from 'mixly';
import FSArduEsp32Handler from './fs-board-handler';
import { Msg } from 'blockly/core';
diff --git a/boards/default_src/arduino_esp32/origin/boards.json b/boards/default_src/arduino_esp32/origin/boards.json
index 307462cb..ed64a648 100644
--- a/boards/default_src/arduino_esp32/origin/boards.json
+++ b/boards/default_src/arduino_esp32/origin/boards.json
@@ -1060,7 +1060,7 @@
},
"Labplus mPython": {
"group": "ESP32",
- "xmlPath": "./xml/esp32.xml",
+ "xmlPath": "./xml/mpython.xml",
"key": "esp32:esp32:mPython",
"config": [
{
diff --git a/boards/default_src/arduino_esp32/origin/xml/esp32.xml b/boards/default_src/arduino_esp32/origin/xml/esp32.xml
index eca63dca..553687eb 100644
--- a/boards/default_src/arduino_esp32/origin/xml/esp32.xml
+++ b/boards/default_src/arduino_esp32/origin/xml/esp32.xml
@@ -3340,6 +3340,10 @@
+
+
+
+
diff --git a/boards/default_src/arduino_esp32/pins/pins.js b/boards/default_src/arduino_esp32/pins/pins.js
index 55238ce9..acddd458 100644
--- a/boards/default_src/arduino_esp32/pins/pins.js
+++ b/boards/default_src/arduino_esp32/pins/pins.js
@@ -283,6 +283,7 @@ pins["arduino_esp32"];
pins['Arduino HandBit'] =
pins['mPython'] =
+pins['Labplus mPython'] =
pins["esp32_handbit"];
pins['Arduino MixGo'] =
diff --git a/boards/default_src/arduino_esp8266/blocks/tools.js b/boards/default_src/arduino_esp8266/blocks/pinout.js
similarity index 71%
rename from boards/default_src/arduino_esp8266/blocks/tools.js
rename to boards/default_src/arduino_esp8266/blocks/pinout.js
index 31e6ecac..dd562859 100644
--- a/boards/default_src/arduino_esp8266/blocks/tools.js
+++ b/boards/default_src/arduino_esp8266/blocks/pinout.js
@@ -1,12 +1,12 @@
import * as Blockly from 'blockly/core';
-const TOOLS_HUE = "#555555";
+const PINOUT_HUE = '#555555';
export const esp8266_pin = {
init: function () {
this.appendDummyInput()
- .appendField(new Blockly.FieldImage(require('../media/ESP8266-NodeMCU.png'), 525, 346, "*"));
- this.setColour(TOOLS_HUE);
+ .appendField(new Blockly.FieldImage(require('../media/boards/NodeMCU.png'), 510, 346, '*'));
+ this.setColour(PINOUT_HUE);
this.setTooltip();
this.setHelpUrl();
}
@@ -15,8 +15,8 @@ export const esp8266_pin = {
export const wemos_d1_mini_pin = {
init: function () {
this.appendDummyInput()
- .appendField(new Blockly.FieldImage(require('../media/ESP8266-WeMos-D1-Mini.png'), 525, 264, "*"));
- this.setColour(TOOLS_HUE);
+ .appendField(new Blockly.FieldImage(require('../media/boards/WeMosD1Mini.png'), 510, 264, '*'));
+ this.setColour(PINOUT_HUE);
this.setTooltip();
this.setHelpUrl();
}
diff --git a/boards/default_src/arduino_esp8266/export.js b/boards/default_src/arduino_esp8266/export.js
index d987619f..82373897 100644
--- a/boards/default_src/arduino_esp8266/export.js
+++ b/boards/default_src/arduino_esp8266/export.js
@@ -1,8 +1,8 @@
import ArduinoESP8266Pins from './pins/pins';
import * as ArduinoESP8266EthernetBlocks from './blocks/ethernet';
-import * as ArduinoESP8266ToolsBlocks from './blocks/tools';
+import * as ArduinoESP8266PinoutBlocks from './blocks/pinout';
import * as ArduinoESP8266EthernetGenerators from './generators/ethernet';
-import * as ArduinoESP8266ToolsGenerators from './generators/tools';
+import * as ArduinoESP8266PinoutGenerators from './generators/pinout';
import ArduinoESP8266ZhHans from './language/zh-hans';
import ArduinoESP8266ZhHant from './language/zh-hant';
@@ -11,9 +11,9 @@ import ArduinoESP8266En from './language/en';
export {
ArduinoESP8266Pins,
ArduinoESP8266EthernetBlocks,
- ArduinoESP8266ToolsBlocks,
+ ArduinoESP8266PinoutBlocks,
ArduinoESP8266EthernetGenerators,
- ArduinoESP8266ToolsGenerators,
+ ArduinoESP8266PinoutGenerators,
ArduinoESP8266ZhHans,
ArduinoESP8266ZhHant,
ArduinoESP8266En
diff --git a/boards/default_src/arduino_esp8266/generators/tools.js b/boards/default_src/arduino_esp8266/generators/pinout.js
similarity index 100%
rename from boards/default_src/arduino_esp8266/generators/tools.js
rename to boards/default_src/arduino_esp8266/generators/pinout.js
diff --git a/boards/default_src/arduino_esp8266/index.js b/boards/default_src/arduino_esp8266/index.js
index 29e31fee..a27ff636 100644
--- a/boards/default_src/arduino_esp8266/index.js
+++ b/boards/default_src/arduino_esp8266/index.js
@@ -55,9 +55,9 @@ import {
import {
ArduinoESP8266Pins,
ArduinoESP8266EthernetBlocks,
- ArduinoESP8266ToolsBlocks,
+ ArduinoESP8266PinoutBlocks,
ArduinoESP8266EthernetGenerators,
- ArduinoESP8266ToolsGenerators,
+ ArduinoESP8266PinoutGenerators,
ArduinoESP8266ZhHans,
ArduinoESP8266ZhHant,
ArduinoESP8266En
@@ -107,7 +107,7 @@ Object.assign(
ArduinoAVRToolsBlocks,
ArduinoAVRVariablesBlocks,
ArduinoESP8266EthernetBlocks,
- ArduinoESP8266ToolsBlocks
+ ArduinoESP8266PinoutBlocks
);
Object.assign(
@@ -134,5 +134,5 @@ Object.assign(
ArduinoAVRToolsGenerators,
ArduinoAVRVariablesGenerators,
ArduinoESP8266EthernetGenerators,
- ArduinoESP8266ToolsGenerators
+ ArduinoESP8266PinoutGenerators
);
\ No newline at end of file
diff --git a/boards/default_src/arduino_esp8266/media/ESP8266-NodeMCU.png b/boards/default_src/arduino_esp8266/media/boards/NodeMCU.png
similarity index 100%
rename from boards/default_src/arduino_esp8266/media/ESP8266-NodeMCU.png
rename to boards/default_src/arduino_esp8266/media/boards/NodeMCU.png
diff --git a/boards/default_src/arduino_esp8266/media/ESP8266-WeMos-D1-Mini.png b/boards/default_src/arduino_esp8266/media/boards/WeMosD1Mini.png
similarity index 100%
rename from boards/default_src/arduino_esp8266/media/ESP8266-WeMos-D1-Mini.png
rename to boards/default_src/arduino_esp8266/media/boards/WeMosD1Mini.png