MythTV master
videoselector.h
Go to the documentation of this file.
1/*
2 videoselector.h
3
4 header for the video selector interface screen
5*/
6
7#ifndef VIDEOSELECTOR_H_
8#define VIDEOSELECTOR_H_
9
10// c++
11#include <vector>
12
13// mythtv
16
17// mytharchive
18#include "archiveutil.h"
19
20class ProgramInfo;
21class MythUIText;
22class MythUIButton;
25
27{
28 int id { 0 };
29 QString title;
30 QString plot;
31 QString category;
32 QString filename;
33 QString coverfile;
35 uint64_t size { 0 };
36};
37
39{
40 Q_OBJECT
41
42 public:
43 VideoSelector(MythScreenStack *parent, QList<ArchiveItem *> *archiveList);
44
45 ~VideoSelector(void) override;
46
47 bool Create() override; // MythScreenType
48 bool keyPressEvent(QKeyEvent *e) override; // MythScreenType
49
50 signals:
51 void haveResult(bool ok);
52
53 public slots:
54 void OKPressed(void);
55 void cancelPressed(void);
56
57 void ShowMenu(void) override; // MythScreenType
58 void selectAll(void);
59 void clearAll(void);
60
64
65 void parentalLevelChanged(bool passwordValid, ParentalLevel::Level newLevel);
66
67 private:
68 void updateVideoList(void);
69 void updateSelectedList(void);
70 void getVideoList(void);
71 void wireUpTheme(void);
72 static std::vector<VideoInfo *> *getVideoListFromDB(void);
74
76
77 QList<ArchiveItem *> *m_archiveList {nullptr};
78 std::vector<VideoInfo *> *m_videoList {nullptr};
79 QList<VideoInfo *> m_selectedList;
80
82
83 MythUIText *m_plText {nullptr};
93};
94
96
97#endif
98
99
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
Image widget, displays a single image or multiple images in sequence.
Definition: mythuiimage.h:98
All purpose text widget, displays a text string.
Definition: mythuitext.h:29
Holds information on recordings and videos.
Definition: programinfo.h:68
void ShowMenu(void) override
void setParentalLevel(ParentalLevel::Level level)
void haveResult(bool ok)
MythUIButtonList * m_categorySelector
Definition: videoselector.h:88
MythUIButtonList * m_videoButtonList
Definition: videoselector.h:84
MythUIButton * m_cancelButton
Definition: videoselector.h:87
bool Create() override
void OKPressed(void)
void clearAll(void)
void getVideoList(void)
VideoSelector(MythScreenStack *parent, QList< ArchiveItem * > *archiveList)
~VideoSelector(void) override
QList< VideoInfo * > m_selectedList
Definition: videoselector.h:79
MythUIButton * m_okButton
Definition: videoselector.h:86
void parentalLevelChanged(bool passwordValid, ParentalLevel::Level newLevel)
MythUIText * m_titleText
Definition: videoselector.h:89
MythUIText * m_plotText
Definition: videoselector.h:91
void titleChanged(MythUIButtonListItem *item)
void toggleSelected(MythUIButtonListItem *item)
ParentalLevel::Level m_currentParentalLevel
Definition: videoselector.h:81
QList< ArchiveItem * > * m_archiveList
Definition: videoselector.h:77
bool keyPressEvent(QKeyEvent *e) override
Key event handler.
void wireUpTheme(void)
std::vector< VideoInfo * > * m_videoList
Definition: videoselector.h:78
MythUIText * m_plText
Definition: videoselector.h:83
void updateVideoList(void)
MythUIText * m_warningText
Definition: videoselector.h:85
void cancelPressed(void)
void setCategory(MythUIButtonListItem *item)
static std::vector< VideoInfo * > * getVideoListFromDB(void)
MythUIText * m_filesizeText
Definition: videoselector.h:90
void updateSelectedList(void)
MythUIImage * m_coverImage
Definition: videoselector.h:92
ParentalLevelChangeChecker * m_parentalLevelChecker
Definition: videoselector.h:75
void selectAll(void)
Q_DECLARE_METATYPE(std::chrono::seconds)
QString filename
Definition: videoselector.h:32
QString coverfile
Definition: videoselector.h:33
QString plot
Definition: videoselector.h:30
int parentalLevel
Definition: videoselector.h:34
QString category
Definition: videoselector.h:31
QString title
Definition: videoselector.h:29
uint64_t size
Definition: videoselector.h:35