Justin Howard / Mbed 2 deprecated AdaFruit_RGBLCD

Dependencies:   AdaFruit_RGBLCDShield MCP23017 mbed RTclock

Dependents:   SX1276_GPS

Fork of MCP_test by Wim Huiskamp

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MenuManager.h Source File

MenuManager.h

00001 #ifndef __MENUMANAGER_H__
00002 #define __MENUMANAGER_H__
00003 
00004 #include "lcd.h"
00005 #include "keys.h"
00006 
00007 class MenuManager
00008 {    
00009 public:
00010     MenuManager
00011     (
00012         Module **               in_pModules,
00013         size_t                  in_nModules,
00014         LCD &                   in_cLCD,
00015         Keys &                  in_cKeys
00016     );    
00017     void loop();
00018 
00019 protected:
00020     void changeModule(bool in_bUp);
00021     void createChars();
00022     void initialise();
00023     void processKeys(uint8_t in_nKeys);
00024     void setCursor
00025     (
00026         bool        in_bCursor,
00027         bool        in_bBlink
00028     );
00029     void setMode(Module::EModes in_eMode);    
00030     void showModules(bool in_bRefresh = false);
00031     void showTracking(bool in_bShow);
00032     void updateDisplay();
00033 
00034 protected:
00035     Module **               m_pModules;
00036     size_t                  m_nModules;    
00037     LCD &                   m_cLCD;
00038     Keys &                  m_cKeys;
00039     Module::EModes          m_eMode;
00040     size_t                  m_nMenuPos;
00041     size_t                  m_nIndex;
00042     int                     m_nCursorX, m_nCursorY;
00043 };
00044 
00045 #endif /* __MENUMANAGER_H__ */