projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove the Solo+Iso buttons in the Master bus.
[ardour.git]
/
gtk2_ardour
/
time_selection.cc
diff --git
a/gtk2_ardour/time_selection.cc
b/gtk2_ardour/time_selection.cc
index 0d1b94e8a0ae140dd9d0ccb5be63fe2ad9f6ffc9..2f40dcb8e4afe0a06c80f963193fa94660bb1caf 100644
(file)
--- a/
gtk2_ardour/time_selection.cc
+++ b/
gtk2_ardour/time_selection.cc
@@
-1,5
+1,5
@@
/*
/*
- Copyright (C) 2003-2004 Paul Davis
+ Copyright (C) 2003-2004 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
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
@@
-15,19
+15,19
@@
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id$
*/
#include <algorithm>
*/
#include <algorithm>
-#include
<pbd/error.h>
-#include
<ardour/ardour.h>
+#include
"pbd/error.h"
+#include
"ardour/types.h"
#include "time_selection.h"
#include "time_selection.h"
-#include "i18n.h"
+#include "
pbd/
i18n.h"
using namespace ARDOUR;
using namespace ARDOUR;
+using namespace PBD;
AudioRange&
TimeSelection::operator[] (uint32_t which)
AudioRange&
TimeSelection::operator[] (uint32_t which)
@@
-38,7
+38,7
@@
TimeSelection::operator[] (uint32_t which)
}
}
fatal << string_compose (_("programming error: request for non-existent audio range (%1)!"), which) << endmsg;
}
}
fatal << string_compose (_("programming error: request for non-existent audio range (%1)!"), which) << endmsg;
- /*NOTREACHED*/
+
abort();
/*NOTREACHED*/
return *(new AudioRange(0,0,0)); /* keep the compiler happy; never called */
}
return *(new AudioRange(0,0,0)); /* keep the compiler happy; never called */
}
@@
-55,9
+55,9
@@
TimeSelection::consolidate ()
continue;
}
continue;
}
- if (
(*a).coverage ((*b).start, (*b).end) !=
OverlapNone) {
-
(*a).start = std::min ((*a).start, (*b).
start);
-
(*a).end = std::max ((*a).end, (*b).
end);
+ if (
a->coverage (b->start, b->end) != Evoral::
OverlapNone) {
+
a->start = std::min (a->start, b->
start);
+
a->end = std::max (a->end, b->
end);
erase (b);
changed = true;
goto restart;
erase (b);
changed = true;
goto restart;
@@
-66,16
+66,16
@@
TimeSelection::consolidate ()
}
return changed;
}
return changed;
-}
+}
-jack_nframes_t
+framepos_t
TimeSelection::start ()
{
if (empty()) {
return 0;
}
TimeSelection::start ()
{
if (empty()) {
return 0;
}
-
jack_nframes_t first = max_frame
s;
+
framepos_t first = max_framepo
s;
for (std::list<AudioRange>::iterator i = begin(); i != end(); ++i) {
if ((*i).start < first) {
for (std::list<AudioRange>::iterator i = begin(); i != end(); ++i) {
if ((*i).start < first) {
@@
-85,10
+85,10
@@
TimeSelection::start ()
return first;
}
return first;
}
-jack_nframes_t
+framepos_t
TimeSelection::end_frame ()
{
TimeSelection::end_frame ()
{
-
jack_nframe
s_t last = 0;
+
framepo
s_t last = 0;
/* XXX make this work like RegionSelection: no linear search needed */
/* XXX make this work like RegionSelection: no linear search needed */
@@
-100,9
+100,12
@@
TimeSelection::end_frame ()
return last;
}
return last;
}
-
jack_nframes
_t
+
framecnt
_t
TimeSelection::length()
{
TimeSelection::length()
{
+ if (empty()) {
+ return 0;
+ }
+
return end_frame() - start() + 1;
}
return end_frame() - start() + 1;
}
-