Merge branch 'master' of prs.goyet.com:~/scm/calcos

This commit is contained in:
Romain Goyet
2015-09-20 11:02:08 +02:00
2 changed files with 16 additions and 4 deletions

View File

@@ -22,14 +22,19 @@ static FltkKbd * sKeyboard;
void init_platform() {
Fl::visual(FL_RGB);
int margin = 10;
int screen_width = FRAMEBUFFER_WIDTH;
int screen_height = FRAMEBUFFER_HEIGHT;
// keyboard_width == screen_width
int keyboard_height = screen_width;
Fl_Window * window = new Fl_Window(FRAMEBUFFER_WIDTH+2*margin, FRAMEBUFFER_HEIGHT+2*margin+120+2*margin);
Fl_Window * window = new Fl_Window(screen_width+2*margin, margin+screen_height+margin+keyboard_height+margin);
sDisplay = new FltkLCD(margin, margin, FRAMEBUFFER_WIDTH, FRAMEBUFFER_HEIGHT);
sDisplay = new FltkLCD(margin, margin, screen_width, screen_height);
assert(FRAMEBUFFER_BITS_PER_PIXEL == 8);
sKeyboard = new FltkKbd(margin,FRAMEBUFFER_HEIGHT+3*margin,FRAMEBUFFER_WIDTH,120);
sKeyboard = new FltkKbd(margin, margin+screen_height+margin, screen_width, keyboard_height);
window->end();
window->show(NULL, NULL);

View File

@@ -1,8 +1,15 @@
#include <assert.h>
#include "fltkkbd.h"
#define KEYBOARD_ROWS 7
#define KEYBOARD_COLUMNS 5
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<ION_NUMBER_OF_KEYS; k++) {
m_buttons[k] = new Fl_Button(x+(k*w)/ION_NUMBER_OF_KEYS, y, w/ION_NUMBER_OF_KEYS, h);
m_buttons[k] = new Fl_Button(x + (k%KEYBOARD_COLUMNS)*key_width, y + (k/KEYBOARD_COLUMNS)*key_height, key_width, key_height);
}
end();
}