TTKMusicPlayer
4.1.3.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
TTKModule
TTKCore
musicNetworkKits
core
musicabstractqueryrequest.cpp
Go to the documentation of this file.
1
#include "
musicabstractqueryrequest.h
"
2
3
MusicAbstractQueryRequest::MusicAbstractQueryRequest
(QObject *parent)
4
:
MusicPageQueryRequest
(parent),
5
m_queryServer(
"Invalid"
),
6
m_queryType(
QueryType
::Music),
7
m_queryMode(
QueryMode
::Normal)
8
{
9
10
}
11
12
void
MusicAbstractQueryRequest::startToSearchByID
(
const
QString &value)
13
{
14
Q_UNUSED(value);
15
}
16
17
void
MusicAbstractQueryRequest::startToQueryResult
(
TTK::MusicSongInformation
*info,
int
bitrate)
18
{
19
Q_UNUSED(bitrate);
20
for
(
TTK::MusicSongInformation
&var :
m_items
)
21
{
22
if
(var.m_songId == info->
m_songId
)
23
{
24
var.m_songProps = info->
m_songProps
;
25
break
;
26
}
27
}
28
}
29
30
void
MusicAbstractQueryRequest::downLoadFinished
()
31
{
32
Q_EMIT
clearItems
();
33
m_items
.clear();
34
MusicPageQueryRequest::downLoadFinished
();
35
}
36
37
QString
MusicAbstractQueryRequest::serverToString
()
const
38
{
39
const
QString &v = tr(
"Current used server from %1"
);
40
if
(
m_queryServer
.contains(
QUERY_KG_INTERFACE
))
41
{
42
return
v.arg(tr(
"KG"
));
43
}
44
else
if
(
m_queryServer
.contains(
QUERY_KW_INTERFACE
))
45
{
46
return
v.arg(tr(
"KW"
));
47
}
48
else
if
(
m_queryServer
.contains(
QUERY_WY_INTERFACE
))
49
{
50
return
v.arg(tr(
"WY"
));
51
}
52
else
if
(!
m_queryServer
.isEmpty())
53
{
54
return
v.arg(
m_queryServer
);
55
}
56
else
57
{
58
return
{};
59
}
60
}
61
62
bool
MusicAbstractQueryRequest::fetchUrlPathSize
(
TTK::MusicSongProperty
*prop,
const
QString &duration)
const
63
{
64
if
(!prop->
m_size
.isEmpty() && prop->
m_size
!=
TTK_DEFAULT_STR
)
65
{
66
return
true
;
67
}
68
69
if
(prop->
m_bitrate
!= -1 && !duration.isEmpty() && duration !=
TTK_DEFAULT_STR
)
70
{
71
prop->
m_size
=
TTK::Number::sizeByteToLabel
(duration, prop->
m_bitrate
);
72
}
73
else
74
{
75
TTK_NETWORK_QUERY_CHECK
(
false
);
76
prop->
m_size
=
TTK::Number::sizeByteToLabel
(
TTK::fetchFileSizeByUrl
(prop->
m_url
));
77
TTK_NETWORK_QUERY_CHECK
(
false
);
78
}
79
return
true
;
80
}
81
82
bool
MusicAbstractQueryRequest::fetchUrlPathSize
(TTK::MusicSongPropertyList *props,
const
QString &duration)
const
83
{
84
for
(
int
i = 0; i < props->count(); ++i)
85
{
86
fetchUrlPathSize
(&(*props)[i], duration);
87
}
88
return
true
;
89
}
TTK::fetchFileSizeByUrl
TTK_MODULE_EXPORT qint64 fetchFileSizeByUrl(const QString &url)
Definition:
ttkabstractnetwork.cpp:84
MusicAbstractQueryRequest::QueryMode
QueryMode
Definition:
musicabstractqueryrequest.h:126
TTK_NETWORK_QUERY_CHECK
#define TTK_NETWORK_QUERY_CHECK(VALUE)
Definition:
ttkabstractnetwork.h:113
TTK_DEFAULT_STR
#define TTK_DEFAULT_STR
Definition:
ttkglobal.h:203
TTK::MusicSongProperty
The class of the music song property.
Definition:
musicobject.h:225
MusicAbstractQueryRequest::QueryType
QueryType
Definition:
musicabstractqueryrequest.h:118
QUERY_KG_INTERFACE
static constexpr const char * QUERY_KG_INTERFACE
Definition:
musicabstractqueryrequest.h:100
MusicAbstractQueryRequest::MusicAbstractQueryRequest
MusicAbstractQueryRequest(QObject *parent=nullptr)
Definition:
musicabstractqueryrequest.cpp:3
TTK::MusicSongInformation::m_songProps
MusicSongPropertyList m_songProps
Definition:
musicobject.h:297
MusicPageQueryRequest
The class of the abstract download page query request.
Definition:
musicpagequeryrequest.h:35
TTK::MusicSongProperty::m_bitrate
int m_bitrate
Definition:
musicobject.h:227
TTK::Number::sizeByteToLabel
TTK_MODULE_EXPORT QString sizeByteToLabel(qint64 size)
Definition:
musicnumberutils.cpp:31
TTKAbstractNetwork::downLoadFinished
virtual void downLoadFinished()
Definition:
ttkabstractnetwork.cpp:35
MusicAbstractQueryRequest::startToSearchByID
virtual void startToSearchByID(const QString &value)
Definition:
musicabstractqueryrequest.cpp:12
MusicAbstractQueryRequest::startToQueryResult
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate)
Definition:
musicabstractqueryrequest.cpp:17
MusicAbstractQueryRequest::m_items
TTK::MusicSongInformationList m_items
Definition:
musicabstractqueryrequest.h:222
TTK::MusicSongInformation::m_songId
QString m_songId
Definition:
musicobject.h:285
QUERY_WY_INTERFACE
static constexpr const char * QUERY_WY_INTERFACE
Definition:
musicabstractqueryrequest.h:98
TTK::MusicSongProperty::m_size
QString m_size
Definition:
musicobject.h:230
MusicAbstractQueryRequest::fetchUrlPathSize
bool fetchUrlPathSize(TTK::MusicSongProperty *prop, const QString &duration) const
Definition:
musicabstractqueryrequest.cpp:62
MusicAbstractQueryRequest::m_queryServer
QString m_queryServer
Definition:
musicabstractqueryrequest.h:219
TTK::MusicSongProperty::m_url
QString m_url
Definition:
musicobject.h:229
QUERY_KW_INTERFACE
static constexpr const char * QUERY_KW_INTERFACE
Definition:
musicabstractqueryrequest.h:99
MusicAbstractQueryRequest::clearItems
void clearItems()
MusicAbstractQueryRequest::downLoadFinished
virtual void downLoadFinished() override
Definition:
musicabstractqueryrequest.cpp:30
TTK::MusicSongInformation
The class of the music song information.
Definition:
musicobject.h:283
musicabstractqueryrequest.h
MusicAbstractQueryRequest::serverToString
QString serverToString() const
Definition:
musicabstractqueryrequest.cpp:37
Generated on Tue Jan 21 2025 21:07:12 for TTKMusicPlayer by
1.8.8