3.3 Application Windows réaliste
La troisième application est aussi à écrire en C#. Il s'agit d'une
fenêtrée permettant de tracer des courbes à partir de points sauvés
dans des fichiers.
Le fichiers comporteront un point par ligne sous la forme de deux réels
(abscisse et ordonnée). La première ligne du fichier indique le nom de la
courbe.
L'application comportera deux fichiers sources bien distincts : le
fichier définissant et gérant l'interface utilisateur et le fichier
implantant la classe Courbes.
La classe Courbes doit être conçue comme la classe Cercles
mais cette fois une méthode d'instance pour charger une courbe en
provenance d'un fichier est nécessaire.
L'interface utilisateur doit comporter une zone de dessin (PictureBox)
pour y dessiner les courbes, une liste (ListBox) pour y lister les
courbes disponibles (afficher le titre de la courbe) et une liste (ListBox)
pour lister les points de la courbe sélectionnée dans la première liste. Prévoyez
des boutons pour charger, sauvegarder, ajouter et supprimer des courbes de la liste
(lors du chargement et de la sauvegarde une fenêtre de dialogue pour choisir le
fichier doit apparaître).
L'affichage des courbes doit se faire de façon automatique (ajustement
automatique de l'échelle, attention l'échelle doit être la même pour
les différentes courbes). Chaque courbe doit se distinguer par sa couleur
et le symbole représentant ses points. L'utilisateur doit pouvoir zoomer
en arrière (doublement de la taille de la zone d'affichage) et zoomer en
avant (sélection d'un rectangle dans la zone de dessin). En ce qui concerne
l'interface utilisateur prévoyez des boutons pour passer en zoom automatique,
pour zoomer en arrière ou pour zoomer en avant.
La courbe sélectionnée doit se distinguer des autres (e.g. forcez le trait)
ainsi que le point sélectionné (e.g. entourez le). Les courbes seront affichées
avec des couleurs différentes (suivant leur ordre dans la liste). Les points
doivent être apparents (e.g. représentez les par une croix).
Une première amélioration consiste à ajouter et à supprimer des points dans une
courbe (prévoir des boutons et des boites numériques pour ce faire dans
l'interface utilisateur). Une seconde amélioration consiste à pouvoir sélectionner
les points à ajouter ou à supprimer dans la zone de dessin.
Créez un installateur Windows pour votre projet. Dans le même temps,
portez votre exécutable sous Linux et essayez de l'exécuter avec mono.