Class SelectCountriesController

java.lang.Object
proseccoCoding.TLN.control.SelectCountriesController

public class SelectCountriesController extends Object
Controller of the selectCountries view. It has the duty to let the user choose his countries of interest with a view to creating a query. It also has to let the user move forward to the providers selection and go back to the homepage.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    (package private) javafx.beans.value.ChangeListener<Boolean>
    Custom ChangeListener used to define the second part of the selectAll CheckBox behavior
    private javafx.scene.layout.VBox
    VBox object used to contain all the CheckBoxes used to let the user select his countries of interest
    private javafx.scene.control.CheckBox
    CheckBox used to select/deselect all the countries CheckBoxes at the same time
    (package private) javafx.beans.value.ChangeListener<Boolean>
    Custom ChangeListener used to define the first part of the selectAll CheckBox behavior.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private void
    This private method is used to manage the indeterminate status of the selectAll CheckBox.
    private void
    Method called when SelectCountriesController is loaded.
    private void
    This private method is used to change every CheckBox status to the selectAll one
    private void
    Switches scene to the "home" one
    private void
    Switches scene to the "selectProviders" one.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • countriesPane

      private javafx.scene.layout.VBox countriesPane
      VBox object used to contain all the CheckBoxes used to let the user select his countries of interest
    • selectAll

      private javafx.scene.control.CheckBox selectAll
      CheckBox used to select/deselect all the countries CheckBoxes at the same time
    • selectAllListener

      javafx.beans.value.ChangeListener<Boolean> selectAllListener
      Custom ChangeListener used to define the first part of the selectAll CheckBox behavior.
    • checkBoxListener

      javafx.beans.value.ChangeListener<Boolean> checkBoxListener
      Custom ChangeListener used to define the second part of the selectAll CheckBox behavior
  • Constructor Details

    • SelectCountriesController

      public SelectCountriesController()
  • Method Details

    • initialize

      private void initialize()
      Method called when SelectCountriesController is loaded. This method adds to countriesPane the selectAll CheckBox and a CheckBox for each country, all with their ChangeListener.
    • selectAllChanged

      private void selectAllChanged(Boolean value)
      This private method is used to change every CheckBox status to the selectAll one
      Parameters:
      value - status of selectAll CheckBox
    • checkBoxChanged

      private void checkBoxChanged(Boolean newValue)
      This private method is used to manage the indeterminate status of the selectAll CheckBox. If a country CheckBox is set to false and the selectAll one was previously set to true, selectAll becomes indeterminate.
      Parameters:
      newValue - updated status of the selected CheckBox
    • switchToHome

      private void switchToHome() throws IOException
      Switches scene to the "home" one
      Throws:
      IOException
    • switchToSelectProviders

      private void switchToSelectProviders() throws IOException
      Switches scene to the "selectProviders" one. This method also tracks down the selected countries via checking the status of the CheckBoxes and sets selectedCountries in TrustedListFacade's Query. If no country was selected, a warning alert is set to inform the user of his mistake.
      Throws:
      IOException