|
/*
|
|
* 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
|