timed-remote

Flipper Zero app for sending delayed IR commands
git clone git://src.adamsgaard.dk/timed-remote # fast
git clone https://src.adamsgaard.dk/timed-remote.git # slow
Log | Files | Refs | README | LICENSE Back to index

timed_remote_scene.h (2257B)


      1 #pragma once
      2 
      3 #include <gui/scene_manager.h>
      4 
      5 /* Scene IDs */
      6 typedef enum {
      7   TimedRemoteSceneIrBrowse,
      8   TimedRemoteSceneIrSelect,
      9   TimedRemoteSceneTimerConfig,
     10   TimedRemoteSceneTimerRunning,
     11   TimedRemoteSceneConfirm,
     12   TimedRemoteSceneCount,
     13 } TimedRemoteScene;
     14 
     15 /* Scene event IDs */
     16 typedef enum {
     17   TimedRemoteSceneEventConsumed = true,
     18   TimedRemoteSceneEventNotConsumed = false,
     19 } TimedRemoteSceneEvent;
     20 
     21 /* Custom events */
     22 typedef enum {
     23   /* File/signal selected */
     24   TimedRemoteEventFileSelected,
     25   TimedRemoteEventSignalSelected,
     26   /* Timer configuration */
     27   TimedRemoteEventModeChanged,
     28   TimedRemoteEventTimerConfigured,
     29   /* Timer events */
     30   TimedRemoteEventTimerTick,
     31   TimedRemoteEventTimerFired,
     32   /* Confirmation */
     33   TimedRemoteEventConfirmDone,
     34 } TimedRemoteCustomEvent;
     35 
     36 /* Scene handlers - declared extern, defined in individual scene files */
     37 extern void timed_remote_scene_ir_browse_on_enter(void *context);
     38 extern bool timed_remote_scene_ir_browse_on_event(void *context,
     39                                                   SceneManagerEvent event);
     40 extern void timed_remote_scene_ir_browse_on_exit(void *context);
     41 
     42 extern void timed_remote_scene_ir_select_on_enter(void *context);
     43 extern bool timed_remote_scene_ir_select_on_event(void *context,
     44                                                   SceneManagerEvent event);
     45 extern void timed_remote_scene_ir_select_on_exit(void *context);
     46 
     47 extern void timed_remote_scene_timer_config_on_enter(void *context);
     48 extern bool timed_remote_scene_timer_config_on_event(void *context,
     49                                                      SceneManagerEvent event);
     50 extern void timed_remote_scene_timer_config_on_exit(void *context);
     51 
     52 extern void timed_remote_scene_timer_running_on_enter(void *context);
     53 extern bool timed_remote_scene_timer_running_on_event(void *context,
     54                                                       SceneManagerEvent event);
     55 extern void timed_remote_scene_timer_running_on_exit(void *context);
     56 
     57 extern void timed_remote_scene_confirm_on_enter(void *context);
     58 extern bool timed_remote_scene_confirm_on_event(void *context,
     59                                                 SceneManagerEvent event);
     60 extern void timed_remote_scene_confirm_on_exit(void *context);