summaryrefslogtreecommitdiff
path: root/gtk2_ardour/automation_time_axis.h
AgeCommit message (Collapse)Author
2016-08-17Use a real dropdown for AutoState in automation lanesJulien "_FrnchFrgg_" RIVAUD
2016-07-10remove reference "const int32_t&" -> const int32_t"Robin Gareus
this simplifies lua-bindings and also let's the compiler worry about constant primitive types.
2016-07-10Paste uses exact beats. rework _start_beats calculation in copy-with-offset ↵nick_m
ctor.
2016-06-05change AxisView color API to be virtual and implement per-type variantsPaul Davis
2016-06-03move from PresentationInfo::global_order() to PresentationInfo::order, and ↵Paul Davis
fix up part of reordering behaviour Dragging tracks/busses in the editor *below* VCAs still does not work
2016-06-02make all TimeAxisView derived types return PresentationInfo for sortingPaul Davis
2015-03-19add API to select TAV height mode.Robin Gareus
preparation for further Summary and Number of visible track count fixes. * “Only Self”: don’t resize child-views (old default) * “Total Height”: distribute height equally among all visible child [automation] lanes * “Height per Lane”: given height should be applied to all sub-views.
2015-01-09fix select-all-regions-within (it used to select everything overlapped)Ben Loftis
2014-12-06Support paste between automation lanes.David Robillard
Also push the increasingly unwieldly paste parameters into a context object. As with othe things, currently it is only possible to do "cross-type paste" by explicitly selecting the target track. We will need to get automation region view selection working to do better here, but at least for now it's possible to get the data over.
2014-11-17Fix visibility of MIDI controller automation tracks across saves.David Robillard
Fix some inaccurate/misleading comments that led to said bug. Gracefully handle the "impossible" case where we can't figure out a state ID for an automation track, instead of crashing.
2014-11-16Support cut/copy/paste of several regions and lines at once.David Robillard
The idea here is to do the reasonable thing, and copy objects of some type (e.g. MIDI region, gain line) to tracks with a matching type. The user can override this with a track selection, which will be used straight-up. Lost: ability to copy/paste lines across types, e.g. gain to pan. This is often questionable, but sometimes useful, so we will need to implement some sort of "greedy mode" to make it possible. Implementation simple, but not sure what to do. Perhaps this should only be possible if one automation track is explicitly (i.e. via track selection) involved, and the types are at least compatible-ish?
2014-11-14Implement "multi-paste" for notes, regions, and automation.David Robillard
The idea here is that pasting several times to the same location doesn't make sense. Instead, the paste is appended past the last paste, snapped to the grid. This make it simple to replicate a given section a number of times, simply by copying once and pasting several times. This behaviour only appears when successive pastes are done to the same location (whatever the edit point is). When the paste point changes, the "multi-paste" state is reset. Boots 'n cats 'n boots 'n cats.
2014-08-27use ArdourButtons on the automation time axisBen Loftis
2014-02-19manually applied equivalent of 1d82f4ca07a38342e0815cd6b695b96d72386f39 in ↵Paul Davis
master (git could not apply successfully)
2014-01-09reorder members to allow different initialization orderPaul Davis
We want to be able to use _name when initializing _view.
2013-04-12change frames_per_pixel to samples_per_pixelPaul Davis
2013-04-04initial commit of hand merging, plus getting "ancient" waf script to work ↵Paul Davis
correctly
2012-05-27Patch from tophatdave to improve display of timestretch inCarl Hetherington
stacked layers mode (#4379). git-svn-id: svn://localhost/ardour2/branches/3.0@12460 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-27Re-add erroneously-removed methods related to cut/copy ofCarl Hetherington
automation time ranges. git-svn-id: svn://localhost/ardour2/branches/3.0@12114 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
2011-11-13Snap new automation points on audio lanes (part of #4297).Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@10570 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-07Don't create new regions on clicks on MIDI plugin automationCarl Hetherington
tracks (#4298). git-svn-id: svn://localhost/ardour2/branches/3.0@10062 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-13Fix non visibility of previously-visible MIDI automationCarl Hetherington
tracks on session reload. git-svn-id: svn://localhost/ardour2/branches/3.0@9863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-07introduce GUIObjectState; massive, pervasive changes in visibility and ↵Paul Davis
height management for track displays in the editor git-svn-id: svn://localhost/ardour2/branches/3.0@9796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-11major, substantive reworking of how we store GUI information (visibility, ↵Paul Davis
height) for automation data. old design stored (insufficient) identifying information plus actual data in a GUI-only XML node; new scheme adds GUI data via extra_xml node to each AutomationControl object. reworked public/private methods for showing/hiding TimeAxisView objects; changed labelling of automation tracks to just show the name of the controlled parameter - more info can be viewed in the tooltip for the track headers. NOTE: Session file format ALTERED. No data loss but track visibility may be different than previous ardour3 versions git-svn-id: svn://localhost/ardour2/branches/3.0@9703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-02audio clock switchover part2: remove most egregious include-time dependency ↵Paul Davis
on audio_clock.h, and alter API for a few utilities along the way git-svn-id: svn://localhost/ardour2/branches/3.0@9673 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-23Fix a few missing drops of Route references.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@9571 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-17Clean up some confusion with AutomationControls in AutomationTimeAxisViews ↵Carl Hetherington
that have regions. git-svn-id: svn://localhost/ardour2/branches/3.0@8883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-17Minor tidying-up.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8882 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03Remove all use of nframes_t.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 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-09-07Fix restore of fader automation from 2.X sessions.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7754 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-18First go at saving window visibility and position state across saves.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7644 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-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-05Clean up handling of track vs region automation a bit.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7544 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
2010-05-25Allow region-based automation axes to report whether theyCarl Hetherington
have automation data or not. Should fix #3177. git-svn-id: svn://localhost/ardour2/branches/3.0@7158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-09lots of debug code still in place, but get a much improved structure for ↵Paul Davis
MIDI automation menus actually working. tweaks to follow git-svn-id: svn://localhost/ardour2/branches/3.0@6470 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-01First cut of some Pro-tools inspired editing features; linked play/play rangeCarl Hetherington
and linked object/range modes. git-svn-id: svn://localhost/ardour2/branches/3.0@6431 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-21fully implement and deploy explicit x-thread signal connection syntax ↵Paul Davis
(testing comes next) git-svn-id: svn://localhost/ardour2/branches/3.0@6379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17switch to using boost::signals2 instead of sigc++, at least for libardour. ↵Paul Davis
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-10-15rework Stateful::set_state() patch to avoid default version argumentPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15Part 1 of loading 2.X sessions; some things work, some things don't, hacks ↵Carl Hetherington
a-plenty. LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE, MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION. So don't do that unless you make a backup of the session file first. git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14Strip trailing whitespace and fix other whitespace errors (e.g. space/tab ↵David Robillard
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-07-21Fix some unused parameter warnings.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@5403 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-09Back out big shared_ptr change. Moving to a branch. Apologies all.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@5343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-09Use shared_ptr for the TimeAxisView hierarchy.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@5339 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-12Remove most using declarations from header files.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@5069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25*** NEW CODING POLICY ***David Robillard
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