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
Robin Gareus
37aaa2d11b
NO-OP: whitespace, alignment
2019-04-08 22:39:22 +02:00
Paul Davis
7db12f6b12
convert codebase to use Temporal for various time types
2017-09-24 12:03:54 -04: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
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
b086d33937
TempoLines deletes its bfc on destruction
2017-06-09 01:56:28 +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
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
115bc84c27
Tempo lines drawing performance tweak.
2016-10-19 05:56:26 +11:00
nick_m
f8d5a6b3b6
Tempo line tweaks.
...
- ensure lines don't get too dense in the all bars case.
- never draw tick divisions in the all bar case.
2016-10-19 05:10:15 +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
820e9a43f5
Tempo ramps - fix various sub-beat tempo line bugs.
...
- actual meter is taken into account now.
2016-05-27 23:38:16 +10:00
nick_m
71a90399fe
Tempo ramps - fix BBTPoint wtf.
...
- tempo tick lines should draw properly now.
2016-05-27 23:38:15 +10:00
nick_m
daa07ce6e0
Tempo ramps - tempos now musically snap to their future.
2016-05-27 23:38:12 +10:00
nick_m
58f01bb3f7
Tempo rambo - more bbt scale fiddling.
2016-05-27 23:38:12 +10:00
nick_m
15f8f371c3
Tempo rampo - tempo tick lines no longer assume constant tempo.
2016-05-27 23:38:12 +10:00
nick_m
7d06651a5c
Tempo ramps - fix compilation
2016-05-27 23:38:12 +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
Paul Davis
4dc63966f0
globally remove all trailing whitespace from ardour code base.
...
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04: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
David Robillard
0a5d5f91c9
Raise threshold for showing ticks for a bit.
...
This fixes two zoom levels (the closest that shows bars, and the next closest)
that had the same tick resolution despite enough space.
2015-01-10 19:38:37 -05:00
David Robillard
ccde95757d
More contrast between different division lines.
2015-01-08 21:10:54 -05:00
David Robillard
12bf085a34
Stop showing bar lines sooner.
...
Not sure if this is a DPI dependent thing, but when zooming out some of the
steps had way too dense bar lines for me.
2015-01-08 21:10:13 -05:00
David Robillard
2d3e6956e6
Slightly more distinct beat/subdivision lines.
2015-01-08 14:53:41 -05: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
bd6682f2cd
next modifier
2014-12-15 10:22:22 -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
Paul Davis
ba4d1cd1c1
remove "canvasvar_" from all functions related to obtaining values from ARDOUR_UI::config()
2014-10-21 22:58:58 -04:00
Paul Davis
6a5d805b38
more canvas refactoring.
...
Remove Canvas::Layout, use Canvas::Container for the same purpose, move child-rendering into Item::render_children() so that it
could theoretically be used by any derived type.
2014-06-22 11:41:05 -04:00
Paul Davis
0796ccfb65
use newly factored canvas in gtk2_ardour
2014-06-21 11:44:22 -04:00
nick_m
6b2c581c22
Summary changes :
...
* Use correct image format for background image
* Construct thr ImageSurface as per cairo docs
* Place start/end markers in background image
Tempo bars :
* adjust beats display threshold to (hopefully) coincide with BBT ruler better.
2014-06-19 01:52:21 +10: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
97109672c7
initial redesign of canvas scrolling to facilitate independent x- and y-axis scrolling of specific groups within the canvas.
...
This commit should cause no change in behaviour, but contains all the code and changes necessary
for the next step
2014-06-03 16:09:06 -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
2108525187
fix up size and drawing of measure lines, even when vertically scrolled
2013-06-24 23:03:11 -04:00
Paul Davis
a1f858d3b2
an awful lot of tweaks to drawing details
2013-06-24 16:28:53 -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
0a2a876248
remove probably premature-or-no-longer-necessary optimization of measure line drawing
2013-04-21 15:35:20 -04:00
Paul Davis
b02a7445bf
Revert "add Group::clear(), do not clear _canvas member of Item when unparented (only the parent is changed)"
...
This reverts commit a4df65a56f83823aba27432685977f420458a213.
2013-04-21 15:35:20 -04:00
Paul Davis
fca81c9a6a
add Group::clear(), do not clear _canvas member of Item when unparented (only the parent is changed)
2013-04-21 15:35:20 -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
eed0201c07
fix bug with tempo lines not extending far enough in the y-axis - since this is the cairo canvas now, just extend them to COORD_MAX .. yay!
2013-04-16 22:22:45 -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
b05968fb4e
change frames_per_pixel to samples_per_pixel
2013-04-12 11:31:50 -04:00
Paul Davis
30968b8542
merge with master, including manual merge conflict resolution
2013-04-06 16:12:15 -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