// Author : Chris Tolley
// Date   : 8/26/2004
// Menu.h contains the class declaration for a menu class to use with the
// game Survival

#if !defined(AFX_MENU_H__A151DC09_BA9A_4129_A8C4_9D4D43E97973__INCLUDED_)
#define AFX_MENU_H__A151DC09_BA9A_4129_A8C4_9D4D43E97973__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

// Forward class declarations
class CInputSystem;

// An enum indicating the return value from this menu
enum MenuChoice
{
	// Indicates that the user has not made a choice
	MENU,
	// Indicates that the user wants to play the game
	GAME,
	// Indicates that the user wants to observe the bugs on their own
	SPECTATE,
	// Indicates that the user wants to exit
	EXIT
};// End enum MenuChoice

class Menu  
{
public:
	// Constructor
	Menu();

	// Destructor
	virtual ~Menu();

	// Sets up the input system for this game
	void Initialize( CInputSystem* input ) { m_Input = input; };

	// Renders the menu to the screen
	void Render() const;

	// Updates the menu and returns what the user selected
	MenuChoice Update() const;
private:
	// The input system for this game
	CInputSystem* m_Input;
};

#endif // !defined(AFX_MENU_H__A151DC09_BA9A_4129_A8C4_9D4D43E97973__INCLUDED_)
