Olivier Smeesters
/
DtmfKit
A DTMF sequence editor and player for HAM radio equipment command & control.
edit_state.cpp@0:1324e7d9d471, 2011-03-07 (annotated)
- Committer:
- osmeest
- Date:
- Mon Mar 07 22:51:19 2011 +0000
- Revision:
- 0:1324e7d9d471
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
osmeest | 0:1324e7d9d471 | 1 | #include "system_states.hpp" |
osmeest | 0:1324e7d9d471 | 2 | #include "system.hpp" |
osmeest | 0:1324e7d9d471 | 3 | #include "display_manager.hpp" |
osmeest | 0:1324e7d9d471 | 4 | |
osmeest | 0:1324e7d9d471 | 5 | void EditState::enterState() { |
osmeest | 0:1324e7d9d471 | 6 | DisplayManager *display = system()->display(); |
osmeest | 0:1324e7d9d471 | 7 | display->hideCursor(); |
osmeest | 0:1324e7d9d471 | 8 | display->writeStatus("Edit: <*>Cmd"); |
osmeest | 0:1324e7d9d471 | 9 | updateText(); |
osmeest | 0:1324e7d9d471 | 10 | } |
osmeest | 0:1324e7d9d471 | 11 | |
osmeest | 0:1324e7d9d471 | 12 | void EditState::handleKey(char key) |
osmeest | 0:1324e7d9d471 | 13 | { |
osmeest | 0:1324e7d9d471 | 14 | if (key == '@') { |
osmeest | 0:1324e7d9d471 | 15 | system()->setState(System::Command); |
osmeest | 0:1324e7d9d471 | 16 | } |
osmeest | 0:1324e7d9d471 | 17 | else if (key == '$') { |
osmeest | 0:1324e7d9d471 | 18 | // ignored for the time being |
osmeest | 0:1324e7d9d471 | 19 | } |
osmeest | 0:1324e7d9d471 | 20 | else { |
osmeest | 0:1324e7d9d471 | 21 | handleSymbol(key); |
osmeest | 0:1324e7d9d471 | 22 | } |
osmeest | 0:1324e7d9d471 | 23 | } |
osmeest | 0:1324e7d9d471 | 24 | |
osmeest | 0:1324e7d9d471 | 25 | void EditState::handleSymbol(char ch) const { |
osmeest | 0:1324e7d9d471 | 26 | system()->insertSymbol(ch); |
osmeest | 0:1324e7d9d471 | 27 | updateText(); |
osmeest | 0:1324e7d9d471 | 28 | } |
osmeest | 0:1324e7d9d471 | 29 |