unleashed-firmware/applications/infrared/infrared_app_event.h
hedger 4d6b170769
[FL-2520] FW build with -Wextra (#1185)
* Fixing compiler warnings with -Wextra
* More warnings suppression, WIP
* Even more warning fixes
* Added new lines at end of text files.
* Padding fix
* Additional fixes to warnings on different build configurations; added -Wextra to default build pipeline
* Fixes for Secplus v1
* -additional warnings
* +-Wredundant-decls fixes
* FuriHal: print stack overflow task name in console
* FuriHal: add missing include

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-05-06 16:37:10 +03:00

48 lines
1.3 KiB
C++

/**
* @file infrared_app_event.h
* Infrared: Scene events description
*/
#pragma once
#include <infrared.h>
#include <gui/modules/dialog_ex.h>
/** Infrared events class */
class InfraredAppEvent {
public:
/** Type of event enum */
enum class Type : uint8_t {
/** Tick event come after no other events came in 100 ms */
Tick,
/** Exit application event */
Exit,
/** Back event */
Back,
/** Menu selected event type. Provided with payload value. */
MenuSelected,
/** Button press event. Need for continuous signal sending. */
MenuSelectedPress,
/** Button release event. Need for continuous signal sending. */
MenuSelectedRelease,
/** Events from DialogEx view module */
DialogExSelected,
/** Infrared signal received event */
InfraredMessageReceived,
/** Text edit done event */
TextEditDone,
/** Popup timer finished event */
PopupTimer,
/** Button panel pressed event */
ButtonPanelPressed,
};
union {
int32_t dummy;
/** Menu selected event type payload. Selected index. */
int32_t menu_index;
/** DialogEx view module event type payload */
DialogExResult dialog_ex_result;
} payload;
/** Type of event */
Type type;
};