Modélisation objet du gestionnaire :

Pour modéliser ce gestionnaire, nous nous sommes tout d'abord intéressés à la partie système, c'est-à-dire sans prendre en compte l'aspect graphique. Et nous avons alors dégagé quatre classes :





Détail des classes :

Haut de la page La classe Fichier :


Elle permet à partir du chemin complet du répertoire d'un fichier et de son nom, de connaître toutes les informations disponibles sur un fichier : savoir si c'est un répertoire, sa taille, sa date de dernière modification, son extension ...

Son attribut estSelectionne permet de renseigner si un fichier est selectionné (lors d'un clic de souris).


Ses attributs :


Ses fonctions membres :



Haut de la page La classe ListeFichiers :


Elle permet principalement de stocker un ensemble de fichiers en mémoire afin d'y effectuer des actions systèmes, des opérations ensemblistes (union de deux listes, intersection, ...) ou des tris. Elle peut être obtenue à partir d'un chemin (elle listera alors le contenu de ce répertoire), ou suite à une commande système (par exemple un grep), ou encore après une opération ensembliste sur une ou plusieurs listes.


Ses attributs : cet objet ne contient que des méthodes et aucun attribut. En effet, elle hérite de std::list<Fichier *>.

Ses fonctions membres :



Haut de la page La classe ActionSyst :


La liste des actions systèmes est stockée dans un fichier avec le format suivant :

Chaque action doit commencer par <ACTION> et se finir par </ACTION> il doit y avoir 4 lignes entre ces deux balises:

De plus, la ligne de commande doit contenir des caractères spéciaux pour spécifier les fichiers qu'elle doit prendre en arguments.

Rôle de la classe :

Cette classe représente le moteur interne de gror. C'est elle qui permet d'interpréter et d'exécuter des lignes de commandes paramétrées.

Les actions systèmes sont stockées sur le disque dans le fichier .GrorAction (dans le répertoire de l'utilisateur).

Elles sont chargées en mémoire par la classe ListeActionSyst qui les stock sous forme de liste chainée (c.f. ListeActionSyst).


Les champs : La ligne de commande :

La ligne de commande paramétrée est une ligne de commande linux classique comportant en plus des paramètres qui peuvent avoir les formes suivantes :

Gestion des exceptions
Les cas "exceptionnels d'erreurs de l'utilisateur sont en partie contrôlés:

Dans ces deux cas des exceptions sont levées, elles sont ensuite récupérées dans la partie graphique affichant un message d'erreur adéquat.

Une classe GrorException a été créée a cet usage.



Haut de la page La classe ListActionSyst :