From 70637af7415d4b318355eaf670611331908530f2 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Fri, 6 Sep 2013 05:55:41 +0000 Subject: select all group if needed git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3681 90c681e8-e032-0410-971d-27865f9a5e38 --- src/qmmpui/groupedcontainer.cpp | 2 +- src/qmmpui/playlistgroup.cpp | 4 ++-- src/qmmpui/playlistgroup.h | 2 +- src/qmmpui/playlistmodel.cpp | 16 +++++++++++++++- src/qmmpui/playlistmodel.h | 5 +++++ 5 files changed, 24 insertions(+), 5 deletions(-) (limited to 'src/qmmpui') diff --git a/src/qmmpui/groupedcontainer.cpp b/src/qmmpui/groupedcontainer.cpp index 6e6b2d6c0..73d7fe3a6 100644 --- a/src/qmmpui/groupedcontainer.cpp +++ b/src/qmmpui/groupedcontainer.cpp @@ -35,7 +35,7 @@ void GroupedContainer::addGroup(PlayListGroup *group) { m_groups.append(group); m_items.append(group); - foreach (PlayListTrack *item, *group->tracks()) + foreach (PlayListTrack *item, group->tracks()) { m_items.append(item); } diff --git a/src/qmmpui/playlistgroup.cpp b/src/qmmpui/playlistgroup.cpp index a4c7c51a7..e8ee11096 100644 --- a/src/qmmpui/playlistgroup.cpp +++ b/src/qmmpui/playlistgroup.cpp @@ -74,9 +74,9 @@ void PlayListGroup::remove(PlayListTrack *track) m_tracks.removeAll(track); } -QList *PlayListGroup::tracks() +QList PlayListGroup::tracks() { - return &m_tracks; + return m_tracks; } int PlayListGroup::count() const diff --git a/src/qmmpui/playlistgroup.h b/src/qmmpui/playlistgroup.h index a766919b1..11e638744 100644 --- a/src/qmmpui/playlistgroup.h +++ b/src/qmmpui/playlistgroup.h @@ -40,7 +40,7 @@ public: bool contains(PlayListTrack *track) const; bool isEmpty() const; void remove(PlayListTrack *track); - QList *tracks(); + QList tracks(); int count() const; /*! * Returns formatted length of the item. diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp index 9431bc954..ef77e72a4 100644 --- a/src/qmmpui/playlistmodel.cpp +++ b/src/qmmpui/playlistmodel.cpp @@ -224,7 +224,7 @@ bool PlayListModel::isGroup(int index) const { if (index > count()-1 || index < 0) return false; - return !m_container->item(index)->isGroup(); + return m_container->item(index)->isGroup(); } bool PlayListModel::next() @@ -306,6 +306,20 @@ void PlayListModel::setSelected(int index, bool selected) emit listChanged(); } +void PlayListModel::setSelected(QList tracks, bool selected) +{ + foreach(PlayListTrack *t, tracks) + t->setSelected(selected); + emit listChanged(); +} + +void PlayListModel::setSelected(QList items, bool selected) +{ + foreach(PlayListItem *i, items) + i->setSelected(selected); + emit listChanged(); +} + void PlayListModel::removeSelected() { removeSelection(false); diff --git a/src/qmmpui/playlistmodel.h b/src/qmmpui/playlistmodel.h index 149cc3e49..9b377d20d 100644 --- a/src/qmmpui/playlistmodel.h +++ b/src/qmmpui/playlistmodel.h @@ -159,6 +159,11 @@ public: * @param selected Selection state (\b true - select, \b false - unselect) */ void setSelected(int index, bool selected = true); + + + void setSelected(QList tracks, bool selected = true); + + void setSelected(QList items, bool selected = true); /*! * Advances to the next item. Returns \b false if next iten doesn't exist, * otherwise returns \b true -- cgit v1.2.3-13-gbd6f