diff options
Diffstat (limited to 'src/scenes/scenes.h')
| -rw-r--r-- | src/scenes/scenes.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/scenes/scenes.h b/src/scenes/scenes.h index f4ba579..3c420d3 100644 --- a/src/scenes/scenes.h +++ b/src/scenes/scenes.h @@ -7,12 +7,18 @@ #define SCENE_STACK_SIZE 16 typedef enum { + /// The full screen blackout POPUP_REVEALING, - POPUP_REVEALING_ALT, + /// The popup of a transparent scene + POPUP_REVEALING_OVERLAY, + /// The scene is actively rendered POPUP_ACTIVE, + /// The full screen blackout POPUP_HIDING, - POPUP_HIDING_ALT, + /// The popup of a transparent scene + POPUP_HIDING_OVERLAY, } PopUpState; + static const int SCROLL_SPEED = 8; static const int BLACKOUT_SPEED = 3; @@ -23,6 +29,9 @@ typedef struct { bool (*Update)(void *self); bool (*Draw)(void *self); void (*Deint)(void *self); + /// Is called when the scene becomes active after the next scene was popped + void (*Reopen)(void *self, PopUpState PreviousSceneState); + PopUpState (*GetCurrentState)(void *self); /// A generic pointer to whatever data the scene needs. You will have to /// cast it yourself void *data; |
