TTKMusicPlayer  3.7.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
musicdownloadmgmtwidget.cpp
Go to the documentation of this file.
1 #include "ui_musicdownloadresetwidget.h"
3 #include "musicdownloadwidget.h"
4 #include "musicleftareawidget.h"
5 #include "musicapplication.h"
6 #include "musicurlutils.h"
7 
9  : MusicAbstractMoveWidget(parent),
10  m_ui(new Ui::MusicDownloadResetWidget),
11  m_parent(parent)
12 {
13  m_ui->setupUi(this);
14  setFixedSize(size());
15  setAttribute(Qt::WA_DeleteOnClose);
16  setBackgroundLabel(m_ui->background);
17 
18  m_ui->topTitleCloseButton->setIcon(QIcon(":/functions/btn_close_hover"));
19  m_ui->topTitleCloseButton->setStyleSheet(TTK::UI::ToolButtonStyle04);
20  m_ui->topTitleCloseButton->setCursor(QCursor(Qt::PointingHandCursor));
21  m_ui->topTitleCloseButton->setToolTip(tr("Close"));
22  connect(m_ui->topTitleCloseButton, SIGNAL(clicked()), SLOT(close()));
23 
24  m_ui->downloadButton->setStyleSheet(TTK::UI::PushButtonStyle03);
25  m_ui->openDetailButton->setStyleSheet(TTK::UI::PushButtonStyle03);
26  m_ui->openDirButton->setStyleSheet(TTK::UI::PushButtonStyle03);
27 
28 #ifdef Q_OS_UNIX
29  m_ui->downloadButton->setFocusPolicy(Qt::NoFocus);
30  m_ui->openDetailButton->setFocusPolicy(Qt::NoFocus);
31  m_ui->openDirButton->setFocusPolicy(Qt::NoFocus);
32 #endif
33 
34  connect(m_ui->downloadButton, SIGNAL(clicked()), SLOT(restartToRequest()));
35  connect(m_ui->openDetailButton, SIGNAL(clicked()), SLOT(openDetailInfo()));
36  connect(m_ui->openDirButton, SIGNAL(clicked()), SLOT(openFileLocation()));
37  connect(this, SIGNAL(openStackedDownloadWidget()), MusicLeftAreaWidget::instance(), SLOT(stackedMyDownWidgetChanged()));
38 }
39 
41 {
42  delete m_ui;
43 }
44 
46 {
48 }
49 
51 {
54  widget->show();
55 
56  close();
57 }
58 
60 {
61  close();
63 }
64 
66 {
67  bool exist = false;
68  const QString &path = MusicApplication::instance()->containsDownloadItem(exist);
69  if(exist)
70  {
71  TTK::Url::openUrl(path);
72  }
73  close();
74 }
75 
76 
78  : QObject(parent),
79  m_parent(TTKObjectCast(QWidget*, parent))
80 {
81 
82 }
83 
85 {
87  {
88  bool exist = false;
90 
91  if(exist)
92  {
94  resetWidget->initialize(name);
95  resetWidget->show();
96  return;
97  }
98  }
99 
101  if(parent()->metaObject()->indexOfSlot("downloadSongFinished()") != -1)
102  {
103  connect(widget, SIGNAL(dataDownloadChanged()), parent(), SLOT(downloadSongFinished()));
104  }
105  widget->initialize(name, type);
106  widget->show();
107 }
void setBackgroundLabel(QLabel *label)
static MusicApplication * instance()
The class of the download widget.
void initialize(MusicAbstractQueryRequest *request, int row)
Ui::MusicDownloadResetWidget * m_ui
voidpf void uLong size
Definition: ioapi.h:136
void initialize(const QString &name)
const char * name
Definition: http_parser.c:458
static const QString PushButtonStyle03
MusicDownloadMgmtWidget(QObject *parent=nullptr)
TTK_MODULE_EXPORT bool openUrl(const QString &path, bool local=true)
static MusicLeftAreaWidget * instance()
MusicDownloadResetWidget(QWidget *parent=nullptr)
The class of the download file exist widget.
static const QString ToolButtonStyle04
QString containsDownloadItem(bool &contains) const
void initialize(const QString &name, MusicAbstractQueryRequest::QueryType type)
The class of the moving widget base.
#define TTKObjectCast(x, y)
Definition: ttkqtglobal.h:60