From 687e627daeb43365cc064bd6b11fed4df99154c1 Mon Sep 17 00:00:00 2001 From: Jared Boone Date: Tue, 1 Sep 2015 21:04:27 -0700 Subject: [PATCH] Mechanism to clear waterfall when switching modulations. --- firmware/application/ui_receiver.cpp | 2 ++ firmware/application/ui_spectrum.hpp | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/firmware/application/ui_receiver.cpp b/firmware/application/ui_receiver.cpp index 2ff8c8f2..97cc21db 100644 --- a/firmware/application/ui_receiver.cpp +++ b/firmware/application/ui_receiver.cpp @@ -567,6 +567,8 @@ void ReceiverView::on_modulation_changed(int32_t modulation) { receiver_model.set_baseband_bandwidth(1750000); break; } + + waterfall.clear(); } void ReceiverView::on_show_options_frequency() { diff --git a/firmware/application/ui_spectrum.hpp b/firmware/application/ui_spectrum.hpp index aba04a48..cc1fa314 100644 --- a/firmware/application/ui_spectrum.hpp +++ b/firmware/application/ui_spectrum.hpp @@ -75,6 +75,12 @@ public: draw_frequency_ticks(painter, r); } + void clear() { + spectrum_sampling_rate = 0; + spectrum_bins = 0; + set_dirty(); + } + private: static constexpr Dim filter_band_height = 4; @@ -197,6 +203,13 @@ public: (void)painter; } + void clear() { + display.fill_rectangle( + screen_rect(), + Color::black() + ); + } + void on_channel_spectrum( const ChannelSpectrum& spectrum ) { @@ -260,6 +273,11 @@ public: (void)painter; } + void clear() { + waterfall_view.clear(); + frequency_scale.clear(); + } + private: WaterfallView waterfall_view; FrequencyScale frequency_scale;