# Class PanelRappel

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
fr.iutfbleau.papillon.PanelRappel

All Implemented Interfaces:
  `ActionListener, MouseListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible`

public class PanelRappel extends JPanel implements ActionListener, MouseListener
La classe `PanelRappel` représente l’affichage graphique d’un rappel dans l’application Papillon.

Chaque panneau contient le titre, un aperçu du contenu, ainsi qu’une couleur correspondant au thème du rappel. L’utilisateur peut interagir avec ce panneau (sélection, clic droit, etc.).

See Also:
  - Serialized Form

## Nested Class Summary

### Nested classes/interfaces inherited from class JPanel

`JPanel.AccessibleJPanel`

### Nested classes/interfaces inherited from class JComponent

`JComponent.AccessibleJComponent`

### Nested classes/interfaces inherited from class Container

`Container.AccessibleAWTContainer`

### Nested classes/interfaces inherited from class Component

`Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy`

## Field Summary

### Fields inherited from class JComponent

`listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

### Fields inherited from class Component

`accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

### Fields inherited from interface ImageObserver

`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

## Constructor Summary

Constructors
Constructor
Description
`PanelRappel(Rappel r)`
Constructeur du panneau associé à un rappel sans référence à la fenêtre principale.
`PanelRappel(Rappel r, Main main)`
Constructeur du panneau associé à un rappel et à la fenêtre principale.

## Method Summary

Modifier and Type
Method
Description
`void`
`actionPerformed(ActionEvent e)`
Gère les actions déclenchées par les éléments du menu contextuel.
`void`
`createPanel(Rappel r)`
Initialise et configure le panneau pour afficher les informations du rappel.
`int`
`getId()`
Renvoie l’identifiant du rappel affiché.
`Rappel`
`getRappel()`
Renvoie le rappel associé à ce panneau.
`boolean`
`getSelection()`
Indique si le panneau est actuellement sélectionné.
`void`
`mouseClicked(MouseEvent e)`
Gère les clics simples ou doubles sur le panneau.
`void`
`mouseEntered(MouseEvent e)`
Change l’apparence du panneau lorsque la souris entre dans sa zone.
`void`
`mouseExited(MouseEvent e)`
Restaure la bordure du panneau lorsque la souris quitte sa zone.
`void`
`mousePressed(MouseEvent e)`
Gère les clics de souris sur le panneau.
`void`
`mouseReleased(MouseEvent e)`
Gère la libération du clic de souris.

### Methods inherited from class JPanel

`getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI`

### Methods inherited from class JComponent

`addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, 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, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, 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, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update`

### Methods inherited from class Container

`add, add, add, add, add, addContainerListener, addImpl, 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, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree`

### Methods inherited from class Component

`action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, 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, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, 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`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### PanelRappel

public PanelRappel(Rappel r, Main main)
Constructeur du panneau associé à un rappel et à la fenêtre principale.

Parameters:
  `r` - le rappel à afficher
  `main` - la fenêtre principale

### PanelRappel

public PanelRappel(Rappel r)
Constructeur du panneau associé à un rappel sans référence à la fenêtre principale.

Parameters:
  `r` - le rappel à afficher

## Method Details

### createPanel

public void createPanel(Rappel r)
Initialise et configure le panneau pour afficher les informations du rappel.

Parameters:
  `r` - le rappel à afficher

### getSelection

public boolean getSelection()
Indique si le panneau est actuellement sélectionné.

Returns:
  true si le panneau est sélectionné, false sinon

### getId

public int getId()
Renvoie l’identifiant du rappel affiché.

Returns:
  l’identifiant unique du rappel

### getRappel

public Rappel getRappel()
Renvoie le rappel associé à ce panneau.

Returns:
  le rappel affiché dans ce panneau

### actionPerformed

public void actionPerformed(ActionEvent e)
Gère les actions déclenchées par les éléments du menu contextuel.

Si l’utilisateur clique sur "Ouvrir", la fenêtre détaillée du rappel est affichée.

Specified by:
  `actionPerformed` in interface `ActionListener`
Parameters:
  `e` - l’événement d’action déclenché

### mousePressed

public void mousePressed(MouseEvent e)
Gère les clics de souris sur le panneau.

Un clic gauche sélectionne/désélectionne le panneau, tandis qu’un clic droit affiche le menu contextuel.

Specified by:
  `mousePressed` in interface `MouseListener`
Parameters:
  `e` - l’événement de souris détecté

### mouseReleased

public void mouseReleased(MouseEvent e)
Gère la libération du clic de souris.

Si le clic est un clic droit, le menu contextuel s’affiche.

Specified by:
  `mouseReleased` in interface `MouseListener`
Parameters:
  `e` - l’événement de souris

### mouseClicked

public void mouseClicked(MouseEvent e)
Gère les clics simples ou doubles sur le panneau.

Un double clic gauche ouvre la fenêtre de rappel complète.

Specified by:
  `mouseClicked` in interface `MouseListener`
Parameters:
  `e` - l’événement de souris

### mouseEntered

public void mouseEntered(MouseEvent e)
Change l’apparence du panneau lorsque la souris entre dans sa zone.

Specified by:
  `mouseEntered` in interface `MouseListener`
Parameters:
  `e` - l’événement de souris

### mouseExited

public void mouseExited(MouseEvent e)
Restaure la bordure du panneau lorsque la souris quitte sa zone.

Specified by:
  `mouseExited` in interface `MouseListener`
Parameters:
  `e` - l’événement de souris