#ifndef UI_H
#define UI_H

namespace Menus {
    class UI {
    public:
        UI();
        ~UI();
        
        void reset();
        void clear();
        
        void drawTitle(const char * text);
        void drawLabel(const char * text);
        void drawFlashingLabel(const char * text);
        bool drawAndCheckButton(const char * text);
        void drawLogo();
    
        void selectNextButton();
        void selectPreviousButton();
        void pressButton();
        void newLine();
    
    private:
        static const int PADDING_X = 3;
        static const int PADDING_Y = 4;
        static const int LINE_PADDING = 3;
        int next_y_pos;
        int nextY();
        int button_currently_selected;
        int button_currently_drawing;
        bool button_pressed_frame;
        int frame;
    };
};
#endif