From 1e666da666081bece2c244c2297d08801add3103 Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Sat, 15 Jul 2023 22:16:00 +0200 Subject: Add cursors and fully functioning chain workflow --- src/drawing.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/drawing.c') diff --git a/src/drawing.c b/src/drawing.c index 8cd63db..b7d5421 100644 --- a/src/drawing.c +++ b/src/drawing.c @@ -1151,6 +1151,24 @@ clear_cursors(void) { } } +void +draw_pattern_chain_cursor(void) { + size_t offset_x = (PAT_TRIG_H + 7) * (param_selection_loc % 8); + size_t offset_y = param_selection_loc < 8 ? 0 : 0 + PAT_TRIG_OFFSET_Y; + size_t x0 = PAT_TRIG_START_X + offset_x; + size_t x1 = PAT_TRIG_START_X + offset_x + PAT_TRIG_W; + size_t y = PAT_TRIG_START_Y + offset_y + PAT_TRIG_H + 2; + switch (settings.cursor) { + case CURSOR_THICK_LINE: { + draw_line(x0, y, x1, y, COL_ACC_0); + draw_line(x0, y + 1, x1, y + 1, COL_ACC_0); + } break; + default: { + draw_line(x0, y, x1, y, COL_ACC_0); + } break; + } +} + void draw_cursors(void) { clear_cursors(); @@ -1184,6 +1202,9 @@ draw_cursors(void) { input_handler == handle_param_selection_ch4) { draw_params_cursor(param_selection_loc, COL_ACC_0); } + if (input_handler == handle_pattern_chain) { + draw_pattern_chain_cursor(); + } } TriggerNote * get_current_trig(void); -- cgit v1.2.1