diff options
author | Carl Hetherington <carl@carlh.net> | 2007-10-06 17:27:07 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2007-10-06 17:27:07 +0000 |
commit | c8a4f8002b28647faf31eeaa11d500fa15f06f22 (patch) | |
tree | c635cbf68cb5221084d0ffaa5f79ef2f9dd3c822 /gtk2_ardour/region_selection.cc | |
parent | 61872c56631b313fec4ed3a1cb998335bb346731 (diff) |
Add some comments to the RegionSelection class.
git-svn-id: svn://localhost/ardour2/trunk@2524 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/region_selection.cc')
-rw-r--r-- | gtk2_ardour/region_selection.cc | 68 |
1 files changed, 66 insertions, 2 deletions
diff --git a/gtk2_ardour/region_selection.cc b/gtk2_ardour/region_selection.cc index 8074383141..2e4eaaadcd 100644 --- a/gtk2_ardour/region_selection.cc +++ b/gtk2_ardour/region_selection.cc @@ -28,6 +28,9 @@ using namespace ARDOUR; using namespace PBD; using namespace sigc; +/** + * Construct an empty RegionSelection. + */ RegionSelection::RegionSelection () { @@ -37,6 +40,11 @@ RegionSelection::RegionSelection () _current_end = 0; } +/** + * Copy constructor. + * @param other RegionSelection to copy. + */ + RegionSelection::RegionSelection (const RegionSelection& other) { RegionView::RegionViewGoingAway.connect (mem_fun(*this, &RegionSelection::remove_it)); @@ -48,6 +56,11 @@ RegionSelection::RegionSelection (const RegionSelection& other) _current_end = other._current_end; } +/** + * operator= to set a RegionSelection to be the same as another. + * @param other Other RegionSelection. + */ + RegionSelection& RegionSelection::operator= (const RegionSelection& other) { @@ -66,6 +79,10 @@ RegionSelection::operator= (const RegionSelection& other) return *this; } +/** + * Empty this RegionSelection. + */ + void RegionSelection::clear_all() { @@ -75,11 +92,22 @@ RegionSelection::clear_all() _current_end = 0; } +/** + * @param rv RegionView. + * @return true if this selection contains rv. + */ + bool RegionSelection::contains (RegionView* rv) const { return find (begin(), end(), rv) != end(); } +/** + * Add a region to the selection. + * @param rv Region to add. + * @return false if we already had the region, otherwise true. + */ + bool RegionSelection::add (RegionView* rv) { @@ -98,19 +126,30 @@ RegionSelection::add (RegionView* rv) push_back (rv); - // add to layer sorted list + /* add to layer sorted list */ add_to_layer (rv); return true; } +/** + * Remove a region from the selection. + * @param rv Region to remove. + */ + void RegionSelection::remove_it (RegionView *rv) { remove (rv); } +/** + * Remove a region from the selection. + * @param rv Region to remove. + * @return true if the region was in the selection, false if not. + */ + bool RegionSelection::remove (RegionView* rv) { @@ -174,6 +213,11 @@ RegionSelection::remove (RegionView* rv) return false; } +/** + * Add a region to the list sorted by layer. + * @param rv Region to add. + */ + void RegionSelection::add_to_layer (RegionView * rv) { @@ -200,6 +244,11 @@ struct RegionSortByTime { }; +/** + * @param foo List which will be filled with the selection's regions + * sorted by position. + */ + void RegionSelection::by_position (list<RegionView*>& foo) const { @@ -226,7 +275,13 @@ struct RegionSortByTrack { } } }; - + + +/** + * @param List which will be filled with the selection's regions + * sorted by track and position. + */ + void RegionSelection::by_track (list<RegionView*>& foo) const { @@ -241,6 +296,10 @@ RegionSelection::by_track (list<RegionView*>& foo) const return; } +/** + * @param Sort the selection by position and track. + */ + void RegionSelection::sort_by_position_and_track () { @@ -248,6 +307,11 @@ RegionSelection::sort_by_position_and_track () sort (sorter); } +/** + * @param tv Track. + * @return true if any of the selection's regions are on tv. + */ + bool RegionSelection::involves (const TimeAxisView& tv) const { |