diff options
Diffstat (limited to 'apps/paint/main.c')
-rw-r--r-- | apps/paint/main.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/apps/paint/main.c b/apps/paint/main.c index e537004..464a925 100644 --- a/apps/paint/main.c +++ b/apps/paint/main.c @@ -30,26 +30,30 @@ static void color_click(struct gui_event_mouse *event) current_color = colors[event->widget - 2]; } +// TODO: Simplify using predefined widgets and utilities int main(void) { - u32 win; - gui_new_window(&win); + u32 win = gui_new_window(APPNAME); vec2 win_size = gui_window_size(win); - u32 toolbar = gui_new_widget(win, GUI_MAIN, vec2(0, 0), vec2(win_size.x, COLOR_SIZE)); + u32 toolbar = gui_new_widget(win, GUI_MAIN, vec2(0, 0), + vec2(win_size.x, COLOR_SIZE + 2 * TOOLBAR_MARGIN)); gui_fill(win, toolbar, GUI_LAYER_BG, COLOR_WHITE); u32 color_count = COUNT(colors); for (u32 i = 0; i < color_count; i++) { - u32 color = gui_new_widget(win, toolbar, vec2(i * (COLOR_SIZE + TOOLBAR_MARGIN), 0), + u32 color = gui_new_widget(win, toolbar, + vec2(TOOLBAR_MARGIN + i * (COLOR_SIZE + TOOLBAR_MARGIN), + TOOLBAR_MARGIN), vec2(COLOR_SIZE, COLOR_SIZE)); gui_fill(win, color, GUI_LAYER_FG, colors[i]); gui_draw_border(win, color, GUI_LAYER_FG, 2, COLOR_BLACK); gui_listen_widget(win, color, GUI_LISTEN_MOUSECLICK, (u32)color_click); } - u32 canvas = gui_new_widget(win, GUI_MAIN, vec2(0, COLOR_SIZE), - vec2(win_size.x, win_size.y - COLOR_SIZE)); + u32 canvas = + gui_new_widget(win, GUI_MAIN, vec2(0, COLOR_SIZE + 2 * TOOLBAR_MARGIN), + vec2(win_size.x, win_size.y - (COLOR_SIZE + 2 * TOOLBAR_MARGIN))); gui_fill(win, canvas, GUI_LAYER_BG, COLOR_WHITE); gui_listen_widget(win, canvas, GUI_LISTEN_MOUSEMOVE, (u32)mousemove); |