Class EnumInput<T>

Type Parameters:
T - Type de l'énumération
All Implemented Interfaces:
BaseInput<T>, ActionListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ListSelectionListener
Direct Known Subclasses:
RotationInput, SpecialiteInput

public abstract class EnumInput<T> extends JPanel implements BaseInput<T>, ActionListener, ListSelectionListener
Champ de saisie pour les valeurs de type Enum, avec possibilité de sélection multiple pour la recherche

Ce champ doit être dérivé par énumération désirée.

Author:
Virgile, Nicolas, Louis-Félix
See Also:
  • Constructor Details

    • EnumInput

      public EnumInput(String columnName, boolean isSearch)
      Créer un nouveau champ de saisie de valeur énumération générique.
      Parameters:
      columnName - Nom de la colonne associée
      isSearch - true si le champ est utilisé pour de la recherche
  • Method Details

    • setPreferredSize

      public void setPreferredSize(Dimension size)
      Modifie la taille souhaitée du champ, de manière à ne modifier que la largeur et à conserver la hauteur à sa valeur d'avant, ce pour garantir que le champ ne soit pas trop petit en hauteur.
      Overrides:
      setPreferredSize in class JComponent
      Parameters:
      size - Dimensions souhaitées (seul la largeur sera considéré)
    • getColumnName

      public String getColumnName()
      Retourne le nom de la colonne en base de donnée associée à ce champ de saisie.
      Specified by:
      getColumnName in interface BaseInput<T>
      Returns:
      Nom de la colonne
    • isFilled

      public boolean isFilled()
      Retourne si le champ est actuellement rempli.
      Specified by:
      isFilled in interface BaseInput<T>
      Returns:
      true champ rempli
    • getValue

      public T getValue()
      Récupère la valeur actuelle du champ de saisie, ou la première des valeurs multiples s'il y en a.
      Specified by:
      getValue in interface BaseInput<T>
      Returns:
      Valeur saisie actuelle
      Throws:
      IllegalArgumentException - La valeur saisie est invalide
    • setValue

      public void setValue(T value) throws IllegalArgumentException
      Remplace la valeur saisie par la valeur passée en paramètre.
      Specified by:
      setValue in interface BaseInput<T>
      Parameters:
      value - Nouvelle valeur du champ
      Throws:
      IllegalArgumentException - La valeur fournie est invalide
    • setRawValue

      public void setRawValue(Object value) throws IllegalArgumentException
      Remplace la valeur saisie par la valeur passée en paramètre, en faisant une conversion vers le type attendu.
      Specified by:
      setRawValue in interface BaseInput<T>
      Parameters:
      value - Nouvelle valeur du champ
      Throws:
      IllegalArgumentException - La valeur fournie est invalide
    • getWhere

      public Where getWhere() throws IllegalArgumentException
      Construit la clause Where de sélection liée à la/aux valeur(s) du champ
      Specified by:
      getWhere in interface BaseInput<T>
      Returns:
      Clause Where de sélection
      Throws:
      IllegalArgumentException - Au moins une valeure saisie est invalide
    • addValueChangeListener

      public void addValueChangeListener(ValueChangeListener valueChangeListener)
      Modifie l'objet qui écoute les changements de valeurs du champ
      Specified by:
      addValueChangeListener in interface BaseInput<T>
      Parameters:
      valueChangeListener - Objet qui écoute les changements de valeurs
    • actionPerformed

      public void actionPerformed(ActionEvent actionEvent)
      Méthode de retour appelée lors d'une action, ici lorsque l'utilisateur intéragit avec la liste de sélection unique comboBox.
      Specified by:
      actionPerformed in interface ActionListener
      Parameters:
      actionEvent - Evénement d'action
    • valueChanged

      public void valueChanged(ListSelectionEvent listSelectionEvent)
      Méthode de retour appelée lors d'une sélection de valeur, ici lorsque l'utilisateur intéragit avec la liste de sélection multiple list.
      Specified by:
      valueChanged in interface ListSelectionListener
      Parameters:
      listSelectionEvent - Evénement de sélection de valeur
    • getValues

      public T[] getValues() throws IllegalArgumentException
      Récupère l'ensemble des valeurs saisies.
      Specified by:
      getValues in interface BaseInput<T>
      Returns:
      Valeurs saisies
      Throws:
      IllegalArgumentException - Au moins une valeure saisie est invalide