Class SearchInput<M extends Model,T>
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
ece.ing3.java.projet.vue.components.inputs.SearchInput<M,T>
- Type Parameters:
M
- Type du modèle BDD considéréT
- Type de retour utilisé (le type de la clé primaire du modèle)
- All Implemented Interfaces:
DialogListener
,BaseInput<T>
,ImageObserver
,MenuContainer
,Serializable
,Accessible
- Direct Known Subclasses:
ChambreInput
,DocteurInput
,InfirmierInput
,MaladeInput
,ServiceInput
public abstract class SearchInput<M extends Model,T>
extends JPanel
implements BaseInput<T>, DialogListener
Champ de saisie pour sélectionner des instances de modèle BDD, stockés en base de donnée, avec possibilité de sélection multiple pour la recherche
Ce champ doit être dérivé par modèle BDD considéré.
- Author:
- Virgile, Nicolas, Louis-Félix
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
-
Field Summary
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
ConstructorsConstructorDescriptionSearchInput
(String columnName, boolean isSearch, Window parent) Créer un nouveau champ de saisie pour sélectionner des instances de modèle BDD générique. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addValueChangeListener
(ValueChangeListener valueChangeListener) Modifie l'objet qui écoute les changements de valeurs du champRetourne le nom de la colonne en base de donnée associée à ce champ de saisie.getValue()
Récupère la valeur actuelle du champ de saisie, ou la première des valeurs multiples s'il y en a.T[]
Récupère l'ensemble des valeurs saisies.getWhere()
Construit la clause Where de sélection liée à la/aux valeur(s) du champboolean
isFilled()
Retourne si le champ est actuellement rempli.void
onDialogCancelled
(JDialog dialog) Méthode régissant à l'annulation d'une boîte de dialogue, ici de la boîte de dialogue de sélection de modèle BDD.void
onDialogSubmitted
(JDialog dialog) Méthode régissant à la validation d'une boîte de dialogue, ici de la boîte de dialogue de sélection de modèle BDD.void
Réinitialise la valeur du champ.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.void
setRawValue
(Object value) Remplace la valeur saisie par la valeur passée en paramètre, en faisant une conversion vers le type attendu.void
Remplace la valeur saisie par la valeur passée en paramètre.Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Constructor Details
-
SearchInput
Créer un nouveau champ de saisie pour sélectionner des instances de modèle BDD générique.- Parameters:
columnName
- Nom de la colonne associéeisSearch
-true
si le champ est utilisé pour de la rechercheparent
- Fenêtre parente de l'ensemble du champ, utilisé pour la boîte de dialogue de recherche
-
-
Method Details
-
setPreferredSize
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 classJComponent
- Parameters:
size
- Dimensions souhaitées (seul la largeur sera considéré)
-
getColumnName
Retourne le nom de la colonne en base de donnée associée à ce champ de saisie.- Specified by:
getColumnName
in interfaceBaseInput<M extends Model>
- Returns:
- Nom de la colonne
-
isFilled
public boolean isFilled()Retourne si le champ est actuellement rempli. -
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 interfaceBaseInput<M extends Model>
- Returns:
- Valeur saisie actuelle
- Throws:
IllegalArgumentException
- La valeur saisie est invalide
-
setValue
Remplace la valeur saisie par la valeur passée en paramètre.- Specified by:
setValue
in interfaceBaseInput<M extends Model>
- Parameters:
value
- Nouvelle valeur du champ- Throws:
IllegalArgumentException
- La valeur fournie est invalide
-
getWhere
Construit la clause Where de sélection liée à la/aux valeur(s) du champ- Specified by:
getWhere
in interfaceBaseInput<M extends Model>
- Returns:
- Clause Where de sélection
- Throws:
IllegalArgumentException
- Au moins une valeure saisie est invalide
-
addValueChangeListener
Modifie l'objet qui écoute les changements de valeurs du champ- Specified by:
addValueChangeListener
in interfaceBaseInput<M extends Model>
- Parameters:
valueChangeListener
- Objet qui écoute les changements de valeurs
-
onDialogSubmitted
Méthode régissant à la validation d'une boîte de dialogue, ici de la boîte de dialogue de sélection de modèle BDD.- Specified by:
onDialogSubmitted
in interfaceDialogListener
- Parameters:
dialog
- Boîte de dialogue de sélection validée
-
onDialogCancelled
Méthode régissant à l'annulation d'une boîte de dialogue, ici de la boîte de dialogue de sélection de modèle BDD.- Specified by:
onDialogCancelled
in interfaceDialogListener
- Parameters:
dialog
- Boîte de dialogue de sélection annulée
-
getValues
Récupère l'ensemble des valeurs saisies.- Specified by:
getValues
in interfaceBaseInput<M extends Model>
- Returns:
- Valeurs saisies
- Throws:
IllegalArgumentException
- Au moins une valeure saisie est invalide
-
resetValue
public void resetValue()Réinitialise la valeur du champ. -
setRawValue
Remplace la valeur saisie par la valeur passée en paramètre, en faisant une conversion vers le type attendu.- Specified by:
setRawValue
in interfaceBaseInput<M extends Model>
- Parameters:
value
- Nouvelle valeur du champ- Throws:
IllegalArgumentException
- La valeur fournie est invalide
-