TTKMusicPlayer  3.7.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
musicplaylistquerywidget.h
Go to the documentation of this file.
1 #ifndef MUSICPLAYLISTQUERYWIDGET_H
2 #define MUSICPLAYLISTQUERYWIDGET_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 
24 
25 class QGridLayout;
29 
34 {
35  Q_OBJECT
37 public:
41  explicit MusicPlaylistQueryItemWidget(QWidget *parent = nullptr);
46 
50  void setResultDataItem(const MusicResultDataItem &item);
51 
52 Q_SIGNALS:
56  void currentItemClicked(const MusicResultDataItem &item);
57 
58 public Q_SLOTS:
62  void downLoadFinished(const QByteArray &bytes);
66  void renderFinished(const QPixmap &data);
70  void currentItemClicked();
71 
72 private:
74  QPushButton *m_topListenButton, *m_playButton;
75  QLabel *m_iconLabel, *m_nameLabel, *m_creatorLabel;
76 
77 };
78 
79 
80 
85 {
86  Q_OBJECT
88 public:
92  explicit MusicPlaylistQueryWidget(QWidget *parent = nullptr);
97 
101  virtual void setCurrentValue(const QString &value) override final;
105  virtual void setCurrentID(const QString &id) override final;
109  virtual void resizeWidget() override final;
110 
111 public Q_SLOTS:
115  void createPlaylistItem(const MusicResultDataItem &item);
119  void currentPlaylistClicked(const MusicResultDataItem &item);
123  void backToPlaylistMenu();
127  void categoryChanged(const MusicResultsCategoryItem &category);
131  void buttonClicked(int index);
132 
133 private:
134  bool m_initialized, m_categoryChanged;
135  QGridLayout *m_gridLayout;
139 
140 };
141 
142 #endif // MUSICPLAYLISTQUERYWIDGET_H
#define TTK_MODULE_EXPORT
The class of the playlist music query widget.
The class of the search result data item.
The class of the playlist music item widget.
The class of the playlist music found category pop widget.
virtual void setCurrentValue(const QString &value)
The class of the page query widget.
#define TTK_DECLARE_MODULE(Class)
Definition: ttkqtglobal.h:152
MusicPlaylistFoundCategoryPopWidget * m_categoryButton
The class of the item query widget base.
The class of the results category item.
MusicPlaylistQueryInfoWidget * m_infoWidget
virtual void setCurrentID(const QString &id)
virtual void resizeWidget()=0
MusicPageQueryWidget * m_pageQueryWidget
The class of the playlist music query info widget.