mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-03-18 21:30:38 +01:00
Merge branch 'master' of prs.goyet.com:~/scm/calcos
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user