13
0
Commit Graph

16 Commits

Author SHA1 Message Date
eec294a97e the endless quest to plug memory leaks -- episode 378 2016-07-25 17:16:32 +02: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
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
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
84cb8913b0 change placement of ruler divider so that the lower line is at the specified height, rather than the upper 2015-04-29 07:26:29 -04:00
2673ef4af4 change ruler rendering to change tick heights and move text down 2015-04-29 07:23:36 -04:00
065c6d813e add missing API 2015-04-29 07:22:48 -04:00
4cf402bdcf add API to Ruler to optionally draw a divider (2 single pixel horizontal lines) at some position within the vertical extent of the ruler 2015-04-29 07:22:36 -04:00
94adde7ebb add Canvas::Ruler::set_metric() to allow ruler metrics to be changed dynamically 2014-09-07 10:19:42 -04:00
1a6136e1e3 change Metric element of a Canvas::Ruler item into a pointer internally 2014-09-07 10:19:31 -04:00
a8bd6ecc4f refactor Canvas so that all Items have children; add Container abstract base class; rename Group as "Layout" and retain only drawing semantics 2014-06-21 11:43:42 -04:00
590882f3c8 change Canvas heirarchy and constructors
Items no longer need a parent group (they require a Canvas pointer instead), so all constructors have been rationalized
and have two variants, one with a parent and one with a canvas.

All Items now inherit from Fill and Outline, to banish diagonal inheritance and virtual base classes and all that.

There were zero changes to the Ardour GUI arising from these changes.
2014-06-12 14:53:44 -04:00
87a6f633a1 derive ArdourCanvas::Ruler from Rectangle 2014-06-12 10:35:16 -04:00
e1825361b5 remove hard-coded colors 2014-06-12 01:07:58 -04:00
143f9509ea many fixes and improvements for a now-working ArdourCanvas::Ruler item 2014-06-11 23:54:28 -04:00
5ee4f41925 add initial (untested) implementation of canvas ruler item 2014-06-11 23:54:28 -04:00