MythTV
master
mythtv
libs
libmythui
mythscreensaver.cpp
Go to the documentation of this file.
1
// Qt
2
#include <QtGlobal>
3
#include <QGuiApplication>
4
5
// MythTV
6
#include "
mythmainwindow.h
"
7
#include "
mythscreensaver.h
"
8
9
#ifdef USING_DRM
10
#include "
platforms/mythscreensaverdrm.h
"
11
#endif
12
13
#ifdef USING_DBUS
14
#include "
platforms/mythscreensaverdbus.h
"
15
#endif
16
17
#ifdef Q_OS_DARWIN
18
#include "
platforms/mythscreensaverosx.h
"
19
#endif
20
21
#ifdef Q_OS_ANDROID
22
#include "
platforms/mythscreensaverandroid.h
"
23
#endif
24
25
#ifdef USING_WAYLANDEXTRAS
26
#include "
platforms/mythscreensaverwayland.h
"
27
#endif
28
29
#ifdef USING_X11
30
#include "
platforms/mythscreensaverx11.h
"
31
#include "
platforms/mythxdisplay.h
"
32
#endif
33
40
MythScreenSaverControl::MythScreenSaverControl
([[maybe_unused]]
MythMainWindow
* MainWin,
41
[[maybe_unused]]
MythDisplay
* mDisplay)
42
{
43
#if defined(USING_DBUS)
44
m_screenSavers
.push_back(
new
MythScreenSaverDBus
(
this
));
45
#endif
46
#if defined(USING_X11)
47
MythXDisplay
* display =
MythXDisplay::OpenMythXDisplay
(
false
);
48
if
(display)
49
{
50
m_screenSavers
.push_back(
new
MythScreenSaverX11
(
this
));
51
delete
display;
52
}
53
#elif defined(Q_OS_DARWIN)
54
m_screenSavers
.push_back(
new
MythScreenSaverOSX
(
this
));
55
#endif
56
#if defined(ANDROID)
57
m_screenSavers
.push_back(
new
MythScreenSaverAndroid
(
this
));
58
#endif
59
#ifdef USING_DRM
60
MythScreenSaverDRM
* drmsaver =
MythScreenSaverDRM::Create
(
this
, mDisplay);
61
if
(drmsaver)
62
m_screenSavers
.push_back(drmsaver);
63
#endif
64
#ifdef USING_WAYLANDEXTRAS
65
if
(QGuiApplication::platformName().toLower().contains(
"wayland"
))
66
m_screenSavers
.push_back(
new
MythScreenSaverWayland
(
this
, MainWin));
67
#endif
68
69
for
(
auto
* screensaver :
m_screenSavers
)
70
{
71
connect(
this
, &
MythScreenSaverControl::Disable
, screensaver, &
MythScreenSaver::Disable
);
72
connect(
this
, &
MythScreenSaverControl::Reset
, screensaver, &
MythScreenSaver::Reset
);
73
connect(
this
, &
MythScreenSaverControl::Restore
, screensaver, &
MythScreenSaver::Restore
);
74
}
75
}
76
77
bool
MythScreenSaverControl::Asleep
()
78
{
79
for
(
auto
* screensaver :
m_screenSavers
)
80
if
(screensaver->Asleep())
81
return
true
;
82
return
false
;
83
}
MythScreenSaverX11
Definition:
mythscreensaverx11.h:10
mythscreensaverx11.h
MythScreenSaverControl::MythScreenSaverControl
MythScreenSaverControl(MythMainWindow *MainWin, MythDisplay *mDisplay)
Definition:
mythscreensaver.cpp:40
MythScreenSaverControl::Reset
void Reset()
MythScreenSaverControl::Restore
void Restore()
MythScreenSaverDRM
Definition:
mythscreensaverdrm.h:8
MythXDisplay::OpenMythXDisplay
static MythXDisplay * OpenMythXDisplay(bool Warn=true)
Definition:
mythxdisplay.cpp:25
MythScreenSaverAndroid
Definition:
mythscreensaverandroid.h:10
mythscreensaverdbus.h
MythScreenSaverControl::Asleep
bool Asleep()
Definition:
mythscreensaver.cpp:77
MythScreenSaverDBus
Definition:
mythscreensaverdbus.h:10
MythScreenSaverControl::m_screenSavers
std::vector< MythScreenSaver * > m_screenSavers
Definition:
mythscreensaver.h:51
mythscreensaver.h
mythscreensaverdrm.h
mythscreensaverandroid.h
MythScreenSaver::Disable
virtual void Disable()=0
mythscreensaverwayland.h
MythDisplay
Definition:
mythdisplay.h:22
mythxdisplay.h
mythscreensaverosx.h
MythScreenSaverControl::Disable
void Disable()
MythScreenSaver::Restore
virtual void Restore()=0
MythScreenSaver::Reset
virtual void Reset()=0
MythScreenSaverDRM::Create
static MythScreenSaverDRM * Create(QObject *Parent, MythDisplay *mDisplay)
Definition:
mythscreensaverdrm.cpp:5
MythXDisplay
Definition:
mythxdisplay.h:15
MythScreenSaverWayland
Definition:
mythscreensaverwayland.h:12
MythScreenSaverOSX
Definition:
mythscreensaverosx.h:10
mythmainwindow.h
MythMainWindow
Definition:
mythmainwindow.h:28
Generated on Wed Feb 26 2025 03:18:02 for MythTV by
1.8.17