From c54fd79ea03ede6f0570e76ab8ca62b18823aaf7 Mon Sep 17 00:00:00 2001 From: nhnielsen Date: Tue, 16 Oct 2007 07:57:14 +0000 Subject: [PATCH] Add a few utility functions git-svn-id: svn+ssh://svn.kde.org/home/kde/trunk/extragear/multimedia/amarok@725806 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- src/playlist/PlaylistAlbumGroup.cpp | 35 +++++++++++++++++++++++++++++++++++ src/playlist/PlaylistAlbumGroup.h | 4 ++++ 2 files changed, 39 insertions(+) diff --git a/src/playlist/PlaylistAlbumGroup.cpp b/src/playlist/PlaylistAlbumGroup.cpp index 2d1c99914..1c47a3f70 100644 --- a/src/playlist/PlaylistAlbumGroup.cpp +++ b/src/playlist/PlaylistAlbumGroup.cpp @@ -116,3 +116,38 @@ int Playlist::AlbumGroup::elementsInGroup(int row) return 0; } + + +int Playlist::AlbumGroup::firstInGroup(int row) +{ + + foreach( Group group, m_groups ) { + if ( group.rows.contains( row ) ) { + return group.rows.first(); + } + } + +} + +int Playlist::AlbumGroup::lastInGroup(int row) +{ + + foreach( Group group, m_groups ) { + if ( group.rows.contains( row ) ) { + return group.rows.last(); + } + } +} + +void Playlist::AlbumGroup::removeGroup(int row) +{ + + for (int i = 0; i < m_groups.count(); i++ ) { + if ( m_groups[ i ].rows.contains( row ) ) { + m_groups.removeAt( i ); + return; + } + } + + +} \ No newline at end of file diff --git a/src/playlist/PlaylistAlbumGroup.h b/src/playlist/PlaylistAlbumGroup.h index 9b8c35cce..c5916f02a 100644 --- a/src/playlist/PlaylistAlbumGroup.h +++ b/src/playlist/PlaylistAlbumGroup.h @@ -63,6 +63,10 @@ public: void setCollapsed( int row, bool collapsed ); int elementsInGroup( int row ); + int firstInGroup( int row ); + int lastInGroup( int row ); + void removeGroup( int row ); + private: QList< Group > m_groups; -- 2.11.4.GIT