IOPorts interactive

This commit is contained in:
2024-05-04 15:08:03 +02:00
parent d7ea62963f
commit 3590779e74
6 changed files with 451 additions and 159 deletions

View File

@ -1,6 +1,7 @@
package fabrik.simulator.pic16f84;
import com.gluonhq.charm.glisten.control.ToggleButtonGroup;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
@ -62,8 +63,8 @@ public class Controller_Frontend {
DataRegister.increasePC();
Table.refresh();
Stage stage = (Stage) stepintoButton.getScene().getWindow();
IOPorts.refreshUI(getTRISbuttons(), getPORTbuttons());
CreateWindow.refreshTable(stage);
}
@ -95,53 +96,105 @@ public class Controller_Frontend {
content.append(line).append("\n");
}
lstContentLabel.setText(content.toString());
} catch (IOException e) {
}
catch (IOException e) {
e.printStackTrace();
}
}
@FXML
private ToggleButtonGroup bgA0;
private ToggleButtonGroup bgTRISA0;
@FXML
private ToggleButtonGroup bgA1;
private ToggleButtonGroup bgTRISA1;
@FXML
private ToggleButtonGroup bgA2;
private ToggleButtonGroup bgTRISA2;
@FXML
private ToggleButtonGroup bgA3;
private ToggleButtonGroup bgTRISA3;
@FXML
private ToggleButtonGroup bgA4;
private ToggleButtonGroup bgTRISA4;
@FXML
private ToggleButtonGroup bgA5;
private ToggleButtonGroup bgTRISA5;
@FXML
private ToggleButtonGroup bgA6;
private ToggleButtonGroup bgTRISA6;
@FXML
private ToggleButtonGroup bgA7;
private ToggleButtonGroup bgTRISA7;
@FXML
private ToggleButtonGroup bgB0;
private ToggleButtonGroup bgTRISB0;
@FXML
private ToggleButtonGroup bgB1;
private ToggleButtonGroup bgTRISB1;
@FXML
private ToggleButtonGroup bgB2;
private ToggleButtonGroup bgTRISB2;
@FXML
private ToggleButtonGroup bgB3;
private ToggleButtonGroup bgTRISB3;
@FXML
private ToggleButtonGroup bgB4;
private ToggleButtonGroup bgTRISB4;
@FXML
private ToggleButtonGroup bgB5;
private ToggleButtonGroup bgTRISB5;
@FXML
private ToggleButtonGroup bgB6;
private ToggleButtonGroup bgTRISB6;
@FXML
private ToggleButtonGroup bgB7;
private ToggleButtonGroup bgTRISB7;
@FXML
private ToggleButtonGroup bgPORTA0;
@FXML
private ToggleButtonGroup bgPORTA1;
@FXML
private ToggleButtonGroup bgPORTA2;
@FXML
private ToggleButtonGroup bgPORTA3;
@FXML
private ToggleButtonGroup bgPORTA4;
@FXML
private ToggleButtonGroup bgPORTA5;
@FXML
private ToggleButtonGroup bgPORTA6;
@FXML
private ToggleButtonGroup bgPORTA7;
@FXML
private ToggleButtonGroup bgPORTB0;
@FXML
private ToggleButtonGroup bgPORTB1;
@FXML
private ToggleButtonGroup bgPORTB2;
@FXML
private ToggleButtonGroup bgPORTB3;
@FXML
private ToggleButtonGroup bgPORTB4;
@FXML
private ToggleButtonGroup bgPORTB5;
@FXML
private ToggleButtonGroup bgPORTB6;
@FXML
private ToggleButtonGroup bgPORTB7;
private static ToggleButtonGroup[] allTRISbuttons;
private static ToggleButtonGroup[] allPORTbuttons;
public void initialize() {
ToggleButtonGroup [] allButtons = {bgA0, bgA1, bgA2, bgA3, bgA4, bgA5, bgA6, bgA7, bgB0, bgB1, bgB2, bgB3, bgB4, bgB5, bgB6, bgB7};
ToggleButtonGroup [] allTRISButtons = {bgTRISA0, bgTRISA1, bgTRISA2, bgTRISA3, bgTRISA4, bgTRISA5, bgTRISA6, bgTRISA7, bgTRISB0, bgTRISB1, bgTRISB2, bgTRISB3, bgTRISB4, bgTRISB5, bgTRISB6, bgTRISB7};
ToggleButtonGroup [] allPORTButtons = {bgPORTA0, bgPORTA1, bgPORTA2, bgPORTA3, bgPORTA4, bgPORTA5, bgPORTA6, bgPORTA7, bgPORTB0, bgPORTB1, bgPORTB2, bgPORTB3, bgPORTB4, bgPORTB5, bgPORTB6, bgPORTB7};
for (int i = 0; i<16; i++) {
ToggleButtonGroupExt.get().addAlwaysOneSelectedSupport(allButtons[i]);
ToggleButtonGroupExt.get().addAlwaysOneSelectedSupport(allTRISButtons[i]);
ToggleButtonGroupExt.get().addAlwaysOneSelectedSupport(allPORTButtons[i]);
}
setTRISbuttons(allTRISButtons);
setPORTbuttons(allPORTButtons);
}
private static void setTRISbuttons(ToggleButtonGroup[] allButtons) {
allTRISbuttons = allButtons;
}
public static ToggleButtonGroup [] getTRISbuttons() {
return allTRISbuttons;
}
private static void setPORTbuttons(ToggleButtonGroup[] allButtons) {
allPORTbuttons = allButtons;
}
public static ToggleButtonGroup [] getPORTbuttons() {
return allPORTbuttons;
}
}