Paul Davis
9412130c01
use cleaned up Temporal ::quarters*_at* API (GUI edition)
2021-08-13 12:51:31 -06:00
Paul Davis
90553b315f
fix up memento command use for tempo map undo/redo
2021-08-13 12:51:30 -06:00
Paul Davis
3c00fab75e
remove/hide Session::tempo_map() and use TempoMap::use() instead (thread local shared ptr) (GUI edition)
2021-08-13 12:51:30 -06:00
Paul Davis
9f866a6bbe
consolidate some TempoMap modifier methods
2021-08-13 12:51:30 -06:00
Paul Davis
dade9994d8
collect together modifying TempoMap methods, and make ::apply_with_metrics() more clearly const
2021-08-13 12:51:30 -06:00
Paul Davis
1098b27b35
new tempo map API for almost all of the GUI now
2021-08-13 12:51:30 -06:00
Paul Davis
7ef11dc698
continued work on using new tempo map API (before switch to RCU)
2021-08-13 12:51:30 -06:00
Paul Davis
749a49c278
incorporating new tempo map API
2021-08-13 12:51:29 -06:00
Paul Davis
5b2a435e02
getting editor_drag.cc to compile
2021-08-13 12:51:29 -06:00
Paul Davis
9d69fa3820
another day or two's work on timeline type conversion
2021-08-13 12:51:29 -06:00
Paul Davis
f4490f54c5
change Timecode::BBT_Time to use Temporal namespace, plus a couple of other minor changes to enable compilation
...
This still uses the tempo map object in libs/ardour, not the new one in libs/temporal, and isn't likely to be functional
(though it could be)
2021-08-13 12:51:28 -06:00
Ben Loftis
1fb5c443c7
and the 1/128
2021-02-21 07:14:49 -06:00
Paul Davis
b146e45df5
make sure that the 1/64ths grid case is covered
2021-02-20 18:37:56 -07:00
Robin Gareus
4050ca5633
Update GPL boilerplate and (C)
...
Copyright-holder and year information is extracted from git log.
git history begins in 2005. So (C) from 1998..2005 is lost. Also some
(C) assignment of commits where the committer didn't use --author.
2019-08-03 15:53:15 +02:00
Ben Loftis
808dc8ad64
new_grid: fix some thinkos in ruler math, to better match sensible grid lines.
...
Tweak enums to better match the Grid values they represent.
2018-07-27 00:26:21 +02:00
Ben Loftis
a699a637e4
Switch CDFrame grid to use MinSec ruler rather than Sample ruler.
2018-02-26 18:52:28 -06:00
Ben Loftis
e1b380b302
Rename SMPTE enum back to Timecode.
2018-02-26 18:38:18 -06:00
Ben Loftis
22819b8d2f
Fix a rather large naming thinko: GridTypeSamples should be CDFrames.
2018-02-26 17:02:24 -06:00
Ben Loftis
dc61256466
new_grid: Rewrite of Snap and Grid. (squashed commit)
...
Separate Snap from Grid. Lots of naming changes.
Multiple simultaneous snap options allowed. Grid is one of the possible Snap options.
Grid uses the same data as the rulers. Replace complicated tempo_lines with simple grid_lines.
The Grid is zoom-scale-sensitive along with the rulers. If you are zoomed out, grid becomes coarser.
2018-02-09 09:59:39 -06:00
Paul Davis
30b087ab3d
globally change all use of "frame" to refer to audio into "sample".
...
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
nick_m
1399ef391d
Remove redundant beat arg from TempoMap::add_meter
...
BBT time should be enough to determine the beat.
2017-07-22 02:15:20 +10:00
Thomas Brand
63ea7b6516
NO-OP whitespace (updated GH PR #357 )
2017-07-01 19:28:26 +02:00
nick_m
b4ddbce1ff
Fix incorrect positioning of tempo line subdivisions if first meter is non-zero
...
Commit cebefe6
assumed that frame 0 was the music origin.
Silly me.
2017-06-09 11:05:56 +10:00
nick_m
cebefe69d9
Tempo lines display subdivisions correctly over a tempo change
...
TempoMap::get_grid() supplies a list of beat positions, leaving the lines
to work out any subdivision positions.
This is fine, unless a tempo section falls in between beats.
Use a BeatsFramesConverter along with a quarter note position
(in the BBTPointsList) to make this easier.
2017-06-09 01:44:48 +10:00
Ben Loftis
830728aaee
compute_bbt_ruler_scale should not be necessary for every redraw of the timeline. Works OK here without it...
2017-03-10 08:50:29 -06:00
nick_m
589c13c0eb
allow setting end bpm in new tempo from tempo dialog.
2017-03-07 04:00:38 +11:00
nick_m
5c741b7a07
tempo editing updates
...
- a tempo marker may now be set to always continue (clamped)
this means that the end tempo of the previous section will
track the start tempo during tempo ops.
it mimics the behaviour in 5.8, with the gui indicating
the curves to be changed.
2017-03-05 05:21:56 +11:00
nick_m
4496babc8f
initial rework of tempo text display (numbers are curve items)
...
- move tempo numbers to a layer above the curve.
- the offset of the text box in Marker is horrible here.
what to do?
2017-02-27 20:16:10 +01:00
nick_m
5b38fbab4d
fix compilation
2017-02-27 20:16:10 +01:00
nick_m
f69f546717
poor man's display of end tempo for ramps.
2017-02-27 20:16:10 +01:00
nick_m
3a7bc1fd3f
Tempo Marks : set point colour by discontinuity, display non-quarter pulse if we are non-quarter.
...
- a jump in tempo by more than 1 ntpm results in a red
tempo mark pointer.
- ignore UIConfiguration::get_allow_non_quarter_pulse()
when displaying note type in the marker text (only display
note type if we are non-quarter).
2017-02-27 20:16:10 +01:00
nick_m
8e944953c6
highlight the tempo curve that is to be altered, modify text to suit.
2017-02-27 20:16:10 +01:00
nick_m
97c4c2a28c
complete changes to tempo type.
...
- this implements in the intention behind the previous commit.
a tempo mark is constant until its end has been changed by a
shift-drag on the next marker.
2017-02-27 20:16:10 +01:00
nick_m
ccb51a8ddb
rework tempo editing.
...
most changes are due to a new design where tempo discontinuities at the
beginning of a ramped section may be set.
this allows easier mapping of live performance, especially in
the common case of a ramped ritard before the beginning of a new section.
feature summary:
holding constraint modifier (shift) while dragging the BBT ruler area
drags the tempo lines by changing the start tempo (as before)
holding copy modifier (control) while dragging the BBT ruler area
drags the tempo lines by changing the end tempo (ahem. not quite there)
dragging a tempo mark while holding constraint (shift) will change the
previous end tempo to match the marker position *worth trying*.
holding constraint and copy modifier (control + shift) while dragging
the BBT ruler area attempts to'pinch' or twist the surrounding tempi
sp that later ones are not repositioned (currently suffereng from
rounding errors)
2017-02-27 20:16:10 +01:00
nick_m
7b9784fff4
mark session dirty when dragging tempo markers.
2017-01-27 03:05:32 +11:00
nick_m
2ca06335f7
amend 4cb009058
(if newly active tempo became last it had no curve)
2017-01-07 03:39:24 +11:00
nick_m
4cb0090583
fix some inactive tempi bugs
...
- no tempo curve for inactive tempi
- inactive and meter-locked tempi cannot be deleted.
2017-01-07 01:12:09 +11:00
nick_m
27b95300e2
add frame parameter for Meter ctor and TempoMap::replace_meter(). allow for various failures.
2016-12-19 04:02:01 +11:00
nick_m
9c5e1ffb0d
sort tempo curves initially as well.
2016-12-12 02:07:00 +11:00
nick_m
782b28a1a8
amend previous commit
2016-12-12 02:07:00 +11:00
nick_m
dbbe65777f
fix flickering in tempo curve when markers are reordered.
2016-12-11 23:46:49 +11:00
nick_m
33e95a1577
rename Tempo _beats_per_minute to _note_types_per_minute, provide pulse helpers.
...
- adds quarter_notes_per_minute(), note_divisions_per_minute (double)
pulses_per_minute() and frames_per_quarter_note()
- this should be a no-op except for the use of tempo by
the vst callback which definitely uses quarter notes per minute.
- the XML node for TempoSection named 'beats-per-minute'
has been renamed.
2016-11-11 03:37:08 +11:00
nick_m
ac23496b40
MidiRegion _start/_length beats are frame based only when lock style is Audiotime
2016-11-11 03:37:08 +11:00
nick_m
0e867b544b
Refactor tempo api, include quarter-note distance in frames method.
...
- moves frame rounding up to TempoMap, which is needed
in order to calculate pulse distance without frame rounding.
- the time unit for tempo is still minute, but this now also
applies to meter sections. (new audio locked meter sections no
longer require a frame position).
- there is no longer a discontinuity
in the pulse for audio-locked meter/tempi.
- temporarily add debugging output in Region::set_position()
to test for region beat not matching region frame.
2016-11-11 03:37:08 +11:00
nick_m
715b178130
Improve bbt ruler drawing performance for large time ranges.
...
- when the timeline displays many bars, zoom/autoscroll
speed is improved by calculating the bbt ruler scale first
then requesting a suitably scaled grid.
2016-10-19 03:56:43 +11:00
nick_m
949dd8245d
Add a colour for music-locked meters.
2016-08-20 04:33:51 +10:00
nick_m
5c2ccc4f3e
Allow negative return in TempoMap::beat_at_frame() and its exact_ variant.
...
- audio-locked midi regions can be start-trimmed properly
when close to 1|1|0
- a midi region placed before the first meter
will continue the tempo curve and first meter.
Only a couple of callers require change, as bbt_at_beat() already
deals with this.
2016-08-14 03:04:53 +10:00
Paul Davis
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
nick_m
99653ae2ca
Simplify Editor::mouse_add_new_meter_event() a bit.
2016-07-10 02:18:38 +10:00
nick_m
0bdbe56cf1
Stop passing references to things that may disappear when a metric section is replaced.
2016-07-10 02:18:37 +10:00
nick_m
180445c18c
Indicate meter frame even when adding a music-locked meter from the gui.
2016-07-10 02:18:37 +10:00
nick_m
8b0c5b8426
Register colour aliases for tempo curve.
2016-06-16 02:06:40 +10:00
nick_m
b3b246b724
Pick a colour for music-locked tempo markers.
2016-06-13 04:27:53 +10:00
nick_m
34c9ac9dd7
Tempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt()
2016-05-27 23:38:17 +10:00
nick_m
8f3bc6f809
Tempo ramps - rename tempo_at() -> tempo_at_frame().. 3 decimals for the audioclock tempo display.
2016-05-27 23:38:17 +10:00
nick_m
a9921c10eb
Gd Lk ramps - rework auto scaling. change colour.
2016-05-27 23:38:17 +10:00
nick_m
1927a707c5
Tempo ramps - fix huge marker height mark, remove unused var.
2016-05-27 23:38:17 +10:00
nick_m
6309807bc7
Tempo ramps - rename for consistency, remove some testing code, add meter based bbt->pulse conversions.
2016-05-27 23:38:17 +10:00
nick_m
8b2f73d5ac
Tempo ramps - rework tempo drags, improve comments.
2016-05-27 23:38:17 +10:00
nick_m
f182235410
Tempo ramps - consolidate TempoMap::predict_tempo()
2016-05-27 23:38:17 +10:00
nick_m
d1a075110a
Tempo ramps - more code cleanup, fix cross-marker jumping using tempo dialog bbt
2016-05-27 23:38:17 +10:00
nick_m
074db3b861
Tempo ramps - more code consolidation wrt add meter/tempo.
2016-05-27 23:38:16 +10:00
nick_m
82d876b48b
Tempo ramps - clean up add/replace tempo
2016-05-27 23:38:16 +10:00
nick_m
cfbc42cd3a
Tempo ramps - ensure displayed grid extends beyond the leftmost frame.
2016-05-27 23:38:16 +10:00
nick_m
2d3d7a5355
Tempo ramps - fix ambiguous api, fix flickering tempo curves.
2016-05-27 23:38:16 +10:00
nick_m
058b781258
Tempo ramps - tempo marker's mark indicates curve height ar point.
2016-05-27 23:38:16 +10:00
nick_m
5ccfeea5bc
Tempo ramps - more bbt dragging work.
...
- display prev tempo and tempo at mouse while dragging
- simplify ramp dilation somewhat.
2016-05-27 23:38:16 +10:00
nick_m
86b0268e8b
Tempo ramps - add visualtempo curve, dragging bbt or music rulers with constraint modifier dilates previous tempo.
2016-05-27 23:38:16 +10:00
nick_m
105999956e
Tempo ramps - remove unused var.
2016-05-27 23:38:15 +10:00
nick_m
06f294fa18
Tempo ramps - prevent adding tempos before the first tempo.
2016-05-27 23:38:15 +10:00
nick_m
932c7b07fd
Tempo ramps - adding a new tempo doesn't involve a dialog.
2016-05-27 23:38:15 +10:00
nick_m
663814bf22
Tempo ramps - tempo marks use mvc-style copy drag, don't crash if two successive ramped tempos are the same :|
2016-05-27 23:38:14 +10:00
nick_m
3d07cd79e1
Tempo ramps - api change, remove some code.
2016-05-27 23:38:13 +10:00
nick_m
69b6379b23
Tempo ramps - pressing constraint modifier keys during tempo drag changes tempo with vertical movement, incorporating beat constraint (if present).
...
- makes it easy to find suitable accelerandos for hit points in conjunction
with playhead position, beat-locked tempos and initial meter frame.
2016-05-27 23:38:12 +10:00
nick_m
33e98186e4
Tempo ramps - small bug fixes/cleanup.
2016-05-27 23:38:12 +10:00
nick_m
58d4889ad3
Tempo ramps - music-locked meters now use beats rather than pulses as their reference.
...
- fixes many problems with a non-zero audio-locked first meter.
2016-05-27 23:38:12 +10:00
nick_m
b47bb55226
Tempo ramps - improve music-locked meter drags, improve dump().
...
- dump now shows cross-calculation of tempo positions.
2016-05-27 23:38:11 +10:00
nick_m
f16089ba88
Tempo ramps - allow moving the first meter if audio locked.
...
- strangely broken wrt the grid, but kind-of works.
2016-05-27 23:38:11 +10:00
nick_m
278ad73259
Tempo ramps - check for impossible locations tempo dialog bbt entry. reorganise code.
2016-05-27 23:38:11 +10:00
nick_m
989089a4e9
Tempo ramps - add method to handle beat-based tempo reordering. clean code.
2016-05-27 23:38:11 +10:00
nick_m
77abc08d6f
Tempo ramps - fix crash-causing locking errors. clean up code a bit.
2016-05-27 23:38:10 +10:00
nick_m
474784c8ba
Tempo ramps - setting bbt of an audio-locked tempo marker in the tempo dialog works.
2016-05-27 23:38:10 +10:00
nick_m
b8b6d562a4
Tempo ramps - restore bbt settings in tempo dialog for audio-locked tempo markers
...
- see comments
2016-05-27 23:38:10 +10:00
nick_m
c7ff67004a
Tempo ramps - fix messed up meter section state, audio-locked tempos ignore the bbt setting in the tempo dialog for now.
2016-05-27 23:38:10 +10:00
nick_m
bc42dea451
Tempo ramps - first stab at metric marks locked to frames or beats.
...
- pretty much untested.
2016-05-27 23:38:10 +10:00
nick_m
87d49cd6ec
Tempo ramps - api rename, fix various meter and tempo dialog bugs.
2016-05-27 23:38:10 +10:00
nick_m
5c6e18e6a0
Tempo ramps - remove the concept of bars from tempo sections.
...
- this helps where tempo and meter have a somewhat circular
dependency.
MetricSection now has a musical position expressed in beats (a double).
MeterSection still has a bbt, but it really isn't needed as we have
enough information to discover the number of bars at a given beat without it.
TempoSection now has a hack to enable loading of legacy sessions, which will
ultimately be a lot cleaner than the current code.
Removing bars from tempo sections also allows us to place them
at arbitrary frames (implemented here).
2016-05-27 23:38:09 +10:00
nick_m
ba0cfe81a4
Tempo ramps - massively speed up dragging of tempo marks.
2016-05-27 23:38:09 +10:00
nick_m
340bd42c62
Tempo ramps - allow live updating of tempo markers.
...
- all a bit slow, but should be ok once we can lock
markers to frames.
2016-05-27 23:38:09 +10:00
nick_m
7fc3b0c34c
Initial stab at tempo ramps.
...
Replaces the list of points in TempoMap with TempoSection functions, which
compute tempo-at or tick-at time relative to tempo section start.
TempoMap consults them additively to determine things like bbt_time(),
frame_time() get_grid() etc.
This has a marked effect on scrolling speed along with the code simplification
in the places it has been attempted.
Several things are broken here.
Currently every ramp except the last one is an exponential ramp. this may
be simple to fix :).
Mouse-over midi grid doesn't match mouse click grid. should also be simple.
Many things seem to work, but their accuracy should be in question until
each area has been addressed.
2016-05-27 23:38:09 +10:00
Robin Gareus
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02:00
Tim Mayberry
6b019a4953
Move UIConfiguration Singleton into UIConfiguration header
...
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16 16:55:17 -04:00
Robin Gareus
e1f168de11
rename Marker class
...
Classes are in the global namespace.
OSX has a flat namespace and OSX32bit/Carbon has a Marker too.
2015-07-23 17:58:40 +02:00
nick_m
88e5fccbf1
Don't set the following dialogs to be transients for the editor:
...
Control point dialog
Edit note dialog
Both types of tempo dialog
Both types of meter dialog.
2015-03-14 03:52:03 +11:00
David Robillard
84412e1367
Draw beat sudivisions according to snap setting.
2015-01-07 19:05:41 -05:00
David Robillard
91c650bc29
High resolution tempo lines.
2015-01-07 08:37:20 -05:00
Paul Davis
64fa63212f
move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration
2014-12-22 13:39:46 -05:00
Paul Davis
56ca52651e
fix up requested color names everywhere.
...
Thank <deity> for emacs ... space-uncamelcase-word-at-point FTW
2014-12-14 16:15:38 -05:00
Paul Davis
48a7a11974
initial pass to replace all UIConfiguration::get_XXXXXX() calls with UIConfiguration::color(name).
...
IMPORTANT: names have not been downcased and spaced yet, so many colors are not found
2014-12-14 12:27:07 -05:00
Robin Gareus
6b3a8915f3
add abort() to non-reached code
...
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01:00
Paul Davis
ba4d1cd1c1
remove "canvasvar_" from all functions related to obtaining values from ARDOUR_UI::config()
2014-10-21 22:58:58 -04:00
Robin Gareus
a3c378cf62
move utility functions into a dedicated namespace
2014-06-25 21:47:54 +02:00
Paul Davis
c8ab1aaf7d
use Canvas::LineSet for tempolines rather than N different Canvas::Line items plus a cache
2014-06-09 15:39:57 -04:00
Paul Davis
20d7c58b83
make measure line positioning use Editor::sample_to_pixel() and avoid extra 0.5 pixel shift
2014-02-12 15:14:19 -05:00
Paul Davis
d23c2499bf
rationalize, consolidate and make work dbl-click editing for regions and markers, as part of the Drag model rather than discretely
2014-01-27 10:09:58 -05:00
Paul Davis
2108525187
fix up size and drawing of measure lines, even when vertically scrolled
2013-06-24 23:03:11 -04:00
Paul Davis
e2f0c5f91e
merge resolution with master
2013-05-02 20:21:54 -04:00
Paul Davis
3973ce81b3
remove all of Gtk::Window::set_position (WIN_POS_MOUSE) for anything deriving from ArdourDialog or ArdourWindow; move the set_position() call into those classes' constructors, so that they are called before the windows are realized, and thus it actually works
2013-05-02 18:13:35 -04:00
Paul Davis
6f664c1f67
many pervasive changes primarily related to waveform drawing, particular content-dragging, colors, and more
2013-04-24 15:42:14 -04:00
Paul Davis
f88cfdb478
remove Editor::redraw_measures to improve efficiency of tempo measure line redraws
2013-04-20 16:11:40 -04:00
Paul Davis
d1a05240ef
fix clamping of line and rect coordinates to avoid issues with cairo when drawing way outside a surface's dimensions; move various coordinate methods down to Canvas, because they don't require GTK information; make visible_area() a Canvas virtual method so that we don't have to cast to call it
2013-04-17 10:53:17 -04:00
Paul Davis
96eee9e7a1
change UIConfig to use accessor/setter methods like RCConfig so that ParameterChanged methods can actually be emitted; add variable (over a small range) background shading for all TimeAxisViewItems
2013-04-16 23:46:22 -04:00
Paul Davis
af4539f857
a few changes to fix region dragging, all related to coordinate system handling, which is now much simpler with the new canvas; more debugging output when asked for
2013-04-15 10:38:12 -04:00
Paul Davis
8877199ae0
leftmost_position => leftmost_sample, current_page_frames => current_page_samples
2013-04-12 11:21:12 -04:00
Paul Davis
19bd641915
commit immediately post linking
2013-04-04 18:45:27 -04:00
Paul Davis
aaea166135
initial commit of hand merging, plus getting "ancient" waf script to work correctly
2013-04-04 00:32:52 -04:00
Paul Davis
8cbd5a8bec
fix initial display of BBT ruler, i believe
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13560 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-28 00:18:10 +00:00
Paul Davis
b286b45ea8
adjust the way we use a pair of iterators into the tempo map so that the iterators are always local to the scope where they are used, which fixes at least one tempo-map related crash; also fix correct setting of join-object-range parameter, where the property wasn't actually used
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13559 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-27 22:48:59 +00:00
Paul Davis
818aa2e2f0
simplify and legalize call to TempoMap::get_grid() when getting grid points
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11195 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-08 16:53:11 +00:00
Paul Davis
355183f1ab
partially revert some of the recent work on tempo to reflect new understanding of the problem. behaviour is now believed to be totally correct but awaiting a bit more testing
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11171 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 16:39:40 +00:00
Paul Davis
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
Paul Davis
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
Paul Davis
a85e0b0a2e
a huge set of changes to tempo+meter handling. testing feedback requested. the_CLA, you know who i mean :)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11103 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-28 21:02:31 +00:00
Paul Davis
24a29f61d9
provide config parameter to allow non-quarter note pulses; off by default; no GUI to reset it at this point
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11046 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-21 02:33:38 +00:00
Paul Davis
6227b5d473
rework tempo dialog to (a) allow selection of pulse note type (b) avoid awful kludge to get note type from the combobox; show pulse note type in tempo markers
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11027 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-20 16:29:44 +00:00
Paul Davis
e0cf3b6354
more fun and games with meter and the tempo map: rename Meter::beats_per_bar() to Meter::divisions_per_bar() so that its clear(er) on what it is actually returning; use Meter::divisions_per_bar() in more (all?) places that need it; fix up dragging meter marks by removing the relevant meter section from the map while we drag; operator<< for some tempo-related objects
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10995 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-13 02:46:36 +00:00
Carl Hetherington
52eced2691
Remove duplicate call of compute_current_bbt_points which looks like a mis-merge. Update tempo-based rulers on tempo map edit ( #3979 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9373 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-19 10:19:14 +00:00
Paul Davis
3fab3ead7d
remove line parent member from Marker, part 3
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8361 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-29 13:48:25 +00:00
David Robillard
4b861e6039
Rename libmusictime libtimecode (consistent with already used namespace "Timecode").
...
Move BBT_Time to libtimecode.
git-svn-id: svn://localhost/ardour2/branches/3.0@8271 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-14 18:13:37 +00:00
Carl Hetherington
73192bc1a7
Remove all use of nframes_t.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03 22:26:29 +00:00
Paul Davis
b85b4d9e54
make ardour3 build and link on OS X (tiger, at least)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8018 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-13 05:14:48 +00:00
Carl Hetherington
fcfbd65268
Further fixes for #3529 . Show marker lines the same colour as their marker; adjust height of lines.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8009 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-11 13:36:38 +00:00
Paul Davis
ede4ecbb00
megaopus patch #2 for today: remove nframes64_t and sframes_t from source
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 18:20:37 +00:00
Paul Davis
98d994f29c
fix a variety of unused argument errors noted by gcc 4.3.2 on x86
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7733 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-02 17:01:36 +00:00
Paul Davis
71a4796dc3
forward port of 7539 from 2.x
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-22 16:28:26 +00:00
Carl Hetherington
c2da4ec8f9
Prevent multiple tempo / meter changes being inserted at the same point
...
on the timeline; adding a new change at the same time as an existing one
will replace the existing one. Should prevent #769 from happening.
Some cleanups and tweaks to tempo / meter dialogues. Desensitize Remove
menu option for those changes that can't be removed.
git-svn-id: svn://localhost/ardour2/branches/3.0@7045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-02 23:14:43 +00:00
Paul Davis
fa701b8c06
change PropertyChange from a bitfield into a real object, with all the many widespread changes that causes
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6701 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-19 18:09:08 +00:00
Paul Davis
ce7a5e1c9f
the Properties & 64bit region commit
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6695 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-18 13:59:49 +00:00
Paul Davis
c83389b8ec
cleanup up cleanup at session destruction; clarify the meaning of 3 signals (DropReferences & Destroyed in libardour ; CatchDeletion in the GTK UI); clarify ownership of objects (session no longer pays attention to DropReferences for objects that it is considered to own, such as routes, sources, etc); fix up MIDI parsing and a couple of other places by correcting syntax for return of values from a boost::signals2::signal (possible danger elsewhere to be checked)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 20:21:43 +00:00
Paul Davis
f6fdd8dcbf
switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
Paul Davis
8687895abb
remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
Paul Davis
64dc5427e4
make all use of bind/mem_fun be explicitly sigc::
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6354 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:29:48 +00:00
David Robillard
bb9cc45cd2
Strip trailing whitespace and fix other whitespace errors (e.g. space/tab mixing). Whitespace changes only.
...
Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red. I don't know the emacs equivalent...
git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14 16:10:01 +00:00
David Robillard
83c27fa888
Support recursive undo events.
...
Code can now call begin_reversible_command and commit_reversible_command around a region
of code which itself calls those functions (and so on), areas contained within enclosing
regions will be added as sub-commands of the current command (i.e. it's a stack).
Fixes mantix issue #0002558 .
git-svn-id: svn://localhost/ardour2/branches/3.0@5051 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-05 01:53:30 +00:00
David Robillard
e0aaed6d65
*** NEW CODING POLICY ***
...
All #include statements that include a header that is a part of a library
bundled with ardour MUST use quotes, not angle brackets.
Do this:
#include "ardour/types.h"
NOT this:
#include <ardour/types.h>
Rationale:
This is best practice in general, to ensure we include the local version
and not the system version. That quotes mean "local" (in some sense)
and angle brackets mean "system" (in some sense) is a ubiquitous
convention and IIRC right in the C spec somewhere.
More pragmatically, this is required by (my) waf (stuff) for dependencies
to work correctly. That is:
!!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!!
Failure to comply is punishable by death by torture. :)
P.S. It's not that dramatic in all cases, but this (in combination with some
GCC flags specific to the include type) is the best way I have found to be
absolutely 100% positive the local ones are being used (and we definitely
want to be absolutely 100% positive on that one).
git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 18:26:51 +00:00
Carl Hetherington
4e1f451520
Remove unnecessary 0 checks before delete; see http://www.parashift.com/c++-faq-lite/freestore-mgmt.html#faq-16.8 Apologies for the big commit.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4332 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-18 19:31:00 +00:00
Paul Davis
bc89fe0147
most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12 14:43:24 +00:00
Nick Mainsbridge
b1c48972f2
Handle changed session duration & resizing canvas better wrt end marker, remove unused last_canvas_frame, don't redraw the entire mixer every time its presented, consistent space between rightmost horizontal scroller position and end marker when zooming, possible fix for gaps in tempo lines.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@3982 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-19 07:55:42 +00:00
Nick Mainsbridge
a8baa20be8
Make tempo lines physical_screen_height high, add xml null check, Use clicked_regionview directly to calculate region movement. Using drag_info.data may result in the wrong regionbiew being used, don't use canvas coords for region_drag_finished_callback x calculation (eliminates speed adjustment), prevent incorrect updates on dropped regions by updating canvas before placing region copies.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@3965 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-14 13:35:17 +00:00
Nick Mainsbridge
d5391a9863
Fix non-disappearing tracks when hiding, don't set colours twice initializing TimeAxisViewItems, remove some merge errors.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@3878 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-07 18:05:35 +00:00