aboutsummaryrefslogtreecommitdiffstats
path: root/src/drawing.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/drawing.c')
-rw-r--r--src/drawing.c40
1 files changed, 35 insertions, 5 deletions
diff --git a/src/drawing.c b/src/drawing.c
index 0f6afb0..83ffb50 100644
--- a/src/drawing.c
+++ b/src/drawing.c
@@ -80,7 +80,7 @@ draw_trigger(size_t chan, size_t i) {
80 size_t offset_y = i < 8 ? 0 : TRIG_OFFSET_Y; 80 size_t offset_y = i < 8 ? 0 : TRIG_OFFSET_Y;
81 size_t x = TRIG_START_X + offset_x; 81 size_t x = TRIG_START_X + offset_x;
82 size_t y = TRIG_START_Y + offset_y; 82 size_t y = TRIG_START_Y + offset_y;
83 u32 *tile = &note_name_sprites[4 * trig.note]; 83 const u32 *tile = &note_name_sprites[4 * trig.note];
84 draw_icn(x, y, &tile[0], COL_FG, 1, 0); 84 draw_icn(x, y, &tile[0], COL_FG, 1, 0);
85 draw_icn(x + 8, y, &tile[2], COL_FG, 1, 0); 85 draw_icn(x + 8, y, &tile[2], COL_FG, 1, 0);
86 } else { 86 } else {
@@ -99,11 +99,11 @@ draw_trig_cursor(size_t i, u8 clr) {
99} 99}
100 100
101void 101void
102draw_right_col_cursor(u8 clr) { 102draw_right_col_cursor(int i, u8 clr) {
103 size_t x0 = 0; 103 size_t x0 = 0;
104 size_t x1 = 0; 104 size_t x1 = 0;
105 size_t y = 0; 105 size_t y = 0;
106 switch (right_col_selection_loc) { 106 switch (i) {
107 case R_COL_BPM: { 107 case R_COL_BPM: {
108 x0 = BPM_START_X; 108 x0 = BPM_START_X;
109 x1 = x0 + R_COL_W; 109 x1 = x0 + R_COL_W;
@@ -593,7 +593,7 @@ draw_parameters_wave(void) {
593 593
594 // Draw default wave buttons. 594 // Draw default wave buttons.
595 { 595 {
596 u32 *tile = default_wave_buttons; 596 const u32 *tile = default_wave_buttons;
597 size_t x = PARAMS_START_X; 597 size_t x = PARAMS_START_X;
598 size_t y = PARAMS_START_Y + PARAMS_H - 12; 598 size_t y = PARAMS_START_Y + PARAMS_H - 12;
599 for (size_t i = 0, k = 0; i < 4 * 2; i += 2, k++) { 599 for (size_t i = 0, k = 0; i < 4 * 2; i += 2, k++) {
@@ -1246,6 +1246,36 @@ draw_parameters(void) {
1246} 1246}
1247 1247
1248void 1248void
1249draw_cursors(void) { 1249clear_cursors(void) {
1250 draw_trig_cursor(last_trig_loc, COL_BG);
1251 draw_channel_cursor(last_channel_loc, COL_BG);
1252 draw_pattern_cursor(last_pattern_loc, COL_BG);
1253 draw_right_col_cursor(last_right_col_loc, COL_BG);
1254}
1250 1255
1256void
1257draw_cursors(void) {
1258 clear_cursors();
1259 if (input_handler == handle_trigger_selection) {
1260 draw_trig_cursor(trig_selection_loc, COL_CURSOR);
1261 }
1262 if (input_handler == handle_channel_selection) {
1263 draw_channel_cursor(channel_selection_loc, COL_CURSOR);
1264 } else {
1265 draw_channel_cursor(channel_selection_loc, COL_GREY);
1266 }
1267 if (input_handler == handle_pattern_selection) {
1268 draw_pattern_cursor(pattern_selection_loc, COL_CURSOR);
1269 } else {
1270 draw_pattern_cursor(pattern_selection_loc, COL_GREY);
1271 }
1272 if (input_handler == handle_right_col_selection) {
1273 draw_right_col_cursor(right_col_selection_loc, COL_CURSOR);
1274 }
1275 if (input_handler == handle_param_selection_sq1 ||
1276 input_handler == handle_param_selection_sq2 ||
1277 input_handler == handle_param_selection_wave ||
1278 input_handler == handle_param_selection_noise) {
1279 draw_params_cursor(param_selection_loc, COL_CURSOR);
1280 }
1251} 1281}