Introduce FrontendSpecificCircle

This commit is contained in:
2025-05-26 16:30:00 +02:00
parent cf6bcd8498
commit ef3b0fce5f
8 changed files with 22 additions and 14 deletions

View File

@ -1,6 +1,7 @@
package fabrik.simulator.pic16f84;
import fabrik.simulator.pic16f84.frontendspecifics.Circle;
import fabrik.simulator.pic16f84.frontendspecifics.FrontendSpecificToggleButtonGroup;
import fabrik.simulator.pic16f84.frontendspecifics.ToggleButtonGroup;
@ -14,7 +15,6 @@ import javafx.fxml.FXML;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.VBox;
import javafx.scene.shape.Circle;
import javafx.stage.FileChooser;
import java.io.File;

View File

@ -24,8 +24,8 @@ public abstract class ExecutionTimeSubject extends PICComponent implements PICCo
}
protected void notifyObservers(){
observers.forEach(o -> o.executionTimeChanged());
}
observers.forEach(o -> o.executionTimeChanged());
}
public double getTotalExecutionTime(){
throw new UnsupportedOperationException("No class implements ExecutionTimeSubject correctly!");

View File

@ -1,5 +1,7 @@
package fabrik.simulator.pic16f84;
import fabrik.simulator.pic16f84.frontendspecifics.Circle;
import fabrik.simulator.pic16f84.frontendspecifics.FrontendSpecificCircle;
import fabrik.simulator.pic16f84.frontendspecifics.FrontendSpecificToggleButtonGroup;
import fabrik.simulator.pic16f84.frontendspecifics.ToggleButtonGroup;
import fabrik.simulator.pic16f84.interfaces.*;
@ -8,7 +10,6 @@ import javafx.scene.control.ToggleButton;
import javafx.scene.paint.Color;
import javafx.scene.paint.RadialGradient;
import javafx.scene.paint.Stop;
import javafx.scene.shape.Circle;
import java.io.IOException;
@ -187,9 +188,9 @@ public class IOPorts extends PICComponent implements IOPortInterface {
}
}
public void setLEDs (Circle[] a, Circle[] b){
allLEDsA = a;
allLEDsB = b;
public void setLEDs (FrontendSpecificCircle[] a, FrontendSpecificCircle[] b){
allLEDsA = (Circle []) a;
allLEDsB = (Circle []) b;
}
public void refreshTable(ToggleButtonGroup parent) {

View File

@ -0,0 +1,8 @@
package fabrik.simulator.pic16f84.frontendspecifics;
public class Circle extends javafx.scene.shape.Circle implements FrontendSpecificCircle {
public Circle () {
super();
}
}

View File

@ -0,0 +1,4 @@
package fabrik.simulator.pic16f84.frontendspecifics;
public interface FrontendSpecificCircle extends FrontendSpecificObject {
}

View File

@ -6,7 +6,4 @@ public interface CommandInterface extends PICComponentInterface {
int get_wRegister();
void decode(int i);
}

View File

@ -1,9 +1,8 @@
package fabrik.simulator.pic16f84.interfaces;
import javafx.scene.shape.Circle;
import java.io.IOException;
import fabrik.simulator.pic16f84.frontendspecifics.FrontendSpecificCircle;
import fabrik.simulator.pic16f84.frontendspecifics.FrontendSpecificObject;
import fabrik.simulator.pic16f84.frontendspecifics.FrontendSpecificToggleButtonGroup;
@ -24,7 +23,7 @@ public interface IOPortInterface extends PICComponentInterface, FrontendSpecific
void reset();
void setLEDs(Circle[] allLEDsA, Circle[] allLEDsB);
void setLEDs(FrontendSpecificCircle[] allLEDsA, FrontendSpecificCircle[] allLEDsB);
void setLEDs(boolean[] booleans);
}

View File

@ -1,7 +1,6 @@
package fabrik.simulator.pic16f84.interfaces;
import fabrik.simulator.pic16f84.frontendspecifics.FrontendSpecificVBox;
import javafx.scene.layout.VBox;
public interface TableInterface extends PICComponentInterface {
void refresh();