|
@@ -1,7 +1,7 @@
|
|
|
#include <furi.h>
|
|
#include <furi.h>
|
|
|
#include <furi_hal.h>
|
|
#include <furi_hal.h>
|
|
|
#include <input/input.h>
|
|
#include <input/input.h>
|
|
|
-#include <m-string.h>
|
|
|
|
|
|
|
+#include <core/string.h>
|
|
|
#include <stdlib.h>
|
|
#include <stdlib.h>
|
|
|
|
|
|
|
|
#include <gui/gui.h>
|
|
#include <gui/gui.h>
|
|
@@ -65,23 +65,22 @@ static void render_callback(Canvas* const canvas, void* ctx) {
|
|
|
const MetronomeState* metronome_state = (MetronomeState*)ctx;
|
|
const MetronomeState* metronome_state = (MetronomeState*)ctx;
|
|
|
furi_mutex_acquire(metronome_state->mutex, FuriWaitForever);
|
|
furi_mutex_acquire(metronome_state->mutex, FuriWaitForever);
|
|
|
|
|
|
|
|
- string_t tempStr;
|
|
|
|
|
- string_init(tempStr);
|
|
|
|
|
|
|
+ FuriString* tempStr = furi_string_alloc();
|
|
|
|
|
|
|
|
canvas_draw_frame(canvas, 0, 0, 128, 64);
|
|
canvas_draw_frame(canvas, 0, 0, 128, 64);
|
|
|
|
|
|
|
|
canvas_set_font(canvas, FontPrimary);
|
|
canvas_set_font(canvas, FontPrimary);
|
|
|
|
|
|
|
|
// draw bars/beat
|
|
// draw bars/beat
|
|
|
- string_printf(tempStr, "%d/%d", metronome_state->beats_per_bar, metronome_state->note_length);
|
|
|
|
|
- canvas_draw_str_aligned(canvas, 64, 8, AlignCenter, AlignCenter, string_get_cstr(tempStr));
|
|
|
|
|
- string_reset(tempStr);
|
|
|
|
|
|
|
+ furi_string_printf(tempStr, "%d/%d", metronome_state->beats_per_bar, metronome_state->note_length);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 64, 8, AlignCenter, AlignCenter, furi_string_get_cstr(tempStr));
|
|
|
|
|
+ furi_string_reset(tempStr);
|
|
|
|
|
|
|
|
// draw BPM value
|
|
// draw BPM value
|
|
|
- string_printf(tempStr, "%.2f", metronome_state->bpm);
|
|
|
|
|
|
|
+ furi_string_printf(tempStr, "%.2f", metronome_state->bpm);
|
|
|
canvas_set_font(canvas, FontBigNumbers);
|
|
canvas_set_font(canvas, FontBigNumbers);
|
|
|
- canvas_draw_str_aligned(canvas, 64, 24, AlignCenter, AlignCenter, string_get_cstr(tempStr));
|
|
|
|
|
- string_reset(tempStr);
|
|
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 64, 24, AlignCenter, AlignCenter, furi_string_get_cstr(tempStr));
|
|
|
|
|
+ furi_string_reset(tempStr);
|
|
|
|
|
|
|
|
// draw volume indicator
|
|
// draw volume indicator
|
|
|
// always draw first waves
|
|
// always draw first waves
|
|
@@ -111,7 +110,7 @@ static void render_callback(Canvas* const canvas, void* ctx) {
|
|
|
elements_progress_bar(canvas, 8, 36, 112, (float)metronome_state->current_beat/metronome_state->beats_per_bar);
|
|
elements_progress_bar(canvas, 8, 36, 112, (float)metronome_state->current_beat/metronome_state->beats_per_bar);
|
|
|
|
|
|
|
|
// cleanup
|
|
// cleanup
|
|
|
- string_clear(tempStr);
|
|
|
|
|
|
|
+ furi_string_free(tempStr);
|
|
|
furi_mutex_release(metronome_state->mutex);
|
|
furi_mutex_release(metronome_state->mutex);
|
|
|
}
|
|
}
|
|
|
|
|
|