MythTV master
welcomedialog.h
Go to the documentation of this file.
1#ifndef WELCOMEDIALOG_H_
2#define WELCOMEDIALOG_H_
3
4// qt
5#include <QDateTime>
6
7// myth
14
15class GroupSetting;
16
18{
19
20 Q_OBJECT
21
22 public:
23
24 WelcomeDialog(MythScreenStack *parent, const char *name);
25 ~WelcomeDialog() override;
26
27 bool Create(void) override; // MythScreenType
28 bool keyPressEvent(QKeyEvent *event) override; // MythScreenType
29 void customEvent(QEvent *e) override; // MythUIType
30
31 protected slots:
32 void startFrontendClick(void);
33 void startFrontend(void);
34 void updateAll(void);
35 void updateStatus(void);
36 void updateScreen(void);
37 void closeDialog(void);
38 void ShowMenu(void) override; // MythScreenType
39 void shutdownNow(void);
40 void runEPGGrabber(void);
41 void lockShutdown(void);
42 void unlockShutdown(void);
43 bool updateRecordingList(void);
44 bool updateScheduledList(void);
45
46 private:
47 void updateStatusMessage(void);
48 bool checkConnectionToServer(void);
49 void checkAutoStart(void);
50 static void runMythFillDatabase(void);
51 static void ShowSettings(GroupSetting* screen);
52
53 //
54 // GUI stuff
55 //
60
62
64
65 QTimer *m_updateStatusTimer { nullptr }; // audited ref #5318
66 QTimer *m_updateScreenTimer { nullptr }; // audited ref #5318
67
68 QString m_appBinDir;
69 bool m_isRecording { false };
70 bool m_hasConflicts { false };
71 bool m_willShutdown { false };
74 std::chrono::seconds m_preRollSeconds { 0s };
75 std::chrono::seconds m_idleWaitForRecordingTime { 0s };
76 std::chrono::seconds m_idleTimeoutSecs { 0s };
80 QStringList m_statusList;
81 bool m_frontendIsRunning { false };
82
83 std::vector<TunerStatus> m_tunerList;
84 std::vector<ProgramInfo> m_scheduledList;
85
87 bool m_pendingRecListUpdate { false };
88
90 void setPendingRecListUpdate(bool newState) { m_pendingRecListUpdate = newState; }
91
93 bool m_pendingSchedUpdate { false };
94
96 void setPendingSchedUpdate(bool newState) { m_pendingSchedUpdate = newState; }
97
98};
99
100#endif
Basic menu dialog, message and a list of options.
Screen in which all other widgets are contained and rendered.
A single button widget.
Definition: mythuibutton.h:22
All purpose text widget, displays a text string.
Definition: mythuitext.h:29
QTimer * m_updateScreenTimer
Definition: welcomedialog.h:66
QString m_appBinDir
Definition: welcomedialog.h:68
void setPendingSchedUpdate(bool newState)
Definition: welcomedialog.h:96
std::vector< TunerStatus > m_tunerList
Definition: welcomedialog.h:83
void lockShutdown(void)
bool checkConnectionToServer(void)
QDateTime m_nextRecordingStart
Definition: welcomedialog.h:73
void checkAutoStart(void)
void ShowMenu(void) override
bool updateRecordingList(void)
void customEvent(QEvent *e) override
bool pendingSchedUpdate() const
Definition: welcomedialog.h:95
static void ShowSettings(GroupSetting *screen)
MythUIText * m_recordingText
Definition: welcomedialog.h:57
uint m_screenScheduledNo
Definition: welcomedialog.h:78
std::chrono::seconds m_preRollSeconds
Definition: welcomedialog.h:74
QTimer * m_updateStatusTimer
Definition: welcomedialog.h:65
MythUIButton * m_startFrontendButton
Definition: welcomedialog.h:61
uint m_screenTunerNo
Definition: welcomedialog.h:77
std::chrono::seconds m_idleWaitForRecordingTime
Definition: welcomedialog.h:75
void startFrontendClick(void)
void setPendingRecListUpdate(bool newState)
Definition: welcomedialog.h:90
QMutex m_recListUpdateMuxtex
Definition: welcomedialog.h:86
std::chrono::seconds m_idleTimeoutSecs
Definition: welcomedialog.h:76
MythUIText * m_warningText
Definition: welcomedialog.h:59
void runEPGGrabber(void)
int m_secondsToShutdown
Definition: welcomedialog.h:72
MythUIText * m_statusText
Definition: welcomedialog.h:56
QMutex m_schedUpdateMuxtex
Definition: welcomedialog.h:92
void updateStatus(void)
bool Create(void) override
bool m_pendingSchedUpdate
Definition: welcomedialog.h:93
~WelcomeDialog() override
void updateAll(void)
QStringList m_statusList
Definition: welcomedialog.h:80
bool m_frontendIsRunning
Definition: welcomedialog.h:81
void shutdownNow(void)
std::vector< ProgramInfo > m_scheduledList
Definition: welcomedialog.h:84
WelcomeDialog(MythScreenStack *parent, const char *name)
void updateScreen(void)
static void runMythFillDatabase(void)
bool keyPressEvent(QKeyEvent *event) override
Key event handler.
MythDialogBox * m_menuPopup
Definition: welcomedialog.h:63
MythUIText * m_scheduledText
Definition: welcomedialog.h:58
bool updateScheduledList(void)
bool m_pendingRecListUpdate
Definition: welcomedialog.h:87
void updateStatusMessage(void)
bool pendingRecListUpdate() const
Definition: welcomedialog.h:89
void startFrontend(void)
void unlockShutdown(void)
void closeDialog(void)
unsigned int uint
Definition: freesurround.h:24