#ifndef __XSCREENSAVER_H__ #define __XSCREENSAVER_H__ #include #include #include struct SaverHack { edelib::String name; edelib::String exec; unsigned int sindex; }; /* TODO: edelib list::sort() bug */ inline bool saver_hack_cmp(SaverHack* const& s1, SaverHack* const& s2) { return s1->name < s2->name; } typedef edelib::list HackList; typedef edelib::list::iterator HackListIter; enum SaverMode { SAVER_OFF, SAVER_BLANK, SAVER_ONE, SAVER_RANDOM }; struct SaverPrefs { HackList hacks; unsigned int curr_hack; int timeout; SaverMode mode; bool dpms_enabled; int dpms_standby; int dpms_suspend; int dpms_off; }; bool xscreensaver_run_daemon(Display* py); SaverPrefs *xscreensaver_read_config(void); void xscreensaver_save_config(SaverPrefs *sp); void xscreensaver_preview(int id, const char* name); void xscreensaver_kill_preview(void); #endif