From 9cebaa900f8ca8535da1813d20aa98da48b826db Mon Sep 17 00:00:00 2001
From: Leon Dieter <Leon Dieter@DESKTOP-L4JC8N4>
Date: Tue, 20 Apr 2021 18:37:50 +0200
Subject: [PATCH] minor changes

---
 UML.dia                                       | Bin 19992 -> 20127 bytes
 .../ardublock/simulator/Simulator.java        |  20 +++---
 .../ardublock/simulator/view/GUI.java         |  61 ++++++++++--------
 .../simulator/view/modules/ArduinoUno.java    |  10 ++-
 .../simulator/view/modules/Button.java        |  27 +++++---
 .../simulator/view/modules/Modul.java         |   9 +--
 .../simulator/view/modules/Poti.java          |  10 ++-
 .../ardublock/simulator/view/modules/RGB.java |  17 +++--
 8 files changed, 95 insertions(+), 59 deletions(-)

diff --git a/UML.dia b/UML.dia
index 6f33a4c400cee424817c34093c0c7f55ad92a964..c30ba857e61c2a94a2541f847d2e4ae08143bfa3 100644
GIT binary patch
literal 20127
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

literal 19992
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

diff --git a/src/tec/letsgoing/ardublock/simulator/Simulator.java b/src/tec/letsgoing/ardublock/simulator/Simulator.java
index 9a75e78..1dd9344 100644
--- a/src/tec/letsgoing/ardublock/simulator/Simulator.java
+++ b/src/tec/letsgoing/ardublock/simulator/Simulator.java
@@ -40,14 +40,17 @@ import tec.letsgoing.ardublock.simulator.view.GUI;
  * 
  */
 public class Simulator implements Runnable, ActionListener{
+	
+	private static final int X_SCALE              = 800;
+	private static final int Y_SCALE              = 800;
+	
 	private static Simulator instance;
 	private Arduino arduino;
 	private GUI gui;
 	private Thread guiThread;
 	private Thread simuThread;
 	private Vector<SimCodeFunction> functionsCode = new Vector<SimCodeFunction>();
-	private final int xscale = 800;
-	private final int yscale = 800;
+
 	/**
 	 * Privater Konstruktor der Klasse Simulator<br>
 	 * Die Klasse ist als Singelton geschrieben, daher sollte diese Konstruktor nie
@@ -67,7 +70,7 @@ public class Simulator implements Runnable, ActionListener{
 		} catch (UnsupportedLookAndFeelException e) {
 			e.printStackTrace();
 		}
-		createSubClasses(xscale, yscale);
+		createSubClasses(X_SCALE, Y_SCALE, null);
 		
 	}
 
@@ -95,8 +98,8 @@ public class Simulator implements Runnable, ActionListener{
 	 * 
 	 * @return true
 	 */
-	private boolean createSubClasses(int _xscale, int _yscale) {
-		gui = new GUI(this, _xscale, _yscale);
+	private boolean createSubClasses(int _xscale, int _yscale, Point _windowLocation) {
+		gui = new GUI(this, _xscale, _yscale, _windowLocation);
 		arduino = new Arduino(gui);
 		gui.connectPins(arduino);
 
@@ -179,9 +182,8 @@ public class Simulator implements Runnable, ActionListener{
 		Point locationWindow = gui.getLocation();
 		
 		
-//		int widthWindow  = ((int)((gui.getWidth() * 1.0975) - 13.307));
-//		int heightWindow = ((int)((gui.getHeight() * 1.2709) - 174.77));
 		
+		//Bei unterschiedlicher
 		//Die bisherige Größe des Fenster wird abgespeichert
 		int widthWindow = gui.getWidth();
 		int heightWindow = gui.getHeight();
@@ -191,9 +193,9 @@ public class Simulator implements Runnable, ActionListener{
 
 		
 		//Die neue Objekte werden mit den gespeicherten Werten erzeugt
-		createSubClasses(widthWindow, heightWindow);		
+		createSubClasses(widthWindow, heightWindow, locationWindow);		
 		//die GUI wird an die gespeicherte Position verschoben
-		gui.setLocation(locationWindow);
+		
 
 		
 		for (SimCodeFunction function : functionsCode) {
diff --git a/src/tec/letsgoing/ardublock/simulator/view/GUI.java b/src/tec/letsgoing/ardublock/simulator/view/GUI.java
index d721bda..5e98f8f 100644
--- a/src/tec/letsgoing/ardublock/simulator/view/GUI.java
+++ b/src/tec/letsgoing/ardublock/simulator/view/GUI.java
@@ -49,13 +49,23 @@ import tec.letsgoing.ardublock.simulator.view.modules.RGB;
  *
  */
 public class GUI extends JFrame implements Runnable, ActionListener {
+	private static final int SCALING_OFFSET    = 100;  //wird für die Skalierung des Arduinos benötigt
+	private static final int UPDATE_GAP        = 10;   //Legt fest wie groß eine Fenstergrößenänderung sein muss um eine Fensteraktualisierungen durchzuführen
 	private static final long serialVersionUID = 1L;
-	private static final int MAXIMUM_MESSAGES = 100; // Anzahl der Seriellen Nachrichten
-	private Vector<String> serialprint = new Vector<String>();
-	private Modul[] modules = new Modul[4];
-	private volatile boolean stopFlag = false;
-	private JTextArea serialLog = new JTextArea();
-	private JPanel botControlPanel, topControlPanel, controlPanel, panel, topPanel;
+	private static final int MAXIMUM_MESSAGES  = 100;  // Anzahl der Seriellen Nachrichten
+	private static final int WINDOW_SIZE_MIN_X = 200;
+	private static final int WINDOW_SIZE_MIN_Y = 200;
+	
+	private Vector<String> serialprint         = new Vector<String>();
+	private Modul[] modules                    = new Modul[4];
+	private volatile boolean stopFlag          = false;
+	private JTextArea serialLog                = new JTextArea();
+	private JPanel botControlPanel;
+	private JPanel topControlPanel;
+	private JPanel controlPanel;
+	private JPanel panel;
+	private JPanel topPanel;
+	private JPanel modulPanel;
 	private JButton goButton;
 	private JButton stopButton;
 	private JButton reloadButton;
@@ -63,13 +73,11 @@ public class GUI extends JFrame implements Runnable, ActionListener {
 	private JButton clearButton;
 	private JCheckBox checkBox;
 	private JScrollPane scrollPane;
+	private Container mainPane;
 	private int xscale;
 	private int yscale;
-	private JPanel modulPanel;
-	private Container mainPane;
-	private int windowHeight, windowWidth;
-	private final int scalingOffset = 100; //wird für die Skalierung des Arduinos benötigt
-	private final int updateGap = 10; //Legt fest wie groß eine Fenstergrößenänderung sein muss um eine Fensteraktualisierungen durchzuführen
+	private int windowHeight;
+	private int windowWidth;
 	
 
 	/**
@@ -77,18 +85,18 @@ public class GUI extends JFrame implements Runnable, ActionListener {
 	 * 
 	 * @param simu Instanz des Simulators
 	 */
-	public GUI(Simulator simu, int _xscale, int _yscale) {
+	public GUI(Simulator simu, int _xscale, int _yscale, Point _windowLocation) {
 		super("ArduBlock Simulator");
 	
 		
 		//Das Fenster wird gemäß des kleineren Seitenverhältnisses erstellt
-		if(_xscale <= _yscale - scalingOffset) {					
+		if(_xscale <= _yscale - SCALING_OFFSET) {					
 			xscale = _xscale;
 			yscale = _xscale;					
 		}								
 		else {						
-			xscale = _yscale - scalingOffset;
-			yscale = _yscale - scalingOffset;						
+			xscale = _yscale - SCALING_OFFSET;
+			yscale = _yscale - SCALING_OFFSET;						
 		}	
 		
 
@@ -97,7 +105,7 @@ public class GUI extends JFrame implements Runnable, ActionListener {
 		
 		// Konstruktor der Module
 				modules[0] = new RGB(new ImageIcon(getToolkit()
-						.getImage(GUI.class.getResource("/tec/letsgoing/ardublock/simulator/img/PM31_RGB_LED.png"))), xscale, yscale);
+								.getImage(GUI.class.getResource("/tec/letsgoing/ardublock/simulator/img/PM31_RGB_LED.png"))), xscale, yscale);
 				modules[1] = new Button(
 						new ImageIcon(getToolkit()
 								.getImage(GUI.class.getResource("/tec/letsgoing/ardublock/simulator/img/PM26_Taster.png"))),
@@ -146,12 +154,15 @@ public class GUI extends JFrame implements Runnable, ActionListener {
 				//mainPane.add(createControlPanel(simu), BorderLayout.EAST);
 				mainPane.add(createSerialLog(), BorderLayout.PAGE_END);
 				
-				//Die Fenstergröße wird mit der dem Konstruktor übergebenen Größe festgelegt
-				super.setSize(_xscale, _yscale);
+				if(_windowLocation != null) {
+					setLocation(_windowLocation);
+				}
+				//Die Fenstergröße wird mit der dem Konstruktor übergebenen Größe festgelegt				
+				setSize(_xscale, _yscale);
 				//Eine Minimum Fenstergröße wird festgelegt
-				super.setMinimumSize(new Dimension(200, 200));
+				setMinimumSize(new Dimension(WINDOW_SIZE_MIN_X, WINDOW_SIZE_MIN_Y));
 				// this.setLocation(-1300, 0); //Möglichkeit die Renderingposition festzulegen
-				super.setVisible(true);
+				setVisible(true);
 				//Eine Aktualisierung der GUI gemäß den übergebenen Seitenverhältnissen wird aufgerufen.
 				updateGUI(xscale, yscale);
 			
@@ -161,12 +172,10 @@ public class GUI extends JFrame implements Runnable, ActionListener {
 			@Override
 			public void componentResized(ComponentEvent e) {
 					
-				
-				
 
 					//Das Fenster soll erst dann upgedatet werden wenn eine Größenänderung größer 5 stattgefunden hat
 					//um zu verhindern dass die update Funktion durch ein zu häufiges Aufrufen das Programm aufhängt.
-					if((Math.abs(windowHeight - getHeight()) > updateGap) || (Math.abs(windowWidth - getWidth()) > updateGap)) {
+					if((Math.abs(windowHeight - getHeight()) > UPDATE_GAP) || (Math.abs(windowWidth - getWidth()) > UPDATE_GAP)) {
 							
 							//Die aktuelle Fenstergröße wird abgespeichert
 							windowHeight = getHeight();
@@ -174,13 +183,13 @@ public class GUI extends JFrame implements Runnable, ActionListener {
 
 							
 							//GUI wird nur gleichmäßig skaliert mit den Größen des kleineren Seitenverhätlnisses
-							if(windowWidth <= windowHeight - scalingOffset) {					
+							if(windowWidth <= windowHeight - SCALING_OFFSET) {					
 								xscale = windowWidth;
 								yscale = windowWidth;					
 							}								
 							else {						
-								xscale = windowHeight - scalingOffset;
-								yscale = windowHeight - scalingOffset;						
+								xscale = windowHeight - SCALING_OFFSET;
+								yscale = windowHeight - SCALING_OFFSET;						
 							}		
 							
 								//GUI wird upgedatet
diff --git a/src/tec/letsgoing/ardublock/simulator/view/modules/ArduinoUno.java b/src/tec/letsgoing/ardublock/simulator/view/modules/ArduinoUno.java
index ecd5835..8547bff 100644
--- a/src/tec/letsgoing/ardublock/simulator/view/modules/ArduinoUno.java
+++ b/src/tec/letsgoing/ardublock/simulator/view/modules/ArduinoUno.java
@@ -29,9 +29,13 @@ import tec.letsgoing.ardublock.simulator.view.GUI;
 public class ArduinoUno extends Modul {
 	Arduino arduino;
 	private boolean ledOn;
-	private int led13 = 0;
-	private JLabel labelPower, chiplabel, label13, labelButton;
-	private ImageIcon chipIcon, chipIcon_temp;
+	private int led13                   = 0;
+	private JLabel labelPower;
+	private JLabel chiplabel;
+	private JLabel label13;
+	private JLabel labelButton;
+	private ImageIcon chipIcon;
+	private ImageIcon chipIcon_temp;
 	private JButton button;
 
 	
diff --git a/src/tec/letsgoing/ardublock/simulator/view/modules/Button.java b/src/tec/letsgoing/ardublock/simulator/view/modules/Button.java
index 6f88c15..1d43062 100644
--- a/src/tec/letsgoing/ardublock/simulator/view/modules/Button.java
+++ b/src/tec/letsgoing/ardublock/simulator/view/modules/Button.java
@@ -27,22 +27,33 @@ import tec.letsgoing.ardublock.simulator.arduino.Pin;
  *
  */
 public class Button extends Modul implements ActionListener, MouseListener {
-	private int[] lastState = { 0, 0, 0 };
-	private ImageIcon iconOff, iconOn, chipIcon, chipIcon_temp, iconOff_temp, iconOn_temp;
+	private int[] lastState            = { 0, 0, 0 };
+	private ImageIcon iconOff;
+	private ImageIcon iconOn;
+	private ImageIcon chipIcon;
+	private ImageIcon chipIcon_temp;
+	private ImageIcon iconOff_temp;
+	private ImageIcon iconOn_temp;
 	//private JToggleButton but1, but2, but3;
-	private JLabel chiplabel, label1, label2, label3;
-	private LockButton but1, but2, but3;
+	private JLabel chiplabel;
+	private JLabel label1;
+	private JLabel label2;
+	private JLabel label3;
+	private LockButton but1;
+	private LockButton but2;
+	private LockButton but3;
+	
 
 	
 	
 	
 	private class LockButton extends JButton {
 		private static final long serialVersionUID = 1L;
-		private boolean clicked = false;
-		private boolean locked  = false;
+		private boolean clicked                    = false;
+		private boolean locked                     = false;
 		private int pin;
-		private int value = 0;
-		private static final String BTN_TOOLTIP = "Linksklick -> Taster | Rechtsklick -> Schalter";
+		private int value                          = 0;
+		private static final String BTN_TOOLTIP    = "Linksklick -> Taster | Rechtsklick -> Schalter";
 
 		LockButton(int _pin){//ImageIcon _iconOn, ImageIcon _iconOff){
 			pin = _pin;
diff --git a/src/tec/letsgoing/ardublock/simulator/view/modules/Modul.java b/src/tec/letsgoing/ardublock/simulator/view/modules/Modul.java
index 18c9b59..beaf002 100644
--- a/src/tec/letsgoing/ardublock/simulator/view/modules/Modul.java
+++ b/src/tec/letsgoing/ardublock/simulator/view/modules/Modul.java
@@ -20,12 +20,13 @@ import tec.letsgoing.ardublock.simulator.arduino.Pin;
  *
  */
 public abstract class Modul implements Observer {
-	private boolean active = true;
+	private boolean active           = true;
 	private Point position;
-	protected Vector<Pin> pins = new Vector<Pin>();
+	protected Vector<Pin> pins       = new Vector<Pin>();
 	protected JLayeredPane layerpane = new JLayeredPane();
-	protected Vector<Point> pinPos = new Vector<Point>();
-	protected int xscale, yscale;
+	protected Vector<Point> pinPos   = new Vector<Point>();
+	protected int xscale; 
+	protected int yscale;
 
 	public void setState(boolean State) {
 		active = State;
diff --git a/src/tec/letsgoing/ardublock/simulator/view/modules/Poti.java b/src/tec/letsgoing/ardublock/simulator/view/modules/Poti.java
index 496c10f..72af13c 100644
--- a/src/tec/letsgoing/ardublock/simulator/view/modules/Poti.java
+++ b/src/tec/letsgoing/ardublock/simulator/view/modules/Poti.java
@@ -30,10 +30,14 @@ import tec.letsgoing.ardublock.simulator.view.GUI;
  *
  */
 public class Poti extends Modul implements ChangeListener, MouseWheelListener {
-	int value = 0;
+	int value                                 = 0;
 	private JSlider slider;
-	private JLabel chiplabel, sliderlabel1, sliderlabel2, sliderlabel3;
-	private ImageIcon chipIcon, chipIcon_temp;
+	private JLabel chiplabel;
+	private JLabel sliderlabel1;
+	private JLabel sliderlabel2;
+	private JLabel sliderlabel3;
+	private ImageIcon chipIcon;
+	private ImageIcon chipIcon_temp;
 	private JPanel sliderPanel;
 	private Hashtable<Integer, JLabel> labelTable;
 
diff --git a/src/tec/letsgoing/ardublock/simulator/view/modules/RGB.java b/src/tec/letsgoing/ardublock/simulator/view/modules/RGB.java
index 9627774..dbd6b04 100644
--- a/src/tec/letsgoing/ardublock/simulator/view/modules/RGB.java
+++ b/src/tec/letsgoing/ardublock/simulator/view/modules/RGB.java
@@ -25,12 +25,17 @@ import tec.letsgoing.ardublock.simulator.view.GUI;
  *
  */
 public class RGB extends Modul {
-	private int redValue = 0;
-	private int greenValue = 0;
-	private int blueValue = 0;
-	private int transparancy, tredValue, tgreenValue, tblueValue;
-	private JLabel chiplabel, ledlabel;
-	private ImageIcon chipIcon, chipIcon_temp;
+	private int redValue              = 0;
+	private int greenValue            = 0;
+	private int blueValue             = 0;
+	private int transparancy;
+	private int tredValue;
+	private int tgreenValue;
+	private int tblueValue;
+	private JLabel chiplabel;
+	private JLabel ledlabel;
+	private ImageIcon chipIcon;
+	private ImageIcon chipIcon_temp;
 
 
 	public RGB(ImageIcon _icon, int _xscale, int _yscale) {
-- 
GitLab