CaryCoders / Mbed 2 deprecated SX1276_GPS

Dependencies:   SX1276Lib AdaFruit_RGBLCD MCP23017 mbed

Fork of AdaFruit_RGBLCD by Justin Howard

Committer:
vtraveller
Date:
Thu Oct 09 08:03:20 2014 +0000
Revision:
25:24654d08a99a
Updated with new LCD and Key abstraction (to support different LCDs and Keyboard input).

Who changed what in which revision?

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