本文整理汇总了C++中Playlist::isModified方法的典型用法代码示例。如果您正苦于以下问题:C++ Playlist::isModified方法的具体用法?C++ Playlist::isModified怎么用?C++ Playlist::isModified使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Playlist
的用法示例。
在下文中一共展示了Playlist::isModified方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: populatePreviewFromSaved
void PlaylistDialog::populatePreviewFromSaved(const QItemSelection &, const QItemSelection &)
{
static const int MAX_TRACKS_PREVIEW_AREA = 30;
QModelIndexList indexes = savedPlaylists->selectionModel()->selectedIndexes();
bool empty = indexes.isEmpty();
this->clearPreview(!empty);
if (indexes.size() == 1) {
uint playlistId = _savedPlaylistModel->itemFromIndex(indexes.first())->data(PlaylistID).toUInt();
QList<TrackDAO> tracks = SqlDatabase::instance()->selectPlaylistTracks(playlistId);
for (int i = 0; i < tracks.size(); i++) {
TrackDAO track = tracks.at(i);
QTreeWidgetItem *item = new QTreeWidgetItem;
item->setText(0, QString("%1 (%2 - %3)").arg(track.title(), track.artist(), track.album()));
previewPlaylist->addTopLevelItem(item);
if (i + 1 == MAX_TRACKS_PREVIEW_AREA) {
QTreeWidgetItem *item = new QTreeWidgetItem;
item->setText(0, tr("And more tracks..."));
previewPlaylist->addTopLevelItem(item);
break;
}
}
}
loadPlaylists->setDisabled(empty);
deletePlaylists->setDisabled(empty);
exportPlaylists->setEnabled(indexes.size() == 1);
// Some work for the Save button
if (empty) {
savePlaylists->setEnabled(false);
} else {
bool allPlaylistsAreModified = true;
QMap<uint, Playlist*> map;
for (int i = 0; i < _playlists.count(); i++) {
Playlist *p = _playlists.at(i);
map.insert(p->id(), p);
}
for (QModelIndex idx : indexes) {
uint playlistId = idx.data(PlaylistID).toUInt();
if (map.contains(playlistId)) {
Playlist *p = map.value(playlistId);
allPlaylistsAreModified = allPlaylistsAreModified && p->isModified();
}
}
savePlaylists->setEnabled(allPlaylistsAreModified);
}
}
示例2: updatePlaylists
/** Update saved playlists when one is adding a new one. */
void PlaylistDialog::updatePlaylists()
{
// Populate saved playlists area
_savedPlaylistModel->clear();
_savedPlaylistModel->blockSignals(true);
QMap<uint, Playlist*> map;
for (int i = 0; i < _playlists.count(); i++) {
Playlist *p = _playlists.at(i);
if (p->id() != 0) {
map.insert(p->id(), p);
}
}
for (PlaylistDAO playlist : SqlDatabase::instance()->selectPlaylists()) {
QStandardItem *item = new QStandardItem(playlist.title());
item->setData(playlist.id(), PlaylistID);
if (playlist.icon().isEmpty()) {
Playlist *p = map.value(playlist.id().toUInt());
if (p && p->isModified()) {
item->setIcon(QIcon(":/icons/playlist_modified"));
item->setData(true, PlaylistModified);
item->setToolTip(tr("This playlist has changed"));
} else {
item->setIcon(QIcon(":/icons/playlist"));
}
} else {
item->setIcon(QIcon(playlist.icon()));
}
_savedPlaylistModel->appendRow(item);
_saved.insert(item, playlist);
}
_savedPlaylistModel->blockSignals(false);
// Reset buttons status
loadPlaylists->setEnabled(false);
savePlaylists->setEnabled(false);
deletePlaylists->setEnabled(false);
exportPlaylists->setEnabled(false);
}