Hi, What is a design pattern I can use for generating "context-sensitive" right click menus ? I have in mind a "Windows Explorer"-like application where a user can right click on a folder and get a list of menu items but right click on a drive and get a totally different list. What design pattern should I use ? Would the factory design pattern be appropiate for handling such a menu ? Regards, Seb
+2
A:
You may want to check out the visitor pattern and the builder- and factory-pattern. In pseudocode you may do something like this:
OnRightClick(Item ClickedItem) {
ContextMenu = MenuBuilder.Visit( ClickedItem );
Choice = ContextMenu.Show();
}
The MenuBuilder
would construct an appropriate context method based on the item it visits.
Space_C0wb0y
2010-04-19 20:02:46