MythTV master
logviewer.h
Go to the documentation of this file.
1#ifndef LOGVIEWER_H_
2#define LOGVIEWER_H_
3
4// qt
5#include <QTimer>
6
7// myth
9
10static constexpr std::chrono::seconds DEFAULT_UPDATE_TIME { 5s };
11
12class MythUIButton;
14class MythUIText;
15
16void showLogViewer(void);
17
19{
20 Q_OBJECT
21
22 public:
23
24 explicit LogViewer(MythScreenStack *parent);
25 ~LogViewer(void) override;
26
27 bool Create(void) override; // MythScreenType
28 void ShowMenu(void) override; // MythScreenType
29 bool keyPressEvent(QKeyEvent *e) override; // MythScreenType
30
31 void setFilenames(const QString &progressLog, const QString &fullLog);
32
33 protected:
34 void Init(void) override; // MythScreenType
35
36 protected slots:
37 static void cancelClicked(void);
38 void updateClicked(void);
39 void updateTimerTimeout(void);
40 void toggleAutoUpdate(void);
41 static bool loadFile(const QString& filename, QStringList &list, int startline);
42 void showProgressLog(void);
43 void showFullLog(void);
45
46 private:
47 static QString getSetting(const QString &key);
48
49 bool m_autoUpdate {false};
50 std::chrono::seconds m_updateTime {DEFAULT_UPDATE_TIME};
51 QTimer *m_updateTimer {nullptr};
52
53 QString m_currentLog;
55 QString m_fullLog;
56
59
63};
64
65#endif
void Init(void) override
Used after calling Load() to assign data to widgets and other UI initilisation which is prohibited in...
Definition: logviewer.cpp:136
void updateTimerTimeout(void)
Definition: logviewer.cpp:168
MythUIButton * m_cancelButton
Definition: logviewer.h:61
LogViewer(MythScreenStack *parent)
Definition: logviewer.cpp:83
~LogViewer(void) override
Definition: logviewer.cpp:91
void updateClicked(void)
Definition: logviewer.cpp:205
void toggleAutoUpdate(void)
Definition: logviewer.cpp:173
static void cancelClicked(void)
Definition: logviewer.cpp:189
QString m_currentLog
Definition: logviewer.h:53
MythUIButton * m_updateButton
Definition: logviewer.h:62
MythUIButtonList * m_logList
Definition: logviewer.h:57
bool Create(void) override
Definition: logviewer.cpp:98
MythUIButton * m_exitButton
Definition: logviewer.h:60
QString m_fullLog
Definition: logviewer.h:55
void setFilenames(const QString &progressLog, const QString &fullLog)
Definition: logviewer.cpp:318
QString m_progressLog
Definition: logviewer.h:54
static bool loadFile(const QString &filename, QStringList &list, int startline)
Definition: logviewer.cpp:269
QTimer * m_updateTimer
Definition: logviewer.h:51
void updateLogItem(MythUIButtonListItem *item)
Definition: logviewer.cpp:183
bool keyPressEvent(QKeyEvent *e) override
Key event handler.
Definition: logviewer.cpp:143
void showProgressLog(void)
Definition: logviewer.cpp:325
std::chrono::seconds m_updateTime
Definition: logviewer.h:50
bool m_autoUpdate
Definition: logviewer.h:49
MythUIText * m_logText
Definition: logviewer.h:58
void ShowMenu(void) override
Definition: logviewer.cpp:339
static QString getSetting(const QString &key)
Definition: logviewer.cpp:242
void showFullLog(void)
Definition: logviewer.cpp:332
Screen in which all other widgets are contained and rendered.
List widget, displays list items in a variety of themeable arrangements and can trigger signals when ...
A single button widget.
Definition: mythuibutton.h:22
All purpose text widget, displays a text string.
Definition: mythuitext.h:29
static constexpr std::chrono::seconds DEFAULT_UPDATE_TIME
Definition: logviewer.h:10
void showLogViewer(void)
Definition: logviewer.cpp:26