/*
* DWN - Desktop Window Manager
* retoor <retoor@molodetz.nl>
* Demo mode - automated feature showcase
*/
#ifndef DWN_DEMO_H
#define DWN_DEMO_H
#include <stdbool.h>
typedef enum {
DEMO_IDLE,
DEMO_INTRO,
DEMO_WINDOW_MGMT,
DEMO_WORKSPACES,
DEMO_LAYOUTS,
DEMO_SNAPPING,
DEMO_PANELS,
DEMO_AI,
DEMO_NEWS,
DEMO_SHORTCUTS,
DEMO_COMPLETE
} DemoPhase;
typedef enum {
DEMO_WAIT_NONE,
DEMO_WAIT_TIME,
DEMO_WAIT_WINDOW_SPAWN,
DEMO_WAIT_AI_RESPONSE,
DEMO_WAIT_EXA_RESPONSE
} DemoWaitCondition;
void demo_init(void);
void demo_cleanup(void);
void demo_start(void);
void demo_stop(void);
void demo_update(void);
bool demo_is_active(void);
DemoPhase demo_get_phase(void);
int demo_get_step(void);
const char *demo_get_phase_name(DemoPhase phase);
#endif