Changeset View
Changeset View
Standalone View
Standalone View
src/trackslistener.cpp
Show All 12 Lines | |||||
13 | * | 13 | * | ||
14 | * You should have received a copy of the GNU Lesser General Public License | 14 | * You should have received a copy of the GNU Lesser General Public License | ||
15 | * along with this program. If not, see <https://www.gnu.org/licenses/>. | 15 | * along with this program. If not, see <https://www.gnu.org/licenses/>. | ||
16 | */ | 16 | */ | ||
17 | 17 | | |||
18 | #include "trackslistener.h" | 18 | #include "trackslistener.h" | ||
19 | 19 | | |||
20 | #include "databaseinterface.h" | 20 | #include "databaseinterface.h" | ||
21 | #include "datatypes.h" | ||||
21 | #include "filescanner.h" | 22 | #include "filescanner.h" | ||
22 | 23 | | |||
23 | #include <QMimeDatabase> | 24 | #include <QMimeDatabase> | ||
24 | #include <QSet> | 25 | #include <QSet> | ||
25 | #include <QList> | 26 | #include <QList> | ||
26 | #include <QDebug> | 27 | #include <QDebug> | ||
27 | 28 | | |||
28 | #include <array> | 29 | #include <array> | ||
▲ Show 20 Lines • Show All 129 Lines • ▼ Show 20 Line(s) | |||||
158 | 159 | | |||
159 | void TracksListener::trackByFileNameInList(const QUrl &fileName) | 160 | void TracksListener::trackByFileNameInList(const QUrl &fileName) | ||
160 | { | 161 | { | ||
161 | auto newTrackId = d->mDatabase->trackIdFromFileName(fileName); | 162 | auto newTrackId = d->mDatabase->trackIdFromFileName(fileName); | ||
162 | if (newTrackId == 0) { | 163 | if (newTrackId == 0) { | ||
163 | auto newTrack = scanOneFile(fileName); | 164 | auto newTrack = scanOneFile(fileName); | ||
164 | 165 | | |||
165 | if (newTrack.isValid()) { | 166 | if (newTrack.isValid()) { | ||
166 | auto oneData = DatabaseInterface::TrackDataType{}; | 167 | auto oneData = DataTypes::TrackDataType{}; | ||
167 | 168 | | |||
168 | if (!newTrack.title().isEmpty()) { | 169 | if (!newTrack.title().isEmpty()) { | ||
169 | oneData[DatabaseInterface::TrackDataType::key_type::TitleRole] = newTrack.title(); | 170 | oneData[DataTypes::TrackDataType::key_type::TitleRole] = newTrack.title(); | ||
170 | } else { | 171 | } else { | ||
171 | const auto &fileUrl = newTrack.resourceURI(); | 172 | const auto &fileUrl = newTrack.resourceURI(); | ||
172 | oneData[DatabaseInterface::TrackDataType::key_type::TitleRole] = fileUrl.fileName(); | 173 | oneData[DataTypes::TrackDataType::key_type::TitleRole] = fileUrl.fileName(); | ||
173 | } | 174 | } | ||
174 | 175 | | |||
175 | oneData[DatabaseInterface::TrackDataType::key_type::ArtistRole] = newTrack.artist(); | 176 | oneData[DataTypes::TrackDataType::key_type::ArtistRole] = newTrack.artist(); | ||
176 | oneData[DatabaseInterface::TrackDataType::key_type::AlbumRole] = newTrack.albumName(); | 177 | oneData[DataTypes::TrackDataType::key_type::AlbumRole] = newTrack.albumName(); | ||
177 | oneData[DatabaseInterface::TrackDataType::key_type::AlbumIdRole] = newTrack.albumId(); | 178 | oneData[DataTypes::TrackDataType::key_type::AlbumIdRole] = newTrack.albumId(); | ||
178 | oneData[DatabaseInterface::TrackDataType::key_type::TrackNumberRole] = newTrack.trackNumber(); | 179 | oneData[DataTypes::TrackDataType::key_type::TrackNumberRole] = newTrack.trackNumber(); | ||
179 | oneData[DatabaseInterface::TrackDataType::key_type::DiscNumberRole] = newTrack.discNumber(); | 180 | oneData[DataTypes::TrackDataType::key_type::DiscNumberRole] = newTrack.discNumber(); | ||
180 | oneData[DatabaseInterface::TrackDataType::key_type::DurationRole] = newTrack.duration(); | 181 | oneData[DataTypes::TrackDataType::key_type::DurationRole] = newTrack.duration(); | ||
181 | oneData[DatabaseInterface::TrackDataType::key_type::MilliSecondsDurationRole] = newTrack.duration().msecsSinceStartOfDay(); | 182 | oneData[DataTypes::TrackDataType::key_type::MilliSecondsDurationRole] = newTrack.duration().msecsSinceStartOfDay(); | ||
182 | oneData[DatabaseInterface::TrackDataType::key_type::ResourceRole] = newTrack.resourceURI(); | 183 | oneData[DataTypes::TrackDataType::key_type::ResourceRole] = newTrack.resourceURI(); | ||
183 | oneData[DatabaseInterface::TrackDataType::key_type::ImageUrlRole] = newTrack.albumCover(); | 184 | oneData[DataTypes::TrackDataType::key_type::ImageUrlRole] = newTrack.albumCover(); | ||
184 | 185 | | |||
185 | Q_EMIT trackHasChanged(oneData); | 186 | Q_EMIT trackHasChanged(oneData); | ||
186 | 187 | | |||
187 | return; | 188 | return; | ||
188 | } | 189 | } | ||
189 | 190 | | |||
190 | d->mTracksByFileNameSet.push_back(fileName); | 191 | d->mTracksByFileNameSet.push_back(fileName); | ||
191 | 192 | | |||
▲ Show 20 Lines • Show All 81 Lines • Show Last 20 Lines |