Qu'est-ce qu'un modèle de conception que je peux utiliser pour générer des menus contextuels "contextuels"? Je pense à une application similaire à "Windows Explorer" dans laquelle un utilisateur peut cliquer avec le bouton droit de la souris sur un dossier et obtenir une liste d'éléments de menu, mais faire un clic droit sur un lecteur et obtenir une liste totalement différente. Quel motif de conception devrais-je utiliser? Le modèle de conception d'usine serait-il approprié pour manipuler un tel menu? Cordialement, SebModèle de conception pour contextuel "contextuel" Menu
3
A
Répondre
4
Vous pouvez consulter la visitor pattern et la builder- et factory-pattern. En pseudocode vous pouvez faire quelque chose comme ceci:
OnRightClick(Item ClickedItem) {
ContextMenu = MenuBuilder.Visit(ClickedItem);
Choice = ContextMenu.Show();
}
La MenuBuilder
construirait une méthode de contexte approprié en fonction de l'élément qu'il visite.