Je bloque sur un problème de conception au niveau des appels de fonctions.
J'ai plusieurs classes :
- Application : représente mon application (non graphique)
- Icone : s'occupe de gérer l'icône de mon application dans la zone de notification (non graphique). L'icone de l'application est cliquable, affiche un menu, et permet de fermer l'application.
- Fenetre : la fenêtre de mon application, il y a des onglets dans cette fenêtre.
- Onglet : le contenu de l'onglet sélectionné
- Titre : composant s'occupant du "rendu" du titre de l'onglet : texte + bouton de fermeture
J'ai aussi une hiérarchie dans ces classes :
Application possède 1 Icone et 1 Fenetre
Fenetre possède n Onglet
Onglet possède 1 Titre
J'ai aussi 1 Thread qui tourne par Onglet ouvert.
C'est l'Onglet qui "possède" le Thread
Je dois donc le fermer quand je ferme cet Onglet.
J'ai un problème de conception au niveau de l'ordre de fermeture.
Il est possible de fermer l'application de plusieurs manières :
- Cliquer sur le bouton fermer (croix) de la Fenetre
- Quand on a fermé tout les onglets
- Quand on clique sur "Fermer" dans le menu de l'icone de la zone de notification.
Le problème, c'est que je ne sais pas décider "qui ferme quoi", ou qui "s'auto ferme".
Dans quel sens dois-je faire mes appels de fermeture ?
Qui du composant "parent" ou "enfant" décide de la fermeture de "l'enfant"?
Est ce qu'il existe un modèle de réflexion à ce sujet ?
Merci !
Partager