ELEC2645 (2018/19) / Mbed 2 deprecated el17dg

Dependencies:   mbed

Fork of el17dg by Dmitrijs Griskovs

Committer:
Noximilien
Date:
Tue Apr 23 18:18:57 2019 +0000
Revision:
31:becb8f6bf7b7
Parent:
30:d454d0cb72bc
Child:
32:5403bb974294
Have changed comments structure as well as the content. Finished intro music. Have cleaned a code in some places to make it readable.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Noximilien 4:02c63aaa2df9 1 #ifndef MENU_H
Noximilien 4:02c63aaa2df9 2 #define MENU_H
Noximilien 4:02c63aaa2df9 3
Noximilien 31:becb8f6bf7b7 4 //#include "stars.h"
Noximilien 31:becb8f6bf7b7 5
Noximilien 31:becb8f6bf7b7 6 /** Available options in the menu. */
Noximilien 31:becb8f6bf7b7 7 enum ScreenOption {
Noximilien 4:02c63aaa2df9 8 ScreenOption_Menu,
Noximilien 4:02c63aaa2df9 9 ScreenOption_Game,
Noximilien 4:02c63aaa2df9 10 ScreenOption_Tutorial,
Noximilien 4:02c63aaa2df9 11 ScreenOption_Settings
Noximilien 4:02c63aaa2df9 12 };
Noximilien 4:02c63aaa2df9 13
Noximilien 31:becb8f6bf7b7 14 /**
Noximilien 31:becb8f6bf7b7 15 * Menu Class
Noximilien 31:becb8f6bf7b7 16 * @brief Describes the menu.
Noximilien 30:d454d0cb72bc 17 * @author Dmitrijs Griskovs
Noximilien 30:d454d0cb72bc 18 * @date 15/04/2019
Noximilien 30:d454d0cb72bc 19 */
Noximilien 4:02c63aaa2df9 20 class Menu {
Noximilien 31:becb8f6bf7b7 21 public:
Noximilien 31:becb8f6bf7b7 22 /** A constructor */
Noximilien 31:becb8f6bf7b7 23 Menu();
Noximilien 4:02c63aaa2df9 24
Noximilien 31:becb8f6bf7b7 25 /**
Noximilien 31:becb8f6bf7b7 26 * @brief Updates and Draws menu.
Noximilien 31:becb8f6bf7b7 27 * @details Updates and draws menu options. Also, allows to select an option availabe
Noximilien 31:becb8f6bf7b7 28 * from the enum. It return "true" statment if the user picked a menu option.
Noximilien 31:becb8f6bf7b7 29 */
Noximilien 31:becb8f6bf7b7 30 bool updateAndDraw();
Noximilien 31:becb8f6bf7b7 31
Noximilien 31:becb8f6bf7b7 32 /** Returns currently selected meny option */
Noximilien 31:becb8f6bf7b7 33 ScreenOption getCurrentScreenSelection();
Noximilien 4:02c63aaa2df9 34
Noximilien 31:becb8f6bf7b7 35 private:
Noximilien 31:becb8f6bf7b7 36 void pointerPosition(int menu_number);
Noximilien 31:becb8f6bf7b7 37 void drawPointer();
Noximilien 31:becb8f6bf7b7 38 int current_option;
Noximilien 4:02c63aaa2df9 39 };
Noximilien 4:02c63aaa2df9 40
Noximilien 4:02c63aaa2df9 41
Noximilien 4:02c63aaa2df9 42 #endif