/* * Menu.h * * Created on: Dec 10, 2009 * Author: crueger */ #ifndef MENU_MENU_H_ #define MENU_MENU_H_ using namespace std; class MenuItem; /** * Base class for all Types of menus * contains basic abstract functionality to add Items, remove Items and display the menu * * TODO: Make sure all items are only added once. */ class Menu { public: Menu(); virtual ~Menu(); /** * Adding and removing should be handled by the items. */ virtual void addItem(MenuItem*)=0; /** * Adding and removing should be handled by the items. */ virtual void removeItem(MenuItem*)=0; virtual void display()=0; private: }; #endif /* MENU_H_ */