ELEC2645 (2018/19) / Mbed 2 deprecated el17dg

Dependencies:   mbed

Fork of el17dg by Dmitrijs Griskovs

menu/menu.h

Committer:
Noximilien
Date:
2019-04-23
Revision:
31:becb8f6bf7b7
Parent:
30:d454d0cb72bc
Child:
32:5403bb974294

File content as of revision 31:becb8f6bf7b7:

#ifndef MENU_H
#define MENU_H

//#include "stars.h"

/** Available options in the menu. */
enum ScreenOption {             
    ScreenOption_Menu,
    ScreenOption_Game,
    ScreenOption_Tutorial,
    ScreenOption_Settings
};

/**
 * Menu Class
 * @brief Describes the menu.
 * @author Dmitrijs Griskovs
 * @date 15/04/2019
 */
class Menu {
public:
    /** A constructor */
    Menu();    

    /** 
     * @brief Updates and Draws menu.
     * @details Updates and draws menu options. Also, allows to select an option availabe   
     * from the enum. It return "true" statment if the user picked a menu option.
     */                            
    bool updateAndDraw();  

    /** Returns currently selected meny option */
    ScreenOption getCurrentScreenSelection(); 
        
private:
    void pointerPosition(int menu_number);
    void drawPointer();
    int current_option;
};


#endif