From caca33c9f0315d0f7b722d84cfa84e8b47f82c1c Mon Sep 17 00:00:00 2001 From: erdgeist Date: Mon, 2 Apr 2018 01:38:48 +0200 Subject: be more precise regarding harfe config source and connect state --- engine.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/engine.c b/engine.c index 0e8c34e..2b6e261 100644 --- a/engine.c +++ b/engine.c @@ -11,6 +11,7 @@ static int g_selected_string = -1; #ifndef NO_DISPLAY #include "display.h" +#include "menu.h" static LPoint g_render_points[1024]; static int g_render_point_count; @@ -32,9 +33,14 @@ engine_redraw() display_clear(); display_getdimensions(&MAX_X, &MAX_Y, &FONT_HEIGHT); - snprintf( text, sizeof(text), g_harfe_connected ? "online (%s)" : "offline (%s)", config_hints[(int)g_config_source]); + if (!g_importing_config) + snprintf( text, sizeof(text), g_harfe_connected ? "online (%s)" : "offline (%s)", config_hints[(int)g_config_source]); + else + snprintf( text, sizeof(text), "importing config (%s)", config_hints[(int)g_config_source]); display_text(text, 8, MAX_Y - 4, g_harfe_connected ? 0x00ff3fff : 0xff003fff ); + menu_redraw(); + if (height) { int b = g_midi_three_octave_split_inverse; display_text( b ? "+1" : "-1", 4, scale(g_min_y + tos1 * height / 200) + FONT_HEIGHT / 2, 0x007f7f7fff); @@ -132,7 +138,11 @@ engine_select_config(ConfigSelect sel) { l->p1.y = g_max_y; } } - } + menu_setmode(0x17, 0); + } else + if (!g_string_count || menu_setmode(0x17, 4)) + return; + g_selected_config = sel; } -- cgit v1.2.3