X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fplaylist_selection.h;h=93aea79093af941472fb61e4b9b2131abf5facc9;hb=b2aaffadc51ad38939e52d5f792e3e9a098ff2d7;hp=813f8a92111a5484ba7220d19e388d297b50ffe5;hpb=532f6aad4ac79ca15d69deccd18fca90e444c437;p=ardour.git diff --git a/gtk2_ardour/playlist_selection.h b/gtk2_ardour/playlist_selection.h index 813f8a9211..93aea79093 100644 --- a/gtk2_ardour/playlist_selection.h +++ b/gtk2_ardour/playlist_selection.h @@ -1,3 +1,22 @@ +/* + Copyright (C) 2000-2007 Paul Davis + + 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., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + #ifndef __ardour_gtk_playlist_selection_h__ #define __ardour_gtk_playlist_selection_h__ @@ -8,6 +27,20 @@ namespace ARDOUR { class Playlist; } -struct PlaylistSelection : list > {}; +struct PlaylistSelection : std::list > { +public: + const_iterator + get_nth(ARDOUR::DataType type, size_t nth) const { + size_t count = 0; + for (const_iterator l = begin(); l != end(); ++l) { + if ((*l)->data_type() == type) { + if (count++ == nth) { + return l; + } + } + } + return end(); + } +}; #endif /* __ardour_gtk_playlist_selection_h__ */