mirror of
https://github.com/wang-bin/QtAV.git
synced 2026-10-18 21:21:29 +08:00
39 lines
841 B
C++
39 lines
841 B
C++
#ifndef SCREENSAVER_H
|
|
#define SCREENSAVER_H
|
|
|
|
#include "common_export.h"
|
|
#include <QtCore/QObject>
|
|
|
|
// TODO: read QtSystemInfo.ScreenSaver
|
|
|
|
class COMMON_EXPORT ScreenSaver : QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
static ScreenSaver& instance();
|
|
ScreenSaver();
|
|
~ScreenSaver();
|
|
// enable: just restore the previous settings. settings changed during the object life will ignored
|
|
bool enable(bool yes);
|
|
public slots:
|
|
void enable();
|
|
void disable();
|
|
protected:
|
|
virtual void timerEvent(QTimerEvent *);
|
|
private:
|
|
//return false if already called
|
|
bool retrieveState();
|
|
bool restoreState();
|
|
bool state_saved, modified;
|
|
#ifdef Q_OS_LINUX
|
|
bool isX11;
|
|
int timeout;
|
|
int interval;
|
|
int preferBlanking;
|
|
int allowExposures;
|
|
#endif //Q_OS_LINUX
|
|
int ssTimerId; //for mac
|
|
};
|
|
|
|
#endif // SCREENSAVER_H
|