diff --git a/ion/src/shared/keyboard.c b/ion/src/shared/keyboard.c index ebecb25cf..23490fd36 100644 --- a/ion/src/shared/keyboard.c +++ b/ion/src/shared/keyboard.c @@ -1,7 +1,7 @@ #include #include -char charForKey[ION_NUMBER_OF_KEYS] = { +static const char charForKey[ION_NUMBER_OF_KEYS] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', diff --git a/ion/src/simulator/keyboard/fltkkbd.cpp b/ion/src/simulator/keyboard/fltkkbd.cpp index a9cf4d81e..d8eb2969f 100644 --- a/ion/src/simulator/keyboard/fltkkbd.cpp +++ b/ion/src/simulator/keyboard/fltkkbd.cpp @@ -4,12 +4,28 @@ #define KEYBOARD_ROWS 7 #define KEYBOARD_COLUMNS 5 +// TODO(raimundo): do this in a clean way with no duplication. +// A bit ugly but we need a null terminated string from a single char. +static const char* charForKey[KEYBOARD_ROWS * KEYBOARD_COLUMNS] = { + "A", "B", "C", "D", "E", + "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", + "7", "8", "9", "(", ")", + "4", "5", "6", "*", "/", + "1", "2", "3", "+", "-", + "0", ".", "x", "7", "X" +}; + FltkKbd::FltkKbd(int x, int y, int w, int h) : Fl_Group(x, y, w, h) { assert(KEYBOARD_ROWS*KEYBOARD_COLUMNS == ION_NUMBER_OF_KEYS); int key_width = w/KEYBOARD_COLUMNS; int key_height = h/KEYBOARD_ROWS; for (int k=0; k