f61a0d892c
fix error in framepos_{plus,minus}_bbt() which miscounted beats while stepping through bars - stops dragged MIDI notes from ending up in the wrong place, and more
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11159 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 18:48:32 +00:00
2858b0474e
fix (?) tricky locking issues in the tempo map by adding a second lock and independently locking the metrics and the map itself
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11157 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 17:55:42 +00:00
Carl Hetherington
b9a9d8d047
Use a few shared_ptrs to make things slightly neater.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11156 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 13:56:09 +00:00
365a8f7f14
implement TempoMap::framepos_minus_beats() using new bar|beat map structure, and fix accuracy of TempoMap::framepos_plus_bbt()
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 03:27:55 +00:00
b1a33855ce
use BBTPoint::is_bar() rather than ::beat == 1 ; implement TempoMap::framepos_plus_{beats,bbt}() with new map structure (not totally finished or accurate yet); prevent crash when dragging a marker to replace the initial tempo/meter markers
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11154 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 02:49:01 +00:00
Carl Hetherington
10d9eaf0bd
Remove unused variables.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11153 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:13:16 +00:00
Carl Hetherington
2bea7aaca5
Maybe fix initial run of tests with sources.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:13:11 +00:00
Carl Hetherington
783f31816c
Happy New Year
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11151 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:13:05 +00:00
Carl Hetherington
58d8b7f42f
Add valgrind option for tests.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:12:58 +00:00
Carl Hetherington
469d3b8fd7
Add TestNeedingPlaylistAndRegions
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11149 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:12:53 +00:00
43441aa924
remove duplicated test conditions
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11148 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 19:20:54 +00:00
bc003a539b
save 4 bytes per Bar|Beat point in the tempo map
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11147 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 19:03:13 +00:00
2a200bdc0e
return two iterators into the Bars|Beats list of the tempo map rather than making a copy; use iterators in the GUI
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11146 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 18:43:58 +00:00
0d4658e0af
more tempo fixes, including handling multiple metrics at the same place, and fixing round_to_beat_subdivision(). almost done now...
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11145 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:59:47 +00:00
19126ddc09
fix incorrect tempo test
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11144 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:58:46 +00:00
ce5de59c77
remove body of no-longer-relevant tempo-related test
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11143 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:36:40 +00:00
d6ff0e35d8
add support for -D foobar when running tests
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11142 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:36:17 +00:00
Carl Hetherington
431a30b3a9
Add notes on running unit tests.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11141 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 16:10:34 +00:00
Carl Hetherington
b6438ed1f6
Add TestNeedingSession and add missing tempo_test.h
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11140 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 16:05:25 +00:00
Carl Hetherington
dd57700445
New test.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11139 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:51 +00:00
Carl Hetherington
b0577f260c
More test friends.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11138 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:22 +00:00
Carl Hetherington
d345d44688
Reverse parameters to CPPUNIT_ASSERT_EQUAL so its assert
...
messages read the right way round.
git-svn-id: svn://localhost/ardour2/branches/3.0@11137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:17 +00:00
Carl Hetherington
e11c96019a
Fix erroneous test.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11136 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:12 +00:00
Carl Hetherington
279d0ff34b
Remove unused variables.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11135 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:07 +00:00
Carl Hetherington
c9ed7d2402
Fix test build.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11134 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:01 +00:00
Carl Hetherington
c252d65f56
Reverse parameters to CPPUNIT_ASSERT_EQUAL so its assert
...
messages read the right way round.
git-svn-id: svn://localhost/ardour2/branches/3.0@11133 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:31:55 +00:00
Carl Hetherington
8be724db1b
Use the correct flag for DAZ and default to using FTZ and DAZ denormal protection.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11132 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-02 23:52:28 +00:00
f135947606
intermediate commit as all tempo/meter stuff starts to walk the precompute Bars|Beats list. Still have ::round_to_beat_subdivision() to fix. haven't really done any thorough testing at this point, but basic stuff seems OK
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11131 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-02 23:32:33 +00:00
69c7dac1a1
new approach to tempo/meter: compute and store the entire map (every bar|beat point), thus enabling us to use the same computation to set the BBT points AND the metric markers (tempo + meter) on the audio timeline. It is known that snapping to the BBT grid doesn't work correctly right now, but this probably caused by the separate code in TempoMap::round_to_type() and i'll dig into that tomorrow. Note that the Bar|beat point list is evaluated "lazily" - we'll never store more than anyone actually needs to display or know, other than 1 minute's worth starting from frame zero
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11129 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-02 04:04:14 +00:00
Carl Hetherington
084fc8b327
Slightly improve proxying of events by crossfade views; doesn't really have any positive effect, unfortunately.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11127 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-31 13:25:56 +00:00
Carl Hetherington
6c0224c987
Emit notify_layering_changed() more often; especially when we remove the only region on a top layer, and the StreamView needs to sort itself out.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11126 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-31 13:25:50 +00:00
Carl Hetherington
9c8a27c664
Don't round control list events when x-scaling them; prevents large loss of accuracy with xfades when they are scaled to be small and then expanded again ( #4602 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11125 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-31 13:25:29 +00:00
Carl Hetherington
54ff6901a9
Restore update of coverage frames on playlist contents changed, which is needed for trim.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-31 00:19:08 +00:00
Carl Hetherington
b93254f275
Anywhere that deletes regions needs to use a rdiff() on the playlist
...
for the undo history, so that changes to regions' layering_index
get stored in the undo record. Make Playlist::update use add_region_internal
so that undone regions don't have their layering_index corrupted.
Setup layering indices on relayer() so that deletion of regions
causes an update.
git-svn-id: svn://localhost/ardour2/branches/3.0@11123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 23:41:17 +00:00
Carl Hetherington
0be530821c
Debug code.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 23:41:11 +00:00
Carl Hetherington
b5b921d820
Make coverage frames work slightly better; jury is still out on whether they are any use, I think.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 21:56:11 +00:00
Carl Hetherington
dd53e7284a
Set up layering_index immediately on an explicit layer, so that undo
...
works properly. Stop the layer being a stateful property, as it is
always derived from layering_index, unambigiously, by relayer().
git-svn-id: svn://localhost/ardour2/branches/3.0@11120 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 20:05:48 +00:00
Carl Hetherington
2c23ff8ceb
Add assert.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11119 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 20:05:40 +00:00
ccc93c4aef
centralize use of "from-context-menu" in Editor::get_preferred_edit_position(), and use it when pasting as well
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11118 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 17:28:05 +00:00
6df1d06f8b
fix logic for context-menu-mouse-dependent actions so that if the edit point is not the mouse, we still use the edit point even from the context menu. klar?
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11117 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 16:21:10 +00:00
Carl Hetherington
42aea0b9fd
Clean up comments to create_note_at, since it no longers snaps its length parameter. Move the 1 tick shortening out of the method for the same reason. Make sure that create drags make notes with a minimum length of 1 tick ( #4600 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11116 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 13:41:16 +00:00
976e163406
make insert-patch-change from context menu use context click event for position ( fixes #4570 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11113 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 01:50:34 +00:00
21d4eb56d4
fix default response behaviour of Gtkmm2ext::Prompter (from colinf)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 01:41:21 +00:00
Carl Hetherington
b177514930
Revert internals of the last layering-related commit, and go back a slightly-cleaned-up version of how it was before. Remove all layering modes; only option now is add-is-higher. Move-add-higher could easily be re-added if anyone uses it.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11111 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 22:14:15 +00:00
cabb76cce6
clean up comments and commented code
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11110 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 21:40:20 +00:00
07750ccb32
next iteration of tempo map stuff - fixes off-by-one issues with bar offset<->beat math
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11109 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 21:34:46 +00:00
c19121459b
stupid hack to fix issues with OS X Carbon headers
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11107 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 16:44:49 +00:00
8bad14ff65
OS X packagin fix to pick up surfaces
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11106 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 16:44:23 +00:00
09b0ae782c
avoid crash on region drag end trying to access TimeAxisView::view() for TAV's that don't have one
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11105 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 14:48:42 +00:00
724771f18a
tweak up size+spacing of main menu bar info box
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11104 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 14:29:23 +00:00