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 protected:
108 void Load(void) override; // MythScreenType
109
110 private slots:
111 void doneLoading(void);
112 void updateStreams(void);
113 void doUpdateStreams(void);
115 static void streamVisible(MythUIButtonListItem *item);
116
117 private:
118 static void loadStreams(void);
119 void updateBroadcasters(void);
120 void updateGenres(void);
121 void updateCountries(void);
122 void updateLanguages(void);
123
125 QList<MusicMetadata> m_streams;
126 QStringList m_broadcasters;
127 QStringList m_genres;
128
130 QString m_oldGenre;
134
142
144 bool m_updating {false};
145};
146#endif
MythUITextEdit * m_formatEdit
Definition: streamview.h:87
void searchClicked(void)
Definition: streamview.cpp:717
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:763
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:729
MusicMetadata * m_streamMeta
Definition: streamview.h:76
bool Create() override
Definition: streamview.cpp:658
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:887
static void streamVisible(MythUIButtonListItem *item)
Definition: streamview.cpp:871
QList< MusicMetadata > m_streams
Definition: streamview.h:125
QStringList m_broadcasters
Definition: streamview.h:126
QString m_oldBroadcaster
Definition: streamview.h:129
void updateGenres(void)
Definition: streamview.cpp:916
bool Create() override
Definition: streamview.cpp:785
void updateBroadcasters(void)
Definition: streamview.cpp:892
void updateCountries(void)
Definition: streamview.cpp:940
MythUITextEdit * m_channelEdit
Definition: streamview.h:139
void doneLoading(void)
Definition: streamview.cpp:851
QString m_oldLanguage
Definition: streamview.h:133
void updateStreams(void)
Definition: streamview.cpp:994
QString m_oldChannel
Definition: streamview.h:131
MythUIButtonList * m_broadcasterList
Definition: streamview.h:135
QStringList m_genres
Definition: streamview.h:127
SearchStream(MythScreenStack *parentStack, EditStreamMetadata *parent)
Definition: streamview.h:102
QString m_oldGenre
Definition: streamview.h:130
MythUIButtonList * m_streamList
Definition: streamview.h:140
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:845
MythUIText * m_matchesText
Definition: streamview.h:141
QTimer m_updateTimer
Definition: streamview.h:143
QString m_oldCountry
Definition: streamview.h:132
void doUpdateStreams(void)
EditStreamMetadata * m_parent
Definition: streamview.h:124
bool m_updating
Definition: streamview.h:144
void updateLanguages(void)
Definition: streamview.cpp:967
MythUIButtonList * m_countryList
Definition: streamview.h:137
void streamClicked(MythUIButtonListItem *item)
Definition: streamview.cpp:860
MythUIButtonList * m_languageList
Definition: streamview.h:138
MythUIButtonList * m_genreList
Definition: streamview.h:136
void addStream(MusicMetadata *mdata)
Definition: streamview.cpp:524
static void streamItemVisible(MythUIButtonListItem *item)
Definition: streamview.cpp:504
bool Create(void) override
Definition: streamview.cpp:39
void streamItemClicked(MythUIButtonListItem *item)
Definition: streamview.cpp:496
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:558
~StreamView(void) override=default
void deleteStream(MusicMetadata *mdata)
Definition: streamview.cpp:630
MythUIProgressBar * m_bufferProgress
Definition: streamview.h:50
void doRemoveStream(bool ok)
Definition: streamview.cpp:417
void ShowMenu(void) override
Definition: streamview.cpp:77
StreamView(MythScreenStack *parent, MythScreenType *parentScreen)
Definition: streamview.cpp:33
void updateStreamList(void)
Definition: streamview.cpp:432
void removeStream(void)
Definition: streamview.cpp:400
void editStream(void)
Definition: streamview.cpp:384
bool keyPressEvent(QKeyEvent *event) override
Key event handler.
Definition: streamview.cpp:340
MusicMetadata * m_currStream
Definition: streamview.h:52
MythUIButtonList * m_streamList
Definition: streamview.h:47