summaryrefslogtreecommitdiff
path: root/gtk2_ardour/automation_line.h
AgeCommit message (Collapse)Author
2016-10-16Fix various snap issues when dragging control points (AutomationRegionView).nick_m
2016-07-05highlight area below automation lanesRobin Gareus
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-03-26Clam points to valid values on drag end.David Robillard
Fixes bug #6214. It would be better to do this while dragging, but this would require rewriting much of the drag code to keep track of a cumulative y delta since the current position of points would be "sticky" and prevent any movement at all, so this will have to do for now.
2014-12-01Remove unused method.David Robillard
2014-11-29Somewhat working gain automation.David Robillard
This probably isn't correct in several ways, but it works more than it did, so I figure it's push worthy. Still not working: * Saving mute automation list * Dragged control points are not snapped to model restrictions (boolean, in this case, but general problem) * Line goes funny if you record mute automation (as opposed to drawing it which works)
2014-11-28Show discrete/toggled automation as stepped line.David Robillard
2014-11-02Display gain and midiNote plugin parameters/properties nicely.David Robillard
Show fancy values on generic GUI controls, automation lane controls, and automation lane verbose cursor. Fix text display of midiNote values. Make bigstep of midiNote parameters 12 (one octave). Add ARDOUR::value_as_string() as a stateless one-stop-shop for value printing.
2014-11-02Automation of LV2 plugin properties.David Robillard
Work towards ParameterDescriptor being used more universally to describe control characteristics.
2014-06-22more canvas refactoring.Paul Davis
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-21use newly factored canvas in gtk2_ardourPaul Davis
2014-06-07limit automation event density - fixes #5928Robin Gareus
Constrain control points to one per tick (1/1920 beats). Prior to this it was possible to set two values to the same time (interpolation and iteration failed).
2014-03-05alter name of AutomationLine::show() to much more sensibly named ↵Paul Davis
::update_visibility()
2014-01-11fix merge with masterPaul Davis
2014-01-10Support midnam controller value labels.David Robillard
2014-01-10Fix whitespace (no functional changes).David Robillard
2013-12-28convert automation line from Canvas::Curve to Canvas::PolyLine (note: this ↵Paul Davis
means there is no actual use of Canvas::Curve now)
2013-04-11add (bezier) curves to canvas, use for automation lines; fix issue with ↵Paul Davis
rectangles missing their upper line segment; more cairo canvas fixes
2013-04-04initial commit of hand merging, plus getting "ancient" waf script to work ↵Paul Davis
correctly
2012-12-19fix push-drags of automation data - previously we did not resync the model ↵Paul Davis
with the view for the points that were pushed (i.e. not selected, but moved anyway) git-svn-id: svn://localhost/ardour2/branches/3.0@13681 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-17substantive change to automation line dragging code to avoid O(N^4) ↵Paul Davis
behaviour. performance fixes are still required for realistically data-rich automation lines git-svn-id: svn://localhost/ardour2/branches/3.0@13515 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-13dramatic overhaul of automation. too long to explain here. this work is not ↵Paul Davis
finished - write/touch passes do not correctly overwrite existing data because the semantics of ControlList::insert_iterator need clarification. more to follow git-svn-id: svn://localhost/ardour2/branches/3.0@13038 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-10provide some numerical data during automation trim (range) drags, and ↵Paul Davis
correct computation of y-fraction for such drags git-svn-id: svn://localhost/ardour2/branches/3.0@13011 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-09remove extra unused argument to ::sync_model_with_view_point(s)Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13005 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-31Fix incorrect automation point drags when a drag is started with push held ↵Carl Hetherington
and finished without it. git-svn-id: svn://localhost/ardour2/branches/3.0@12509 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29substantive change to try to provide some rationality for region gain line ↵Paul Davis
visibility (and automation line visibility in general git-svn-id: svn://localhost/ardour2/branches/3.0@12478 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23Fix some confusion wrt did_push as a member and a local variable; pass push ↵Carl Hetherington
distances through the AutomationList's time converter so that they work properly; a few comment fixes. git-svn-id: svn://localhost/ardour2/branches/3.0@12060 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22Use a list of ControlPoints to hold the automation selection,Carl Hetherington
rather than a time range. This makes more sense now that we display every point on an automation line, rather than just a subset. Makes the code a fair bit simpler, and should fix some unexpected behaviours, especially when cutting automation points. git-svn-id: svn://localhost/ardour2/branches/3.0@12054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-21Remove some unused code.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@12052 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05Draw all automation points, rather than trying to use a heuristic to show somePaul Davis
at any given zoom level. This works because (1) automation data is obtained by sampling, and we control the sampling interval (2) automation data is filtered to remove co-linear points before becoming part of a ControlList. This commit removes some of the hairiest code in Ardour's GUI, which was responsible for figuring out which invisible control points were affected by an edit. The change is based on an experiment in mixbus done by Ben Loftis. git-svn-id: svn://localhost/ardour2/branches/3.0@11798 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-22Don't leave internal edit mode when clicking on an automation region view ↵Carl Hetherington
(#4747). git-svn-id: svn://localhost/ardour2/branches/3.0@11749 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-28Fix problems with selecting control points in AutomationRegionViews with ↵Carl Hetherington
non-zero region start. Firstly, determine_visible_control_points considers a subset of the AutomationLine's points if start is non-zero, and this must be taken into account when matching up AutomationLine points with AutomationList points. Secondly, _offset should not part of the calculation when converting model position to session frames. Fixes #4338. git-svn-id: svn://localhost/ardour2/branches/3.0@10151 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-13Fix crash when selecting automation points in MIDICarl Hetherington
regions with non-zero starts (#4177) and also fix problems with selection conversions between ControlPoints and PointSelection in similar regions. git-svn-id: svn://localhost/ardour2/branches/3.0@9866 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01Delete trailing whitespaceDavid Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@9656 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-12Fix display of MIDI automation on regions with non-zero _start. Should fix ↵Carl Hetherington
#3504. git-svn-id: svn://localhost/ardour2/branches/3.0@8257 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-12Small cleanups.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8255 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17megaopus patch #2 for today: remove nframes64_t and sframes_t from sourcePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@7792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-09Allow drags of automation in time ranges where the automation is on a MIDI ↵Carl Hetherington
track and may span different regions. Fixes #3366. git-svn-id: svn://localhost/ardour2/branches/3.0@7765 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-233.0 version of rev 5564 from 2.x - basic boolean plugin parameter automation ↵Paul Davis
(no graphical editing intended). this involved adding a new "toggled" property to Evoral::Parameter git-svn-id: svn://localhost/ardour2/branches/3.0@7670 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-20Limit region-based automation to the edges of regions. Fixes #3201.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7662 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-11Hopefully fix up automation control point selection (finally).Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7592 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-06Fix up selection of automation points.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7556 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-05Remove somewhat confusing view_to_model_coord_x method.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7546 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-05Support cut / copy / paste of MIDI automation.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7545 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-04Allow rubberband selection of MIDI automation points. FixesCarl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-31Make Clear option work for MIDI automation tracks. Fixes part of #3137.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7523 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-20Fix list corruption when modifying a view point in y only. Should fix #3329.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7450 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-14Fix binding of automation list undo records to MIDI sources. Should fix the ↵Carl Hetherington
remainder of #3203. git-svn-id: svn://localhost/ardour2/branches/3.0@7411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-14A few fixes to interpolation of MIDI controller data. Don't interpolateCarl Hetherington
when writing these data back to a source, otherwise surprising new interpolated points appear in MIDI automation. Similarly don't interpolate when reading the model during MIDI stretch. Fix handling of interpolation state; controllers that have been set by the user to use a different interpolation style are noted in the <Source> tag of the session file and this state is sprayed around to MidiModel and the GUI as necessary. git-svn-id: svn://localhost/ardour2/branches/3.0@7409 d708f5d6-7413-0410-9779-e7cbd77b26cf