diff options
author | Max Kellermann <max@duempel.org> | 2014-02-27 17:12:42 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-02-27 17:12:42 +0100 |
commit | 809b89b5af5eaf7abc3240d786cda15f354b6624 (patch) | |
tree | c1affa37a38f45470cf68dbcae18310abaac7b38 /src/PlaylistTag.cxx | |
parent | 681e012fb542ee1bb2ea5312dc673987a7a8ee29 (diff) | |
download | mpd-809b89b5af5eaf7abc3240d786cda15f354b6624.tar.gz mpd-809b89b5af5eaf7abc3240d786cda15f354b6624.tar.xz mpd-809b89b5af5eaf7abc3240d786cda15f354b6624.zip |
Playlist*: move to queue/
Diffstat (limited to 'src/PlaylistTag.cxx')
-rw-r--r-- | src/PlaylistTag.cxx | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/src/PlaylistTag.cxx b/src/PlaylistTag.cxx deleted file mode 100644 index 556e7f4e9..000000000 --- a/src/PlaylistTag.cxx +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright (C) 2003-2014 The Music Player Daemon Project - * http://www.musicpd.org - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -/* - * Functions for editing the playlist (adding, removing, reordering - * songs in the queue). - * - */ - -#include "config.h" -#include "Playlist.hxx" -#include "PlaylistError.hxx" -#include "DetachedSong.hxx" -#include "tag/Tag.hxx" -#include "tag/TagBuilder.hxx" -#include "util/Error.hxx" - -bool -playlist::AddSongIdTag(unsigned id, TagType tag_type, const char *value, - Error &error) -{ - const int position = queue.IdToPosition(id); - if (position < 0) { - error.Set(playlist_domain, int(PlaylistResult::NO_SUCH_SONG), - "No such song"); - return false; - } - - DetachedSong &song = queue.Get(position); - if (song.IsFile()) { - error.Set(playlist_domain, int(PlaylistResult::DENIED), - "Cannot edit tags of local file"); - return false; - } - - { - TagBuilder tag(std::move(song.WritableTag())); - tag.AddItem(tag_type, value); - song.SetTag(tag.Commit()); - } - - queue.ModifyAtPosition(position); - OnModified(); - return true; -} - -bool -playlist::ClearSongIdTag(unsigned id, TagType tag_type, - Error &error) -{ - const int position = queue.IdToPosition(id); - if (position < 0) { - error.Set(playlist_domain, int(PlaylistResult::NO_SUCH_SONG), - "No such song"); - return false; - } - - DetachedSong &song = queue.Get(position); - if (song.IsFile()) { - error.Set(playlist_domain, int(PlaylistResult::DENIED), - "Cannot edit tags of local file"); - return false; - } - - { - TagBuilder tag(std::move(song.WritableTag())); - if (tag_type == TAG_NUM_OF_ITEM_TYPES) - tag.RemoveAll(); - else - tag.RemoveType(tag_type); - song.SetTag(tag.Commit()); - } - - queue.ModifyAtPosition(position); - OnModified(); - return true; -} |