Sayonara Player
GUI_Broadcast.h
1 /* GUI_Broadcast.h */
2 
3 /* Copyright (C) 2011-2016 Lucio Carreras
4  *
5  * This file is part of sayonara player
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11 
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16 
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 
22 
23 #ifndef GUI_BROADCAST_H
24 #define GUI_BROADCAST_H
25 
26 #include "GUI/PlayerPlugins/Broadcasting/ui_GUI_Broadcast.h"
27 
28 #include "Components/Broadcasting/StreamServer.h"
29 #include "Interfaces/PlayerPlugin/PlayerPlugin.h"
30 
32  public PlayerPluginInterface,
33  protected Ui::GUI_Broadcast
34 {
35  Q_OBJECT
36 
37  friend class PlayerPluginInterface;
38 
39 public:
40  explicit GUI_Broadcast(QWidget *parent=nullptr);
41  ~GUI_Broadcast();
42 
43  QString get_name() const override;
44  QString get_display_name() const override;
45  QLabel* get_title_label() const override;
46  QPushButton* get_close_button() const override;
47 
48 
49 public slots:
50 
51  void new_connection(const QString& ip);
52  void connection_closed(const QString& ip);
53  void can_listen(bool);
54 
55 private slots:
56  void dismiss_clicked();
57  void dismiss_all_clicked();
58  void combo_changed(int idx);
59  void retry();
60  void mp3_enc_found();
61 
62 private:
63  void dismiss_at(int idx);
64  void set_status_label();
65 
66 protected:
67  void language_changed() override;
68  void init_ui() override;
69 
70  StreamServer* _server=nullptr;
71 
72 };
73 
74 #endif // GUI_BROADCAST_H
The StreamServer class. This class is listening for new connections and holds and administrates curre...
Definition: StreamServer.h:41
void init_ui() override
GUI will be initialized on first show up. Please use this to make Sayonara starting fast...
Definition: GUI_Broadcast.h:31
QLabel * get_title_label() const override
must be overwritten
QPushButton * get_close_button() const override
must be overwritten
QString get_display_name() const override
must be overwritten
Interface for PlayerPlugin classes. get_name() and language_changed() must be overwritten.
Definition: PlayerPlugin.h:48
QString get_name() const override
must be overwritten
void language_changed() override
language_changed Has to be implemented and is called when language has changed
Definition: ui_GUI_Broadcast.h:210