summaryrefslogtreecommitdiff
path: root/libs/ardour/location.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-03-11 16:01:06 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-03-11 16:01:06 +0000
commitddfc8d2185ec9cef7afe74091ea544ec286f13a8 (patch)
tree03cd195a2624e7389c2ed1e3f1fa40e43bf68345 /libs/ardour/location.cc
parentb6f309bb85307d36b6fa1eaea2e7178066cb3f38 (diff)
start marker implemented, along with GotoZero command for old behaviour; R binding for global rec-enable now works (menu item added)
git-svn-id: svn://localhost/trunk/ardour2@376 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/location.cc')
-rw-r--r--libs/ardour/location.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/libs/ardour/location.cc b/libs/ardour/location.cc
index 972384cc32..f4eea2cfc5 100644
--- a/libs/ardour/location.cc
+++ b/libs/ardour/location.cc
@@ -155,6 +155,14 @@ Location::set_is_end (bool yn, void *src)
}
void
+Location::set_is_start (bool yn, void *src)
+{
+ if (set_flag_internal (yn, IsStart)) {
+ FlagsChanged (this, src); /* EMIT SIGNAL */
+ }
+}
+
+void
Location::set_auto_punch (bool yn, void *src)
{
if (is_mark() || _start == _end) {
@@ -660,6 +668,17 @@ Locations::end_location () const
}
Location*
+Locations::start_location () const
+{
+ for (LocationList::const_iterator i = locations.begin(); i != locations.end(); ++i) {
+ if ((*i)->is_start()) {
+ return const_cast<Location*> (*i);
+ }
+ }
+ return 0;
+}
+
+Location*
Locations::auto_loop_location () const
{
for (LocationList::const_iterator i = locations.begin(); i != locations.end(); ++i) {