TTKMusicPlayer  4.3.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
musictoolsetswidget.cpp
Go to the documentation of this file.
1 #include "musictoolsetswidget.h"
2 #include "ui_musictoolsetswidget.h"
3 #include "musictimerwidget.h"
4 #include "musictransformwidget.h"
9 #include "musicapplication.h"
10 #include "musicrightareawidget.h"
11 #include "musicspectrumwidget.h"
12 
14  : MusicAbstractMoveWidget(parent),
15  m_ui(new Ui::MusicToolSetsWidget)
16 {
17  m_ui->setupUi(this);
18  setFixedSize(size());
19  setAttribute(Qt::WA_DeleteOnClose);
20  setBackgroundLabel(m_ui->background);
21 
22  m_ui->topTitleCloseButton->setIcon(QIcon(":/functions/btn_close_hover"));
23  m_ui->topTitleCloseButton->setStyleSheet(TTK::UI::ToolButtonStyle04);
24  m_ui->topTitleCloseButton->setCursor(QCursor(Qt::PointingHandCursor));
25  m_ui->topTitleCloseButton->setToolTip(tr("Close"));
26  connect(m_ui->topTitleCloseButton, SIGNAL(clicked()), SLOT(close()));
27 
28  m_ui->listItemWidget->setSpacing(11);
29  m_ui->listItemWidget->setIconSize(QSize(60, 60));
30  m_ui->listItemWidget->setFrameShape(QFrame::NoFrame);
31  m_ui->listItemWidget->setViewMode(QListView::IconMode);
32  m_ui->listItemWidget->setMovement(QListView::Static);
33  m_ui->listItemWidget->setStyleSheet(TTK::UI::ListWidgetStyle02);
34  m_ui->listItemWidget->verticalScrollBar()->setStyleSheet(TTK::UI::ScrollBarStyle01);
35 
36  connect(m_ui->listItemWidget, SIGNAL(itemClicked(QListWidgetItem*)), SLOT(currentItemClicked(QListWidgetItem*)));
37 
38  addCelltItems();
39 }
40 
42 {
44  clear();
45  delete m_ui;
46 }
47 
49 {
50  struct Data
51  {
52  QString m_icon;
53  QString m_name;
54  };
56 
57  DataList datas;
58  datas.append({":/tools/lb_bell", tr("Bell")});
59  datas.append({":/tools/lb_timer", tr("Timing")});
60  datas.append({":/tools/lb_transform", tr("Transform")});
61  datas.append({":/tools/lb_spectrum", tr("Spectrum")});
62  datas.append({":/tools/lb_connections" ,tr("Connection")});
63  datas.append({":/tools/lb_gain", tr("Gain")});
64  datas.append({":/tools/lb_dlna", tr("DLNA")});
65  datas.append({":/tools/lb_detect", tr("Identify")});
66  datas.append({":/tools/lb_screen_saver", tr("Saver")});
67  datas.append({":/tools/lb_playlist", tr("Playlist")});;
68 
69  for(const Data &data : qAsConst(datas))
70  {
71  QListWidgetItem *item = new QListWidgetItem(QIcon(data.m_icon), data.m_name, m_ui->listItemWidget);
72  item->setForeground(QColor(TTK::UI::Color01));
73  item->setSizeHint(QSize(80, 90));
74  m_ui->listItemWidget->addItem(item);
75  }
76 }
77 
78 void MusicToolSetsWidget::currentItemClicked(QListWidgetItem *item)
79 {
80  hide();
81  //
82  switch(m_ui->listItemWidget->row(item))
83  {
84  case 0:
85  {
87  break;
88  }
89  case 1:
90  {
91  MusicTimerWidget widget(this);
92  QStringList songlist;
94  widget.setSongStringList(songlist);
95  widget.exec();
96  break;
97  }
98  case 2:
99  {
100  MusicTransformWidget(this).exec();
101  break;
102  }
103  case 3:
104  {
106  break;
107  }
108  case 4:
109  {
111  break;
112  }
113  case 5:
114  {
116  break;
117  }
118  case 6:
119  {
121  break;
122  }
123  case 7:
124  {
126  break;
127  }
128  case 8:
129  {
131  break;
132  }
133  case 9:
134  {
136  break;
137  }
138  default: break;
139  }
140 }
141 
143 {
144  m_ui->listItemWidget->clear();
145 }
146 
147 void MusicToolSetsWidget::contextMenuEvent(QContextMenuEvent *event)
148 {
149  Q_UNUSED(event);
150  QListWidgetItem *it = m_ui->listItemWidget->currentItem();
151  if(it)
152  {
153  currentItemClicked(it);
154  }
155 }
static MusicRightAreaWidget * instance()
static const QString ListWidgetStyle02
static MusicApplication * instance()
The class of the tool sets widget.
#define TTK_DECLARE_LIST(Class)
Definition: ttkqtglobal.h:173
void currentItemClicked(QListWidgetItem *item)
Ui::MusicToolSetsWidget * m_ui
voidpf void uLong size
Definition: ioapi.h:136
The class of the replay gain widget.
The class of the song ringtone maker widget.
void setBackgroundLabel(QLabel *label) noexcept
virtual void contextMenuEvent(QContextMenuEvent *event) overridefinal
The class of the music spectrum widget all.
#define qAsConst
Definition: ttkqtglobal.h:57
static const QString ScrollBarStyle01
ScrollBar.
#define TTK_GENERATE_SINGLE_WIDGET(...)
The class of the song dlna transfer widget.
void currentPlaylist(QStringList &list)
MusicToolSetsWidget(QWidget *parent=nullptr)
The class of the network connection test widget.
The class of the music meta.
#define TTK_REMOVE_SINGLE_WIDGET(object)
static const QString ToolButtonStyle04
void setSongStringList(const QStringList &list)
static constexpr unsigned int Color01
Color QRgb.
Definition: musicuiobject.h:32
The class of the transform widget.
The class of the timer widget.
void functionClicked(int index, QWidget *widget=nullptr)
The class of the moving widget base.