MythTV master
streamview.h
Go to the documentation of this file.
1#ifndef STREAMVIEW_H_
2#define STREAMVIEW_H_
3
4// qt
5#include <QEvent>
6#include <QTimer>
7#include <QVector>
8
9// MythTV
11
12// mythmusic
13#include "musiccommon.h"
14
15class MythUIText;
17
18class StreamView : public MusicCommon
19{
20 Q_OBJECT
21
22 public:
23 StreamView(MythScreenStack *parent, MythScreenType *parentScreen);
24 ~StreamView(void) override = default;
25
26 bool Create(void) override; // MythScreenType
27 bool keyPressEvent(QKeyEvent *event) override; // MusicCommon
28
29 void addStream(MusicMetadata *mdata);
30 void deleteStream(MusicMetadata *mdata);
31 void updateStream(MusicMetadata *mdata);
32
33 void ShowMenu(void) override; // MusicCommon
34
35 protected:
36 void customEvent(QEvent *event) override; // MusicCommon
37 void updateStreamList(void);
38 void editStream(void);
39 void removeStream(void);
40
41 private slots:
43 static void streamItemVisible(MythUIButtonListItem *item);
44 void doRemoveStream(bool ok);
45
46 private:
51
54};
55
57{
58 Q_OBJECT
59
60 public:
62 MusicMetadata *mdata = nullptr)
63 : MythScreenType(parentStack, "editstreampopup"),
64 m_parent(parent), m_streamMeta(mdata) {}
65
66 bool Create() override; // MythScreenType
68
69 private slots:
70 void searchClicked(void);
71 void saveClicked(void);
72
73 private:
74 StreamView *m_parent {nullptr};
75
77
91
95};
96
98{
99 Q_OBJECT
100
101 public:
103 : MythScreenType(parentStack, "searchstream"), m_parent(parent) {}
104
105 bool Create() override; // MythScreenType
106
107 private slots:
108 void doneLoading(void);
109 void updateStreams(void);
110 void doUpdateStreams(void);
112 static void streamVisible(MythUIButtonListItem *item);
113
114 private:
115 void Load(void) override; // MythScreenType
116 static void loadStreams(void);
117 void updateBroadcasters(void);
118 void updateGenres(void);
119 void updateCountries(void);
120 void updateLanguages(void);
121
123 QList<MusicMetadata> m_streams;
124 QStringList m_broadcasters;
125 QStringList m_genres;
126
128 QString m_oldGenre;
132
140
142 bool m_updating {false};
143};
144#endif
MythUITextEdit * m_formatEdit
Definition: streamview.h:87
void searchClicked(void)
Definition: streamview.cpp:715
MythUIButton * m_saveButton
Definition: streamview.h:94
MythUITextEdit * m_url4Edit
Definition: streamview.h:84
MythUIButton * m_searchButton
Definition: streamview.h:92
void changeStreamMetadata(MusicMetadata *mdata)
Definition: streamview.cpp:761
StreamView * m_parent
Definition: streamview.h:74
MythUITextEdit * m_logourlEdit
Definition: streamview.h:86
EditStreamMetadata(MythScreenStack *parentStack, StreamView *parent, MusicMetadata *mdata=nullptr)
Definition: streamview.h:61
MythUITextEdit * m_url5Edit
Definition: streamview.h:85
MythUITextEdit * m_url3Edit
Definition: streamview.h:83
MythUITextEdit * m_languageEdit
Definition: streamview.h:90
MythUITextEdit * m_broadcasterEdit
Definition: streamview.h:78
MythUITextEdit * m_url1Edit
Definition: streamview.h:81
MythUITextEdit * m_channelEdit
Definition: streamview.h:79
void saveClicked(void)
Definition: streamview.cpp:727
MusicMetadata * m_streamMeta
Definition: streamview.h:76
bool Create() override
Definition: streamview.cpp:656
MythUITextEdit * m_countryEdit
Definition: streamview.h:89
MythUITextEdit * m_url2Edit
Definition: streamview.h:82
MythUITextEdit * m_descEdit
Definition: streamview.h:80
MythUIButton * m_cancelButton
Definition: streamview.h:93
MythUITextEdit * m_genreEdit
Definition: streamview.h:88
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
Progress bar widget.
A text entry and edit widget.
All purpose text widget, displays a text string.
Definition: mythuitext.h:29
static void loadStreams(void)
Definition: streamview.cpp:885
static void streamVisible(MythUIButtonListItem *item)
Definition: streamview.cpp:869
QList< MusicMetadata > m_streams
Definition: streamview.h:123
QStringList m_broadcasters
Definition: streamview.h:124
QString m_oldBroadcaster
Definition: streamview.h:127
void updateGenres(void)
Definition: streamview.cpp:914
bool Create() override
Definition: streamview.cpp:783
void updateBroadcasters(void)
Definition: streamview.cpp:890
void updateCountries(void)
Definition: streamview.cpp:938
MythUITextEdit * m_channelEdit
Definition: streamview.h:137
void doneLoading(void)
Definition: streamview.cpp:849
QString m_oldLanguage
Definition: streamview.h:131
void updateStreams(void)
Definition: streamview.cpp:992
QString m_oldChannel
Definition: streamview.h:129
MythUIButtonList * m_broadcasterList
Definition: streamview.h:133
QStringList m_genres
Definition: streamview.h:125
SearchStream(MythScreenStack *parentStack, EditStreamMetadata *parent)
Definition: streamview.h:102
QString m_oldGenre
Definition: streamview.h:128
MythUIButtonList * m_streamList
Definition: streamview.h:138
void Load(void) override
Load data which will ultimately be displayed on-screen or used to determine what appears on-screen (S...
Definition: streamview.cpp:843
MythUIText * m_matchesText
Definition: streamview.h:139
QTimer m_updateTimer
Definition: streamview.h:141
QString m_oldCountry
Definition: streamview.h:130
void doUpdateStreams(void)
EditStreamMetadata * m_parent
Definition: streamview.h:122
bool m_updating
Definition: streamview.h:142
void updateLanguages(void)
Definition: streamview.cpp:965
MythUIButtonList * m_countryList
Definition: streamview.h:135
void streamClicked(MythUIButtonListItem *item)
Definition: streamview.cpp:858
MythUIButtonList * m_languageList
Definition: streamview.h:136
MythUIButtonList * m_genreList
Definition: streamview.h:134
void addStream(MusicMetadata *mdata)
Definition: streamview.cpp:522
static void streamItemVisible(MythUIButtonListItem *item)
Definition: streamview.cpp:502
bool Create(void) override
Definition: streamview.cpp:39
void streamItemClicked(MythUIButtonListItem *item)
Definition: streamview.cpp:494
MythUIText * m_noStreams
Definition: streamview.h:48
MusicMetadata * m_lastStream
Definition: streamview.h:53
void customEvent(QEvent *event) override
Definition: streamview.cpp:103
MythUIText * m_bufferStatus
Definition: streamview.h:49
void updateStream(MusicMetadata *mdata)
Definition: streamview.cpp:556
~StreamView(void) override=default
void deleteStream(MusicMetadata *mdata)
Definition: streamview.cpp:628
MythUIProgressBar * m_bufferProgress
Definition: streamview.h:50
void doRemoveStream(bool ok)
Definition: streamview.cpp:415
void ShowMenu(void) override
Definition: streamview.cpp:77
StreamView(MythScreenStack *parent, MythScreenType *parentScreen)
Definition: streamview.cpp:33
void updateStreamList(void)
Definition: streamview.cpp:430
void removeStream(void)
Definition: streamview.cpp:398
void editStream(void)
Definition: streamview.cpp:382
bool keyPressEvent(QKeyEvent *event) override
Key event handler.
Definition: streamview.cpp:338
MusicMetadata * m_currStream
Definition: streamview.h:52
MythUIButtonList * m_streamList
Definition: streamview.h:47