Justin Howard / Mbed 2 deprecated AdaFruit_RGBLCD

Dependencies:   AdaFruit_RGBLCDShield MCP23017 mbed RTclock

Dependents:   SX1276_GPS

Fork of MCP_test by Wim Huiskamp

Committer:
vtraveller
Date:
Mon Aug 11 19:11:43 2014 +0000
Revision:
13:9641bc42db92
Child:
17:731a47339cb8
Created a scrollable menu system based on modules to work against the Adafruit RGB LCD library.; Modules can be created and installed as menu items with display, cursor and edit capabilities.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vtraveller 13:9641bc42db92 1 #ifndef __MENUMANAGER_H__
vtraveller 13:9641bc42db92 2 #define __MENUMANAGER_H__
vtraveller 13:9641bc42db92 3
vtraveller 13:9641bc42db92 4 class MenuManager
vtraveller 13:9641bc42db92 5 {
vtraveller 13:9641bc42db92 6 protected:
vtraveller 13:9641bc42db92 7 enum EModes
vtraveller 13:9641bc42db92 8 {
vtraveller 13:9641bc42db92 9 eModeMenu = 0,
vtraveller 13:9641bc42db92 10 eModeSelect,
vtraveller 13:9641bc42db92 11 eModeChange,
vtraveller 13:9641bc42db92 12 eModeLast
vtraveller 13:9641bc42db92 13 };
vtraveller 13:9641bc42db92 14
vtraveller 13:9641bc42db92 15 public:
vtraveller 13:9641bc42db92 16 MenuManager
vtraveller 13:9641bc42db92 17 (
vtraveller 13:9641bc42db92 18 Module ** in_pModules,
vtraveller 13:9641bc42db92 19 size_t in_nModules,
vtraveller 13:9641bc42db92 20 Adafruit_RGBLCDShield & in_cLCD
vtraveller 13:9641bc42db92 21 );
vtraveller 13:9641bc42db92 22 void loop();
vtraveller 13:9641bc42db92 23
vtraveller 13:9641bc42db92 24 protected:
vtraveller 13:9641bc42db92 25 void changeModule(bool in_bUp);
vtraveller 13:9641bc42db92 26 void createChars();
vtraveller 13:9641bc42db92 27 void initialise();
vtraveller 13:9641bc42db92 28 void processKeys(uint8_t in_nKeys);
vtraveller 13:9641bc42db92 29 void setCursor
vtraveller 13:9641bc42db92 30 (
vtraveller 13:9641bc42db92 31 bool in_bCursor,
vtraveller 13:9641bc42db92 32 bool in_bBlink
vtraveller 13:9641bc42db92 33 );
vtraveller 13:9641bc42db92 34 void showModules(bool in_bRefresh = false);
vtraveller 13:9641bc42db92 35 void showTracking(bool in_bShow);
vtraveller 13:9641bc42db92 36 void updateDisplay();
vtraveller 13:9641bc42db92 37
vtraveller 13:9641bc42db92 38 protected:
vtraveller 13:9641bc42db92 39 Module ** m_pModules;
vtraveller 13:9641bc42db92 40 size_t m_nModules;
vtraveller 13:9641bc42db92 41 Adafruit_RGBLCDShield & m_cLCD;
vtraveller 13:9641bc42db92 42 EModes m_eMode;
vtraveller 13:9641bc42db92 43 size_t m_nMenuPos;
vtraveller 13:9641bc42db92 44 size_t m_nIndex;
vtraveller 13:9641bc42db92 45 int m_nCursorX, m_nCursorY;
vtraveller 13:9641bc42db92 46 };
vtraveller 13:9641bc42db92 47
vtraveller 13:9641bc42db92 48 #endif /* __MENUMANAGER_H__ */