public void start(Stage stage) {
    stage.setTitle("ListView demo");
    FlowPane rootNode = new FlowPane(10, 10);
    rootNode.setAlignment(Pos.CENTER);
    Scene scene = new Scene(rootNode, 200, 120);
    stage.setScene(scene);

    responseLabel = new Label("Select Transport Type");

    ObservableList<String> transportTypes =
        FXCollections.observableArrayList("Train", "Car", "Airplane");
    ListView<String> transportListView = new ListView(transportTypes);
    transportListView.setPrefSize(80, 80);
    MultipleSelectionModel<String> listViewSelectionModel = transportListView.getSelectionModel();

    listViewSelectionModel
        .selectedItemProperty()
        .addListener(
            new ChangeListener<String>() {
              public void changed(
                  ObservableValue<? extends String> changed, String oldValue, String newValue) {
                responseLabel.setText("Transport selected is " + newValue);
              }
            });

    rootNode.getChildren().addAll(transportListView, responseLabel);
    stage.show();
  }
コード例 #2
0
 // Handler for MenuItem[fx:id="assignOfficialMenuItem"] onAction
 public void assignOfficial(ActionEvent event) {
   // TODO add assertions to be sure that no null value are passed to the
   // controller
   officialsController.assignOfficialTo(
       officialsFilteredTableView.getSelectionModel().getSelectedItem(),
       assigmentsListView.getSelectionModel().getSelectedItem());
 }
コード例 #3
0
  private void signOutInDB() {
    checkAllFieldsHandled();

    ObservableList<Topics135> selectedTopics =
        topicsListView.getSelectionModel().getSelectedItems();
    ArrayList<Topics135> arrayOfTopics = new ArrayList<>();
    if (selectedTopics != null) {
      for (Topics135 t : selectedTopics) {
        arrayOfTopics.add(t);
      }
    }

    if (arrayOfTopics.isEmpty()) {
      arrayOfTopics = null;
    }

    // If not in 135, then Level of Learning will be null. Do not insert level of learning in to DB.
    int levelOfLearningValue = -1;
    if (levelOfLearning.getValue() != null) {
      levelOfLearningValue = levelOfLearning.getValue();
    }

    sod =
        new SignOutData(
            student.getEmplId(), arrayOfTopics, levelOfLearningValue, theTutor.getValue());

    Main.getMdb().signOut(sod);
    successfulSignOut = true;
    close();
  }
コード例 #4
0
  public MainScreenView(final MainScreenController controller) {
    // Setup Job  List:
    listView_jobs.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);

    // Setup output area:
    textArea_output.setEditable(false);
    textArea_output.setFocusTraversable(false);

    // Set Component Tooltips:
    button_createJob.setTooltip(new Tooltip("Open the Job creation dialog to create a new Job."));
    button_deleteSelectedJobs.setTooltip(
        new Tooltip("Removes all Jobs that are currently selected on the list."));
    button_deleteAllJobs.setTooltip(new Tooltip("Clears the list of all Jobs."));
    button_clearOutput.setTooltip(new Tooltip("Clears the output screen."));
    button_editSettings.setTooltip(new Tooltip("Open the settings menu."));
    button_encode.setTooltip(new Tooltip("Encodes the selected handler(s)."));
    button_decode.setTooltip(
        new Tooltip(
            "Decodes the selected handler(s).\n\n"
                + "No checking is done to see if the files have ever been encoded,\n"
                + "so it's up to you to ensure you're decoding the correct files."));

    // Set Component EventHandlers:
    button_createJob.setOnAction(controller);
    button_encode.setOnAction(controller);
    button_decode.setOnAction(controller);
    button_deleteSelectedJobs.setOnAction(controller);
    button_deleteAllJobs.setOnAction(controller);
    button_clearOutput.setOnAction(controller);
    button_editSettings.setOnAction(controller);

    // Setup the Layout:
    final HBox panel_left_top = new HBox(10);
    panel_left_top.setAlignment(Pos.CENTER);
    panel_left_top
        .getChildren()
        .addAll(button_createJob, button_deleteSelectedJobs, button_deleteAllJobs);

    final HBox panel_left_bottom = new HBox(10);
    panel_left_bottom.setAlignment(Pos.CENTER);
    panel_left_bottom.getChildren().addAll(button_encode, button_decode);

    final VBox panel_left = new VBox(4);
    HBox.setHgrow(panel_left, Priority.ALWAYS);
    VBox.setVgrow(listView_jobs, Priority.ALWAYS);
    panel_left.getChildren().addAll(panel_left_top, listView_jobs, panel_left_bottom);

    final BorderPane panel_right_bottom = new BorderPane();
    panel_right_bottom.setLeft(button_clearOutput);
    panel_right_bottom.setRight(button_editSettings);

    final VBox panel_right = new VBox(4);
    HBox.setHgrow(panel_right, Priority.ALWAYS);
    VBox.setVgrow(textArea_output, Priority.ALWAYS);
    panel_right.getChildren().addAll(textArea_output, panel_right_bottom);

    this.setSpacing(4);
    this.getChildren().addAll(panel_left, panel_right);
  }
コード例 #5
0
  private void display() {
    initModality(Modality.APPLICATION_MODAL);

    setTitle("Student Review");
    setMinWidth(250);
    setMinHeight(300);

    signOutButton = new Button("SignOut");
    signOutButton.setOnAction(event -> signOutInDB());
    buttonHBox = new HBox(signOutButton);
    buttonHBox.setAlignment(Pos.CENTER_RIGHT);

    studentInfo = new RegistrationStudentInfoEntryBox();
    // Disabling all fields
    setValue(studentInfo.getEmplIdTextField(), String.valueOf(student.getEmplId()));
    setValue(studentInfo.getFirstNameTextField(), student.getFirstName());
    setValue(studentInfo.getLastNameTextField(), student.getLastName());
    studentInfo.getYearChoiceBox().setValue(student.getYear());
    studentInfo.getYearChoiceBox().setDisable(true);

    theTutor = new ChoiceBox<>();
    theTutor.getItems().addAll(Tutor.values());
    theTutorLabel = new Label("Tutor ");
    theTutorLayout = new HBox();
    theTutorLayout.getChildren().addAll(theTutorLabel, theTutor);

    is135 = new CheckBox("Discussed 135 Topics? ");
    is135.setOnAction(event -> handleListView());

    // Hidden until is135 is checked
    levelOfLearning = new ChoiceBox<>();
    levelOfLearning.getItems().addAll(1, 2, 3, 4);
    levelOfLearningLabel = new Label("Level Of Learning ");
    levelOfLearningLayout = new HBox();
    levelOfLearningLayout.getChildren().addAll(levelOfLearningLabel, levelOfLearning);
    levelOfLearningLayout.setVisible(false);
    levelOfLearningLayout.setManaged(false);

    // Hidden until is135 is checked
    topicsListView = new ListView<>();
    topicsListView.getItems().addAll(Topics135.values());
    topicsListView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
    topicsListView.setVisible(false);
    topicsListView.setManaged(false);

    vertical135Layout = new VBox(10);
    vertical135Layout.getChildren().addAll(is135, levelOfLearningLayout, topicsListView);

    mainVBox = new VBox(20);
    mainVBox.getChildren().addAll(studentInfo, theTutorLayout, vertical135Layout, buttonHBox);
    mainVBox.setMargin(vertical135Layout, new Insets(0, 20, 0, 20));
    mainVBox.setMargin(buttonHBox, new Insets(20));
    mainVBox.setAlignment(Pos.TOP_CENTER);

    scene = new Scene(mainVBox);
    setScene(scene);
    showAndWait();
  }
コード例 #6
0
 private void onDelete() {
   SetStroke item = strokes.getSelectionModel().getSelectedItem();
   if (item != null) {
     try {
       db.getTblSetStroke().deleteSetStroke(item);
     } catch (Exception e) {
       ExceptionAlert.showError(LOGGER, lang.format("error.load", "error.subj.stroke"), e);
     }
     eventBus.post(new StrokeEvent.StrokeDeleteEvent(item));
   }
 }
コード例 #7
0
  /** ButtonMethod for add ingredients from the ingredientList into the tableview */
  public void addIngredientButton() {

    String selectedIngredient = recipeIngredients.getSelectionModel().getSelectedItems().toString();
    selectedIngredient = selectedIngredient.replaceAll("\\[", "").replaceAll("\\]", "");

    items.add(
        new Ingredient(
            selectedIngredient,
            ingredientAmount.getText(),
            ingredientUnit.getSelectionModel().getSelectedItem().toString())); // Creates new
    addedIngredientTable.setItems(
        items); // Object of the type Ingredient and adds it to the tableView.
  }
コード例 #8
0
 @FXML
 private void initialize() {
   initMenu();
   strokes.setCellFactory(param -> new ModelCell<>(lang));
   strokes
       .getSelectionModel()
       .selectedItemProperty()
       .addListener((observable, oldValue, newValue) -> onSelect(newValue));
   isSelected.bind(strokes.getSelectionModel().selectedItemProperty().isNotNull());
   search
       .textProperty()
       .addListener(
           observable -> {
             if (search.getText() == null || search.getText().isEmpty()) {
               allStrokes.setPredicate(set -> true);
             } else {
               allStrokes.setPredicate(
                   set ->
                       set.uiString(lang).toLowerCase().contains(search.getText().toLowerCase()));
             }
           });
   populate();
 }
コード例 #9
0
ファイル: MainViewController.java プロジェクト: Zopo/RoBro
  public void initialize(Stage stage, Scene scene) {
    this.stage = stage;
    this.scene = scene;

    try {
      ClientCommunicationManager.getInstance().subscribeAll();
    } catch (InterruptedException e) {
      e.printStackTrace();
    }

    btn_refresh.setOnAction(
        event -> {
          try {
            ClientCommunicationManager.getInstance().subscribeAll();
            updateRobotList();
          } catch (InterruptedException e) {
            e.printStackTrace();
          }
        });

    list_robots
        .getSelectionModel()
        .selectedIndexProperty()
        .addListener((obervable, oldValue, newValue) -> loadSelected());

    ClientCommunicationManager clientCommunicationManager =
        ClientCommunicationManager.getInstance();
    updateRobotList();
    Timeline updateTimer =
        new Timeline(
            new KeyFrame(
                Duration.millis(50),
                new EventHandler<ActionEvent>() {
                  @Override
                  public void handle(ActionEvent event) {
                    Collection<String> oldRobots =
                        RobotRepository.getInstance().getRobots().keySet();
                    clientCommunicationManager.processIncomingObjects();
                    Collection<String> newRobots =
                        RobotRepository.getInstance().getRobots().keySet();
                    if (!oldRobots.equals(newRobots)) {
                      updateRobotList();
                    }
                  }
                }));
    updateTimer.setCycleCount(Timeline.INDEFINITE);
    updateTimer.play();
  }
コード例 #10
0
ファイル: MainViewController.java プロジェクト: Zopo/RoBro
  private void loadSelected() {
    int i = list_robots.getSelectionModel().getSelectedIndex();
    if (i >= 0) {
      RobotViewModel selectedRobot = (RobotViewModel) list_robots.getItems().get(i);

      FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/robotView.fxml"));
      try {
        pane_main_content.getChildren().clear();
        Node node = fxmlLoader.load();
        RobotViewController controller = fxmlLoader.getController();
        controller.initialize(selectedRobot);
        pane_main_content.getChildren().add(node);
        stage.show();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
  }
コード例 #11
0
  private void checkAllFieldsHandled() {
    if (theTutor.getValue() == null) {
      PopUp.display("Error", "Please select a tutor");
      throw new IllegalArgumentException("Tutor was not selected");
    } else if (is135.isSelected()) {
      if (levelOfLearning.getValue() == null) {
        PopUp.display("Error", "Please select a level of learning for the student");
        throw new IllegalArgumentException("Level of Learning was not selected");
      }

      if (topicsListView.getSelectionModel().getSelectedItems().size() == 0) {
        PopUp.display(
            "Error",
            "Select at least one topic of discussion\n\n"
                + "If you are unsure, please select \'Other\'");
        throw new IllegalArgumentException("No class topic was selected");
      }
    }
  }
コード例 #12
0
ファイル: TabPane.java プロジェクト: daniel5556/mercury-irc
 public TabPane(ApplicationPane appPane) {
   this.appPane = appPane;
   getStylesheets().add(Mercury.class.getResource("/res/css/TabPane.css").toExternalForm());
   setMinWidth(200);
   setMaxWidth(200);
   final TabButtonPane buttonPane = new TabButtonPane();
   final VBox tabListBox = new VBox();
   tabListBox.getStyleClass().add("dark-pane");
   tabListBox.setId("tab-list");
   setVgrow(tabListBox, Priority.ALWAYS);
   tabList = new ListView<>();
   setVgrow(tabList, Priority.ALWAYS);
   selectionModel = tabList.getSelectionModel();
   selectionModel
       .selectedIndexProperty()
       .addListener(
           new ChangeListener<Number>() {
             @Override
             public void changed(
                 ObservableValue<? extends Number> observableValue,
                 Number number,
                 Number number2) {
               if (number2 == 0) {
                 tabList.getStyleClass().add("first");
               } else {
                 tabList.getStyleClass().remove("first");
               }
             }
           });
   selectionModel.selectedItemProperty().addListener(new TabClickedListener());
   tabList.setCellFactory(
       new Callback<ListView<Tab>, ListCell<Tab>>() {
         public ListCell<Tab> call(ListView<Tab> tabListView) {
           return new TabCell();
         }
       });
   tabListBox.getChildren().add(tabList);
   getChildren().addAll(buttonPane, tabListBox);
 }
コード例 #13
0
  @FXML
  void initialize() {

    //
    // Defines for event list
    //
    removeButton.setDisable(true);
    editButton.setDisable(true);
    listView.getSelectionModel().setSelectionMode(SelectionMode.SINGLE);
    listView
        .getSelectionModel()
        .selectedItemProperty()
        .addListener(
            new ChangeListener() {
              @Override
              public void changed(ObservableValue observableValue, Object o, Object o2) {
                // Selected
                if (listView.getSelectionModel().getSelectedItem() == null) {
                  removeButton.setDisable(true);
                  editButton.setDisable(true);
                } else {
                  removeButton.setDisable(false);
                  editButton.setDisable(false);
                }

                //
                if (listView.getItems().size() != 0) {
                  clearButton.setDisable(false);
                } else {
                  clearButton.setDisable(true);
                }
              }
            });

    //
    // Defines for date picker
    //
    datePicker.setOnAction(
        new EventHandler<ActionEvent>() {
          @Override
          public void handle(ActionEvent actionEvent) {
            listView.getItems().clear();

            List<EventController.EventInfo> list =
                EventController._eventMap.get(datePicker.getValue());
            if (list == null) {
              // No items
            } else {

              // Sorting by time
              TreeMap<String, String> sortedMap = new TreeMap<String, String>();
              for (EventController.EventInfo info : list) {
                sortedMap.put(info.Time, info.Description);
              }

              for (Map.Entry<String, String> entry : sortedMap.entrySet()) {
                mainApplication.addEvent(entry.getKey(), entry.getValue());
              }
            }
          }
        });

    //
    // Defines for clear button
    //
    clearButton.setOnAction(
        new EventHandler<ActionEvent>() {
          @Override
          public void handle(ActionEvent actionEvent) {
            List<EventController.EventInfo> list =
                EventController._eventMap.get(datePicker.getValue());
            if (list == null) {
              // No items
            } else {
              listView.getItems().clear();
              list.clear();
            }
          }
        });

    //
    // Defines for add button
    //
    addButton.setOnAction(
        new EventHandler<ActionEvent>() {
          @Override
          public void handle(ActionEvent actionEvent) {
            mainApplication.displayAdd();
          }
        });

    //
    // Defines for remove button
    //
    removeButton.setOnAction(
        new EventHandler<ActionEvent>() {
          @Override
          public void handle(ActionEvent actionEvent) {
            // Not null
            TempClass selectedTemp = itemMap.get(listView.getSelectionModel().getSelectedItem());
            if (listView.getSelectionModel().getSelectedItem() != null) {
              listView.getItems().remove(listView.getSelectionModel().getSelectedItem());
              EventController.RemoveEvent(
                  datePicker.getValue(), selectedTemp.Time, selectedTemp.Description);
            }
          }
        });

    //
    // Defines for edit button
    //
    editButton.setOnAction(
        new EventHandler<ActionEvent>() {
          @Override
          public void handle(ActionEvent actionEvent) {
            // Not null
            Object selectedItem = listView.getSelectionModel().getSelectedItem();
            if (selectedItem != null) {
              TempClass temp = itemMap.get(selectedItem);
              mainApplication.displayEdit(
                  datePicker.getValue(), temp.Time, temp.Description, selectedItem);
            }
          }
        });
  }
コード例 #14
0
  public entryView(Object object) {
    getChildren().clear();
    getStylesheets().add("css/entryView.css");
    giveNode(object);

    BorderPane mainpane = new BorderPane();
    BorderPane centerpane = new BorderPane();
    BorderPane bottompane = new BorderPane();
    GridPane divgrid = new GridPane();
    GridPane maingrid = new GridPane();
    Label emptylab = new Label();
    Label divlab = new Label();
    VBox options = new VBox();
    VBox tlist = new VBox();
    Button ok = new Button("ok");
    Periods periods = new Periods();
    TList loadteacher = new TList();
    DatePicker date = new DatePicker();
    BorderPane datepane = new BorderPane();
    BorderPane nextpane = new BorderPane();
    Button next = new Button("next");

    options.setId("options");
    tlist.setId("tlist");
    divgrid.setId("divgrid");
    bottompane.setId("bottompane");
    periods.setId("period");
    divlab.setId("divlabel");
    datepane.setId("datepane");
    nextpane.setId("nextpane");

    emptylab.setPrefHeight(100);
    bottompane.setStyle("-fx-background-color:#ecf0f1;");

    StringConverter converter =
        new StringConverter<LocalDate>() {
          DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("dd-MM-yyyy");

          @Override
          public String toString(LocalDate date) {
            if (date != null) {
              return dateFormatter.format(date);
            } else {
              return "";
            }
          }

          @Override
          public LocalDate fromString(String string) {
            if (string != null && !string.isEmpty()) {
              return LocalDate.parse(string, dateFormatter);
            } else {
              return null;
            }
          }
        };
    date.setConverter(converter);
    date.setPromptText("dd-MM-yyyy".toLowerCase());

    date.setValue(LocalDate.now());

    maingrid = div.loadDiv();
    list = (ListView) div.takelist();
    periods.period();
    list.getSelectionModel().select(0);
    divlab.setText((String) list.getItems().get(0));
    list.setOnMouseClicked(
        e -> {
          divlab.setText((String) list.getSelectionModel().getSelectedItem());
          periods.getChildren().clear();
          periods.period();
        });
    final Node node = maingrid.getChildren().get(0);
    Platform.runLater(
        new Runnable() {
          @Override
          public void run() {
            node.requestFocus();
          }
        });
    next.setOnAction(
        e -> {
          //			list.getSelectionModel().getSelectedIndex()+1
          list.getSelectionModel().select(list.getSelectionModel().getSelectedIndex() + 1);
          divlab.setText((String) list.getSelectionModel().getSelectedItem());
        });

    nextpane.setRight(next);
    datepane.setRight(date);
    options.getChildren().clear();
    options.getChildren().add(maingrid);
    divgrid.setHgap(5);
    //		divgrid.add(emptylab, 0, 1);
    divgrid.add(datepane, 1, 0);
    divgrid.add(divlab, 0, 2);
    divgrid.add(periods, 1, 2);
    divgrid.add(nextpane, 1, 3);
    divgrid.setAlignment(Pos.TOP_CENTER);
    mainpane.setCenter(centerpane);
    mainpane.setLeft(options);
    mainpane.setRight(loadteacher);
    centerpane.setCenter(divgrid);
    centerpane.setBottom(bottompane);
    bottompane.setRight(ok);

    addCloseButton cb = new addCloseButton();
    cb.addxb(1);
    setTop(cb);
    setCenter(mainpane);
  }
コード例 #15
0
 @Subscribe
 public void onStroke(StrokeEvent event) {
   populate();
   strokes.getSelectionModel().select(event.getObj());
 }
コード例 #16
0
 private void onEdit() {
   SetStroke item = strokes.getSelectionModel().getSelectedItem();
   if (item != null) {
     eventBus.post(new StrokeEvent.StrokeOpenEvent(item, mainStage));
   }
 }