TTKMusicPlayer  3.7.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
musicwebdjradiowidget.h
Go to the documentation of this file.
1 #ifndef MUSICWEBDJRADIOWIDGET_H
2 #define MUSICWEBDJRADIOWIDGET_H
3 
4 /***************************************************************************
5  * This file is part of the TTK Music Player project
6  * Copyright (C) 2015 - 2024 Greedysky Studio
7 
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 3 of the License, or
11  * (at your option) any later version.
12 
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17 
18  * You should have received a copy of the GNU General Public License along
19  * with this program; If not, see <http://www.gnu.org/licenses/>.
20  ***************************************************************************/
21 
22 #include "musicwidgetheaders.h"
25 
28 
33 {
34  Q_OBJECT
36 public:
40  explicit MusicWebDJRadioProgramTableWidget(QWidget *parent = nullptr);
45 
49  void initialize(TTK::Program type);
53  void resizeSection() const;
54 
55 Q_SIGNALS:
59  void programItemClicked(const QString &rid, const QString &cid);
60 
61 public Q_SLOTS:
65  virtual void itemCellEntered(int row, int column) override final;
69  virtual void itemCellClicked(int row, int column) override final;
73  void createProgramItem(const MusicResultDataItem &item);
77  void downLoadFinished(const QByteArray &bytes);
78 
79 private:
81 
82 };
83 
84 
89 {
90  Q_OBJECT
92 public:
96  explicit MusicWebDJRadioProgramWidget(TTK::Program type, QWidget *parent = nullptr);
101 
105  void initialize();
109  void resizeWindow();
110 
111 private:
114 
115 };
116 
117 
122 {
123  Q_OBJECT
125 public:
129  explicit MusicWebDJRadioWidget(QWidget *parent = nullptr);
134 
138  void initialize();
142  virtual void resizeWidget() override final;
143 
144 public Q_SLOTS:
148  void backToMainMenu();
152  void createRecommendWidget();
156  void createProgramWidget();
160  void programItemClicked(const QString &rid, const QString &cid);
164  void currentCategoryClicked(const MusicResultDataItem &item);
165 
166 private:
170  void initFirstWidget();
171 
175 
176 };
177 
178 #endif // MUSICWEBDJRADIOWIDGET_H
The class of the dj radio music query widget.
#define TTK_MODULE_EXPORT
The class of the search result data item.
The class of the table widget base.
MusicWebDJRadioCategoryWidget * m_categoryWidget
MusicWebDJRadioProgramTableWidget * m_tableWidget
The class of the music dj radio widget.
The class of the music dj radio program widget.
virtual void itemCellClicked(int row, int column)
#define TTK_DECLARE_MODULE(Class)
Definition: ttkqtglobal.h:152
virtual void itemCellEntered(int row, int column)
The class of the music dj radio category widget.
The class of the music dj radio program request.
MusicDJRadioProgramRequest * m_networkRequest
The class of the widget resize interface.
The class of the music dj radio program table widget.
MusicWebDJRadioProgramWidget * m_recommendWidget
virtual void resizeWidget()=0
MusicWebDJRadioQueryWidget * m_queryWidget