diff --git a/src/main/java/com/ardublock/translator/block/Esplora/Middle.java b/src/main/java/com/ardublock/translator/block/Esplora/Middle.java
new file mode 100644
index 00000000..0fdda68d
--- /dev/null
+++ b/src/main/java/com/ardublock/translator/block/Esplora/Middle.java
@@ -0,0 +1,27 @@
+package com.ardublock.translator.block.Esplora;
+
+import com.ardublock.translator.Translator;
+import com.ardublock.translator.block.TranslatorBlock;
+import com.ardublock.translator.block.exception.SocketNullException;
+import com.ardublock.translator.block.exception.SubroutineNotDeclaredException;
+
+
+public class Middle extends TranslatorBlock {
+
+ public Middle (Long blockId, Translator translator, String codePrefix, String codeSuffix, String label)
+ {
+ super(blockId, translator, codePrefix, codeSuffix, label);
+ }
+ //@Override
+ public String toCode() throws SocketNullException, SubroutineNotDeclaredException
+ {
+
+
+
+ String ret = "MIDDLE";
+
+ return codePrefix + ret + codeSuffix;
+
+ }
+
+}
diff --git a/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Click.java b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Click.java
new file mode 100644
index 00000000..4396b1fe
--- /dev/null
+++ b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Click.java
@@ -0,0 +1,29 @@
+package com.ardublock.translator.block.Esplora;
+
+import com.ardublock.translator.Translator;
+import com.ardublock.translator.block.TranslatorBlock;
+import com.ardublock.translator.block.exception.SocketNullException;
+import com.ardublock.translator.block.exception.SubroutineNotDeclaredException;
+
+
+public class Mouse_Click extends TranslatorBlock {
+
+ public Mouse_Click (Long blockId, Translator translator, String codePrefix, String codeSuffix, String label)
+ {
+ super(blockId, translator, codePrefix, codeSuffix, label);
+ }
+ //@Override
+ public String toCode() throws SocketNullException, SubroutineNotDeclaredException
+ {
+ String Click;
+ TranslatorBlock translatorBlock = this.getRequiredTranslatorBlockAtSocket(0);
+ Click = translatorBlock.toCode();
+
+ translator.addSetupCommand("Mouse.begin();");
+ String ret = "Mouse.click(MOUSE_"+Click+");\n";
+
+ return ret;
+
+ }
+
+}
diff --git a/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Press.java b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Press.java
new file mode 100644
index 00000000..16a3519a
--- /dev/null
+++ b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Press.java
@@ -0,0 +1,29 @@
+package com.ardublock.translator.block.Esplora;
+
+import com.ardublock.translator.Translator;
+import com.ardublock.translator.block.TranslatorBlock;
+import com.ardublock.translator.block.exception.SocketNullException;
+import com.ardublock.translator.block.exception.SubroutineNotDeclaredException;
+
+
+public class Mouse_Press extends TranslatorBlock {
+
+ public Mouse_Press (Long blockId, Translator translator, String codePrefix, String codeSuffix, String label)
+ {
+ super(blockId, translator, codePrefix, codeSuffix, label);
+ }
+ //@Override
+ public String toCode() throws SocketNullException, SubroutineNotDeclaredException
+ {
+ String Click;
+ TranslatorBlock translatorBlock = this.getRequiredTranslatorBlockAtSocket(0);
+ Click = translatorBlock.toCode();
+
+ translator.addSetupCommand("Mouse.begin();");
+ String ret = "Mouse.press(MOUSE_"+Click+");\n";
+
+ return ret;
+
+ }
+
+}
diff --git a/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Release.java b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Release.java
new file mode 100644
index 00000000..d4287a8c
--- /dev/null
+++ b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_Release.java
@@ -0,0 +1,29 @@
+package com.ardublock.translator.block.Esplora;
+
+import com.ardublock.translator.Translator;
+import com.ardublock.translator.block.TranslatorBlock;
+import com.ardublock.translator.block.exception.SocketNullException;
+import com.ardublock.translator.block.exception.SubroutineNotDeclaredException;
+
+
+public class Mouse_Release extends TranslatorBlock {
+
+ public Mouse_Release (Long blockId, Translator translator, String codePrefix, String codeSuffix, String label)
+ {
+ super(blockId, translator, codePrefix, codeSuffix, label);
+ }
+ //@Override
+ public String toCode() throws SocketNullException, SubroutineNotDeclaredException
+ {
+ String Click;
+ TranslatorBlock translatorBlock = this.getRequiredTranslatorBlockAtSocket(0);
+ Click = translatorBlock.toCode();
+
+ translator.addSetupCommand("Mouse.begin();");
+ String ret = "Mouse.release(MOUSE_"+Click+");\n";
+
+ return ret;
+
+ }
+
+}
diff --git a/src/main/java/com/ardublock/translator/block/Esplora/Mouse_isPressed.java b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_isPressed.java
new file mode 100644
index 00000000..7798912e
--- /dev/null
+++ b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_isPressed.java
@@ -0,0 +1,29 @@
+package com.ardublock.translator.block.Esplora;
+
+import com.ardublock.translator.Translator;
+import com.ardublock.translator.block.TranslatorBlock;
+import com.ardublock.translator.block.exception.SocketNullException;
+import com.ardublock.translator.block.exception.SubroutineNotDeclaredException;
+
+
+public class Mouse_isPressed extends TranslatorBlock {
+
+ public Mouse_isPressed (Long blockId, Translator translator, String codePrefix, String codeSuffix, String label)
+ {
+ super(blockId, translator, codePrefix, codeSuffix, label);
+ }
+ //@Override
+ public String toCode() throws SocketNullException, SubroutineNotDeclaredException
+ {
+ String Click;
+ TranslatorBlock translatorBlock = this.getRequiredTranslatorBlockAtSocket(0);
+ Click = translatorBlock.toCode();
+
+ translator.addSetupCommand("Mouse.begin();");
+ String ret = "Mouse.isPressed(MOUSE_"+Click+");\n";
+
+ return codePrefix + ret + codeSuffix;
+
+ }
+
+}
diff --git a/src/main/java/com/ardublock/translator/block/Esplora/Mouse_move.java b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_move.java
new file mode 100644
index 00000000..adba523f
--- /dev/null
+++ b/src/main/java/com/ardublock/translator/block/Esplora/Mouse_move.java
@@ -0,0 +1,32 @@
+package com.ardublock.translator.block.Esplora;
+
+import com.ardublock.translator.Translator;
+import com.ardublock.translator.block.TranslatorBlock;
+import com.ardublock.translator.block.exception.SocketNullException;
+import com.ardublock.translator.block.exception.SubroutineNotDeclaredException;
+
+
+public class Mouse_move extends TranslatorBlock {
+
+ public Mouse_move (Long blockId, Translator translator, String codePrefix, String codeSuffix, String label)
+ {
+ super(blockId, translator, codePrefix, codeSuffix, label);
+ }
+ //@Override
+ public String toCode() throws SocketNullException, SubroutineNotDeclaredException
+ {
+ String Xaxis;
+ String Yaxis;
+ TranslatorBlock translatorBlock = this.getRequiredTranslatorBlockAtSocket(0);
+ Xaxis = translatorBlock.toCode();
+ translatorBlock = this.getRequiredTranslatorBlockAtSocket(1);
+ Yaxis = translatorBlock.toCode();
+
+ translator.addSetupCommand("Mouse.begin();");
+ String ret = "Mouse.move("+Xaxis+","+Yaxis+",O);\n";
+
+ return ret;
+
+ }
+
+}
diff --git a/src/main/resources/com/ardublock/block/ardublock.properties b/src/main/resources/com/ardublock/block/ardublock.properties
index 4933f06c..88cecfa3 100644
--- a/src/main/resources/com/ardublock/block/ardublock.properties
+++ b/src/main/resources/com/ardublock/block/ardublock.properties
@@ -1115,11 +1115,11 @@ bd.Esplora=Arduino Esplora
bg.Esplora_Led=Led
bg.Esplora_Led.description=Led
bg.Esplora_AccelerationX=Acc X
-bg.Esplora_AccelerationX.description=
+bg.Esplora_AccelerationX.description=Acc X
bg.Esplora_AccelerationY=Acc Y
-bg.Esplora_AccelerationY.description=
+bg.Esplora_AccelerationY.description=Acc Y
bg.Esplora_AccelerationZ=Acc Z
-bg.Esplora_AccelerationZ.description=
+bg.Esplora_AccelerationZ.description=Acc Z
bg.Esplora_JoystickY=Y Joystick
bg.Esplora_JoystickY.description=Value between -512 and 512
bg.Esplora_JoystickX=X Joystick
@@ -1127,11 +1127,11 @@ bg.Esplora_JoystickX.description=Value between -512 and 512
bg.Esplora_JoystickSwitch=Joystick Center Switch
bg.Esplora_JoystickSwitch.description=LOW when pressed, HIGH when not pressed.
bg.Esplora_Slider=Linear Potentiometre
-bg.Esplora_Slider.description=
+bg.Esplora_Slider.description=Linear Potentiometre
bg.Esplora_Microphone=Microphone
-bg.Esplora_Microphone.description=
+bg.Esplora_Microphone.description=Microphone
bg.Esplora_LightSensor=Light Sensor
-bg.Esplora_LightSensor.description=
+bg.Esplora_LightSensor.description=Light Sensor
bg.Esplora_tone=Tone
bg.Esplora_tone.description=
bg.Esplora_notone=No Tone
@@ -1145,9 +1145,22 @@ bg.Esplora_LEFT=LEFT
bg.Esplora_UP=UP
bg.Esplora_RIGHT=RIGHT
bg.Esplora_JoystickSwitch2=Joystick Switch
-bg.Esplora_JoystickSwitch2.description=
+bg.Esplora_JoystickSwitch2.description=Joystick Switch
bg.Esplora_Switch=Switch
-bg.Esplora_Switch.description=
+bg.Esplora_Switch.description=Switch
+bg.Esplora_RIGHT2=RIGHT
+bg.Esplora_LEFT2=LEFT
+bg.Esplora_MIDDLE=MIDDLE
+bg.Esplora_Mouse_Click=Click Mouse
+bg.Esplora_Mouse_Click.description=Click Mouse
+bg.Esplora_Mouse_Press=Press Mouse
+bg.Esplora_Mouse_Press.description=Press Mouse
+bg.Esplora_Mouse_Release=Release Mouse
+bg.Esplora_Mouse_Release.description=Release Mouse
+bg.Esplora_Mouse_isPressed=Mouse Is Pressed
+bg.Esplora_Mouse_isPressed.description=Mouse Is Pressed
+bg.Esplora_Mouse_move=Mouse Move
+bg.Esplora_Mouse_move.description=Mouse Move
bg.ls_10mmLEDModule.description=10mm Blue/Green/Yellow/Red LED Module
bg.ls_5mmLEDModule.description=5mm Blue/Green/Yellow/Red LED Module
diff --git a/src/main/resources/com/ardublock/block/ardublock.xml b/src/main/resources/com/ardublock/block/ardublock.xml
index be38827a..63213e50 100644
--- a/src/main/resources/com/ardublock/block/ardublock.xml
+++ b/src/main/resources/com/ardublock/block/ardublock.xml
@@ -6888,7 +6888,80 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Esplora_Mouse_Click
+
+
+
+
+
+
+
+
+
+
+ Esplora_Mouse_Press
+
+
+
+
+
+
+
+
+
+
+ Esplora_Mouse_Release
+
+
+
+
+
+
+
+
+
+
+ Esplora_Mouse_isPressed
+
+
+
+
+
+
+
+
+
+
+
+ Esplora_Mouse_move
+
+
+
+
+
+
+
+
+
+
+
@@ -10085,6 +10158,16 @@
Esplora_UP
Esplora_RIGHT
+
+ Esplora_LEFT2
+ Esplora_RIGHT2
+ Esplora_MIDDLE
+
+
+ Esplora_Mouse_Click
+ Esplora_Mouse_Press
+ Esplora_Mouse_Release
+
Midi_C
Midi_CS
@@ -10463,6 +10546,9 @@
Esplora_JoystickX
Esplora_JoystickSwitch
Esplora_AccelerationX
+ Esplora_Mouse_Click
+ Esplora_Mouse_isPressed
+ Esplora_Mouse_move
ada_dc_motor_fwd
diff --git a/src/main/resources/com/ardublock/block/ardublock_fr.properties b/src/main/resources/com/ardublock/block/ardublock_fr.properties
index 6cf4f981..32d7a1ad 100644
--- a/src/main/resources/com/ardublock/block/ardublock_fr.properties
+++ b/src/main/resources/com/ardublock/block/ardublock_fr.properties
@@ -729,6 +729,14 @@ bg.Esplora_UP=Haut
bg.Esplora_RIGHT=Droite
bg.Esplora_JoystickSwitch2=Joystick Interrupteur
bg.Esplora_Switch=Interrupteur
+bg.Esplora_RIGHT2=Droite
+bg.Esplora_LEFT2=Gauche
+bg.Esplora_MIDDLE=Milieu
+bg.Esplora_Mouse_Click=Clique Bouton de la souris
+bg.Esplora_Mouse_Press=Appuyer Bouton de la souris
+bg.Esplora_Mouse_Release=Relacher Bouton de la souris
+bg.Esplora_Mouse_isPressed=Bouton de souris appuyé \u00e0
+bg.Esplora_Mouse_move=D\u00e9placer souris
bg.ls_10mmLEDModule.description=Module DEL 10mm bleu/vert/jaune/rouge
bg.ls_5mmLEDModule.description=Module DEL 5mm bleu/vert/jaune/rouge
diff --git a/src/main/resources/com/ardublock/block/block-mapping.properties b/src/main/resources/com/ardublock/block/block-mapping.properties
index eb7f3283..d75db0c2 100644
--- a/src/main/resources/com/ardublock/block/block-mapping.properties
+++ b/src/main/resources/com/ardublock/block/block-mapping.properties
@@ -563,6 +563,15 @@ Esplora_UP=com.ardublock.translator.block.Esplora.Up
Esplora_RIGHT=com.ardublock.translator.block.Esplora.Right
Esplora_JoystickSwitch2=com.ardublock.translator.block.Esplora.JoystickSwitch2
Esplora_Switch=com.ardublock.translator.block.Esplora.Switch
+Esplora_LEFT2=com.ardublock.translator.block.Esplora.Left
+Esplora_RIGHT2=com.ardublock.translator.block.Esplora.Right
+Esplora_MIDDLE=com.ardublock.translator.block.Esplora.Middle
+Esplora_Mouse_Click=com.ardublock.translator.block.Esplora.Mouse_Click
+Esplora_Mouse_Press=com.ardublock.translator.block.Esplora.Mouse_Press
+Esplora_Mouse_Release=com.ardublock.translator.block.Esplora.Mouse_Release
+Esplora_Mouse_isPressed=com.ardublock.translator.block.Esplora.Mouse_isPressed
+Esplora_Mouse_move=com.ardublock.translator.block.Esplora.Mouse_move
+
#Panda
panda_i0=com.ardublock.translator.block.panda.PandaInputPortBlock
panda_i1=com.ardublock.translator.block.panda.PandaInputPortBlock