123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- package ui;
- import controller.Controller;
- import controller.SettingsController;
- import javafx.application.Platform;
- import javafx.beans.value.ChangeListener;
- import javafx.beans.value.ObservableValue;
- import javafx.concurrent.Task;
- import javafx.fxml.FXML;
- import javafx.scene.control.Button;
- import javafx.scene.control.CheckBox;
- import javafx.scene.control.Label;
- import javafx.scene.control.ScrollBar;
- import javafx.stage.DirectoryChooser;
- import javafx.stage.Stage;
- import java.io.File;
- public class SettingsWindow {
- @FXML
- private CheckBox holeCheckBox;
- @FXML
- private ScrollBar touchscreenSlider;
- @FXML
- private Label touchscreenLabel;
- @FXML
- private ScrollBar fingerSlider;
- @FXML
- private Label fingerLabel;
- @FXML
- private Button scadPath;
- private static SettingsWindow window;
- private Stage stage;
- public SettingsWindow() {
- window = this;
- }
- public static SettingsWindow getWindow() {
- return window;
- }
- protected void setUpListener() {
- holeCheckBox.setSelected(Controller.getC().getFill());
- touchscreenSlider.setValue(Controller.getC().getSizeScreen() * 10);
- touchscreenScrolled();
- fingerSlider.setValue(Controller.getC().getSizeFinger() * 10);
- fingerScrolled();
- String s = Controller.getC().getOpenSCADPath().toString();
- scadPath.setText(Controller.getC().getOpenSCADPath().toString());
- touchscreenSlider.valueProperty().addListener(new ChangeListener<Number>() {
- @Override
- public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
- touchscreenScrolled();
- }
- });
- fingerSlider.valueProperty().addListener(new ChangeListener<Number>() {
- @Override
- public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
- fingerScrolled();
- }
- });
- }
- @FXML
- protected void fillHoleChecked() {
- Controller.getC().setFill(holeCheckBox.isSelected());
- }
- @FXML
- protected void touchscreenScrolled() {
- Controller.getC().setSizeScreen(Math.round(touchscreenSlider.getValue())/10f);
- touchscreenLabel.setText("Conductive dot diameter touchscreen: "+ Math.round(touchscreenSlider.getValue())/10f+"mm");
- }
- @FXML
- protected void fingerScrolled() {
- Controller.getC().setSizeFinger(Math.round(fingerSlider.getValue())/10f);
- fingerLabel.setText("Conductive dot diameter finger: "+ Math.round(fingerSlider.getValue())/10f +"mm");
- }
- @FXML
- protected void pathClicked() {
- Task task = new Task() {
- @Override
- protected Void call() throws Exception {
- DirectoryChooser chooser = new DirectoryChooser();
- Platform.runLater(() -> {
- File file = chooser.showDialog(stage);
- if (file != null) {
- Controller.getC().setOpenSCADPath(file.toPath());
- Platform.runLater(() -> scadPath.setText(file.toPath().toString()));
- }
- });
- return null;
- }
- };
- new Thread(task).start();
- }
- @FXML
- protected void saveClicked() {
- SettingsController.saveSettings();
- stage.close();
- }
- @FXML
- protected void cancelSettings() {
- File file = new File(Main.olipPath + "settings.ini");
- if (file.exists())
- SettingsController.loadSettings();
- stage.close();
- }
- public void setStage(Stage stage) {
- this.stage = stage;
- }
- }
|