TTKMusicPlayer  3.7.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
musicbackgroundremotewidget.h
Go to the documentation of this file.
1 #ifndef MUSICBACKGROUNDREMOTEWIDGET_H
2 #define MUSICBACKGROUNDREMOTEWIDGET_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 <QComboBox>
25 
26 class QPushButton;
28 
33 {
34  Q_OBJECT
36 public:
40  explicit MusicBackgroundRemoteWidget(QWidget *parent = nullptr);
45 
49  void abort();
50 
55  virtual void outputRemoteSkin(MusicBackgroundImage &image, const QString &data) = 0;
56 
57 public Q_SLOTS:
61  void downLoadFinished(const QString &bytes);
65  virtual void downLoadFinished(const MusicSkinRemoteGroupList &bytes);
66 
67 protected:
71  void startToRequest(const QString &suffix);
72 
74  MusicSkinRemoteGroupList m_groups;
78 
79 };
80 
81 
82 
87 {
88  Q_OBJECT
90 public:
94  explicit MusicBackgroundDailyWidget(QWidget *parent = nullptr);
95 
99  void initialize();
100 
104  virtual void outputRemoteSkin(MusicBackgroundImage &image, const QString &data) override final;
105 
106 public Q_SLOTS:
110  virtual void downLoadFinished(const MusicSkinRemoteGroupList &bytes) override final;
111 
112 };
113 
114 
115 
120 {
121  Q_OBJECT
123 public:
127  explicit MusicBackgroundOnlineWidget(QWidget *parent = nullptr);
132 
136  void initialize();
137 
141  QWidget* createFunctionsWidget(bool revert, QWidget *object = nullptr);
145  virtual void outputRemoteSkin(MusicBackgroundImage &image, const QString &data) override final;
146 
147 public Q_SLOTS:
151  void currentTypeChanged(int index);
155  virtual void downLoadFinished(const MusicSkinRemoteGroupList &bytes) override final;
156 
157 private:
159  QPushButton *m_allButton;
160  QComboBox *m_typeBox;
161 
162 };
163 
164 #endif // MUSICBACKGROUNDREMOTEWIDGET_H
#define TTK_MODULE_EXPORT
The class of the remote background widget.
MusicDownloadQueueRequest * m_networkRequest
The class of the daily background widget.
The class of the download data from queue request.
The class of the background list widget.
The class of the download skin remote background.
The class of the skin backgroud image.
TTK_MODULE_EXPORT QString suffix(const QString &name)
#define TTK_DECLARE_MODULE(Class)
Definition: ttkqtglobal.h:152
virtual void outputRemoteSkin(MusicBackgroundImage &image, const QString &data)=0
void downLoadFinished(const QString &bytes)
MusicAbstractDownloadSkinRequest * m_downloadRequest
The class of the online background widget.
MusicBackgroundListWidget * m_backgroundList