Vue d’ensemble

La ligne d’événements est un contrôle qui affiche des curseurs temporels : l’heure à la position de la souris et l’intervalle de temps sélectionné. Ce contrôle fait partie de la Timeline et s’affiche en bas.

Ligne d’événements

Formatage de la date et de l’heure

Chaque application a ses propres exigences concernant le format d’affichage des dates et des heures. La ligne d’événements dispose donc d’un formateur de date et d’heure qui peut être remplacé en appelant setDateTimeFormatter(). Vous pouvez obtenir des instances de formateur en appelant les méthodes statiques de la classe DateTimeFormatter, par exemple DateTimeFormatter.ISO_LOCAL_DATE_TIME.

Curseur : position et heure

La ligne d’événements suit la position du curseur de la souris lorsque celle-ci survole la timeline ou le contrôle graphique. La position est stockée dans la propriété en lecture seule cursorLocationProperty(). À chaque changement de position, la ligne d’événements met également à jour la valeur de cursorTimeProperty(). Ces deux propriétés font de la ligne d’événements la source idéale des informations de curseur pour toute l’application.

Intervalle de temps marqué

Lorsque l’utilisateur modifie une activité, la ligne d’événements affiche le nouvel intervalle de temps occupé par cette activité. Cet intervalle est stocké dans markedTimeIntervalProperty(). Lorsque sa valeur change, la ligne d’événements affiche deux curseurs temporels supplémentaires : l’un pour le début de l’intervalle et l’autre pour sa fin.

Ligne figée

La ligne d’événements contient une instance de GraphicsBase, ce qui signifie qu’elle peut également afficher des activités, mais uniquement sur une seule ligne. Comme la ligne d’événements ne défile pas verticalement, les applications peuvent fournir une « ligne figée ». Cette fonctionnalité est très utile lorsqu’il faut visualiser des activités « globales », par exemple des jalons, pertinentes pour toutes les lignes situées en dessous. L’API suivante est pertinente pour utiliser cette fonctionnalité :

public final SingleRowGraphics<Row<?, ? ,?> getGraphics();
public final Row<? ,? ,?> row = getFrozenRow();