diff options
Diffstat (limited to 'src/kernel/kernel.c')
-rw-r--r-- | src/kernel/kernel.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/kernel/kernel.c b/src/kernel/kernel.c index e7f3e26..ee63295 100644 --- a/src/kernel/kernel.c +++ b/src/kernel/kernel.c @@ -19,6 +19,8 @@ // TODO: move away from main! #include "drivers/video/vga.h" +#include "graphics_context.h" +#include "widget.h" static jmp_buf panic_jmp_buf; @@ -193,20 +195,25 @@ static void handle_keyboard_event( keyboard_event_t *event, void *context ) case MODE_TEXT: if( vga_set_mode( vga, vga_make_mode( VGA_MODE_TYPE_GRAPHICS, 320, 200, 8 ) ) ) { vga_clear_screen( vga, vga_make_RGB( 0x00, 0x00, 0xA8 ) ); - vga_draw_char( vga, 'A', 100, 100, vga_make_RGB( 0x00, 0x00, 0xA8 ), + vga_draw_char( vga, 'A', 10, 10, vga_make_RGB( 0x00, 0x00, 0xA8 ), vga_make_RGB( 0xFF, 0xFF, 0xFF ) ); - vga_draw_char( vga, 'B', 110, 100, vga_make_RGB( 0x00, 0x00, 0xA8 ), + vga_draw_char( vga, 'B', 20, 10, vga_make_RGB( 0x00, 0x00, 0xA8 ), vga_make_RGB( 0xFF, 0xFF, 0xFF ) ); - vga_draw_char( vga, 'C', 120, 100, vga_make_RGB( 0x00, 0x00, 0xA8 ), + vga_draw_char( vga, 'C', 30, 10, vga_make_RGB( 0x00, 0x00, 0xA8 ), vga_make_RGB( 0xFF, 0xFF, 0xFF ) ); - vga_draw_char( vga, 'D', 130, 100, vga_make_RGB( 0x00, 0x00, 0xA8 ), + vga_draw_char( vga, 'D', 40, 10, vga_make_RGB( 0x00, 0x00, 0xA8 ), vga_make_RGB( 0xFF, 0xFF, 0xFF ) ); - vga_draw_char( vga, 'E', 140, 100, vga_make_RGB( 0x00, 0x00, 0xA8 ), + vga_draw_char( vga, 'E', 50, 10, vga_make_RGB( 0x00, 0x00, 0xA8 ), vga_make_RGB( 0xFF, 0xFF, 0xFF ) ); - vga_draw_char( vga, 'F', 150, 100, vga_make_RGB( 0x00, 0x00, 0xA8 ), + vga_draw_char( vga, 'F', 60, 10, vga_make_RGB( 0x00, 0x00, 0xA8 ), vga_make_RGB( 0xFF, 0xFF, 0xFF ) ); - vga_draw_char( vga, 'G', 160, 100, vga_make_RGB( 0x00, 0x00, 0xA8 ), + vga_draw_char( vga, 'G', 70, 10, vga_make_RGB( 0x00, 0x00, 0xA8 ), vga_make_RGB( 0xFF, 0xFF, 0xFF ) ); + + widget_t widget; + widget_init( &widget, NULL, 50, 50, 60, 70 ); + // as vga_t is equals to the graphical context for now + widget.vtable->draw( &widget, &global_context->vga ); } global_context->mode = MODE_GRAPHICS; break; |