unleashed-firmware/applications/subghz/scenes/subghz_scene_frequency_analyzer.c
Nikolay Minaylov 4526503d81
[FL-2456] App notifications update (#1175)
* Notifications update: SubGHz
* Notifications: ibutton, infrared, rfid
2022-04-28 20:20:59 +03:00

37 lines
1.4 KiB
C

#include "../subghz_i.h"
#include "../views/subghz_frequency_analyzer.h"
#include <dolphin/dolphin.h>
void subghz_scene_frequency_analyzer_callback(SubGhzCustomEvent event, void* context) {
furi_assert(context);
SubGhz* subghz = context;
view_dispatcher_send_custom_event(subghz->view_dispatcher, event);
}
void subghz_scene_frequency_analyzer_on_enter(void* context) {
SubGhz* subghz = context;
DOLPHIN_DEED(DolphinDeedSubGhzFrequencyAnalyzer);
subghz_frequency_analyzer_set_callback(
subghz->subghz_frequency_analyzer, subghz_scene_frequency_analyzer_callback, subghz);
view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewIdFrequencyAnalyzer);
}
bool subghz_scene_frequency_analyzer_on_event(void* context, SceneManagerEvent event) {
SubGhz* subghz = context;
if(event.type == SceneManagerEventTypeCustom) {
if(event.event == SubGhzCustomEventSceneAnalyzerLock) {
notification_message(subghz->notifications, &sequence_set_green_255);
return true;
} else if(event.event == SubGhzCustomEventSceneAnalyzerUnlock) {
notification_message(subghz->notifications, &sequence_reset_rgb);
return true;
}
}
return false;
}
void subghz_scene_frequency_analyzer_on_exit(void* context) {
SubGhz* subghz = context;
notification_message(subghz->notifications, &sequence_reset_rgb);
}