From 0c8d1eb1361a6926926292c9b5dce87df3571dee Mon Sep 17 00:00:00 2001
From: buehlera <buehlera@tec-nb-buehlera>
Date: Thu, 5 Nov 2020 15:50:56 +0100
Subject: [PATCH] fixed error with higlighted blocks

---
 src/main/java/com/ardublock/ArduBlockTool.java        |  1 -
 .../translator/block/control/SketchBlock.java         |  2 +-
 src/main/java/com/ardublock/ui/OpenblocksFrame.java   | 11 +++++++++++
 .../ui/listener/ArdublockWorkspaceListener.java       |  1 +
 .../com/ardublock/ui/listener/NewButtonListener.java  |  5 +++--
 .../com/ardublock/ui/listener/OpenButtonListener.java |  5 +++--
 6 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/ardublock/ArduBlockTool.java b/src/main/java/com/ardublock/ArduBlockTool.java
index 0042aaf..76a2e0a 100644
--- a/src/main/java/com/ardublock/ArduBlockTool.java
+++ b/src/main/java/com/ardublock/ArduBlockTool.java
@@ -94,7 +94,6 @@ public class ArduBlockTool implements Tool, OpenblocksFrameListener
 		if(upload) { //added by letsgoING
 			ArduBlockTool.editor.handleExport(false);
 		}
-		
 	}
 	
 	private String getArduinoVersion()
diff --git a/src/main/java/com/ardublock/translator/block/control/SketchBlock.java b/src/main/java/com/ardublock/translator/block/control/SketchBlock.java
index b2a2b16..ca66fa2 100644
--- a/src/main/java/com/ardublock/translator/block/control/SketchBlock.java
+++ b/src/main/java/com/ardublock/translator/block/control/SketchBlock.java
@@ -164,7 +164,7 @@ public class SketchBlock extends TranslatorBlock
 		mainVec.add(new CodeWhile(boolTrue, whileVec));
 		SimCodeFunction main = new SimCodeFunction("main", mainVec);
 
-		System.out.println("Add new Functions");
+		//System.out.println("Add new Functions");
 		
 		sim.addFunctionsCode(setupFunc);
 		sim.addFunctionsCode(loopFunc);
diff --git a/src/main/java/com/ardublock/ui/OpenblocksFrame.java b/src/main/java/com/ardublock/ui/OpenblocksFrame.java
index 03f5c17..c972d8e 100644
--- a/src/main/java/com/ardublock/ui/OpenblocksFrame.java
+++ b/src/main/java/com/ardublock/ui/OpenblocksFrame.java
@@ -340,6 +340,10 @@ public class OpenblocksFrame extends JFrame
 		ActionListener modeBasicButtonListener = new ActionListener () {
 			public void actionPerformed(ActionEvent e) {
 				//get current zoomLevel
+				
+				//remove highlights
+				context.resetHightlightBlock();
+				
 				int currentWorkspaceZoom = zoomSlider.getValue();
 		        try {
 		        	WorkspaceController workspaceController = context.getWorkspaceController();
@@ -370,6 +374,10 @@ public class OpenblocksFrame extends JFrame
 		JButton modeProButton = new JButton(uiMessageBundle.getString("ardublock.ui.mode.expert"));
 		ActionListener modeProButtonListener = new ActionListener () {
 			public void actionPerformed(ActionEvent e) {
+				
+				//remove highlights
+				context.resetHightlightBlock();
+				
 				//get current zoomLevel
 				int currentWorkspaceZoom = zoomSlider.getValue();
 		        try {
@@ -401,6 +409,9 @@ public class OpenblocksFrame extends JFrame
 		JButton modeSimButton = new JButton(uiMessageBundle.getString("ardublock.ui.mode.sim"));
 		ActionListener modeSimButtonListener = new ActionListener () {
 			public void actionPerformed(ActionEvent e) {
+				
+				//remove highlights
+				context.resetHightlightBlock();
 				//get current zoomLevel
 				int currentWorkspaceZoom = zoomSlider.getValue();
 				try {
diff --git a/src/main/java/com/ardublock/ui/listener/ArdublockWorkspaceListener.java b/src/main/java/com/ardublock/ui/listener/ArdublockWorkspaceListener.java
index 286149f..61cdbb0 100644
--- a/src/main/java/com/ardublock/ui/listener/ArdublockWorkspaceListener.java
+++ b/src/main/java/com/ardublock/ui/listener/ArdublockWorkspaceListener.java
@@ -28,6 +28,7 @@ public class ArdublockWorkspaceListener implements WorkspaceListener
 				frame.setTitle(title);
 			}
 		}
+
 		context.resetHightlightBlock();
 		
 		
diff --git a/src/main/java/com/ardublock/ui/listener/NewButtonListener.java b/src/main/java/com/ardublock/ui/listener/NewButtonListener.java
index ff5fb5c..c89f882 100644
--- a/src/main/java/com/ardublock/ui/listener/NewButtonListener.java
+++ b/src/main/java/com/ardublock/ui/listener/NewButtonListener.java
@@ -9,16 +9,17 @@ import com.ardublock.ui.OpenblocksFrame;
 public class NewButtonListener implements ActionListener
 {
 	private OpenblocksFrame parentFrame;
+	private Context context;
 	
 	public NewButtonListener(OpenblocksFrame frame)
 	{
-		Context.getContext();
-		
+		context = Context.getContext();
 		this.parentFrame = frame;
 	}
 	
 	public void actionPerformed(ActionEvent e)
 	{
+		context.resetHightlightBlock();
 		parentFrame.doNewArduBlockFile();
 	}
 
diff --git a/src/main/java/com/ardublock/ui/listener/OpenButtonListener.java b/src/main/java/com/ardublock/ui/listener/OpenButtonListener.java
index e409acb..a6c1c4f 100644
--- a/src/main/java/com/ardublock/ui/listener/OpenButtonListener.java
+++ b/src/main/java/com/ardublock/ui/listener/OpenButtonListener.java
@@ -9,16 +9,17 @@ import com.ardublock.ui.OpenblocksFrame;
 public class OpenButtonListener implements ActionListener
 {
 	private OpenblocksFrame parentFrame;
+	private Context context;
 	
 	public OpenButtonListener(OpenblocksFrame frame)
 	{
-		Context.getContext();
-		
+		context = Context.getContext();
 		this.parentFrame = frame;
 	}
 	
 	public void actionPerformed(ActionEvent e)
 	{
+		context.resetHightlightBlock();
 		parentFrame.doOpenArduBlockFile();
 	}
 
-- 
GitLab