Paul Davis
57167dafbe
use configurable thinning factor, not a hard-coded constant
2023-07-10 13:42:06 -06:00
Paul Davis
6453049c0a
automation drawing: add point at grab start & use new ControlList API for speed
2023-07-10 11:20:47 -06:00
Paul Davis
c584bfd374
automation drawing: thinning does not work well with snapped-drawn lines
...
Also, adding points to a ControlList can fail and that's OK
2023-07-09 22:10:18 -06:00
Paul Davis
caa278ae55
fix reverse drags and a compiler warning
...
Not quite sure what to do if we fail to add a point, yet
2023-07-09 21:01:22 -06:00
Paul Davis
0a0a882f5a
snapping, straight lines, and merge drawn points to list for auto draw
2023-07-09 20:42:09 -06:00
Paul Davis
0c8fd48d6f
velocity lane: appropriately hide automation controls until we have line automation
2023-07-08 17:18:14 -06:00
Paul Davis
36769dd94c
part 2 of showing region selection in MIDI CC (automation) tracks
2023-06-28 13:44:59 -06:00
Paul Davis
e54e24a7a0
no need for two raise-to-top; set_velocity_mode() will do it
2023-06-27 14:07:47 -06:00
Paul Davis
ce1ec1107c
fix layering of automation views
...
This code is awful, and ought to be restricted only to velocity lanes by
a better design
2023-06-27 12:53:08 -06:00
Paul Davis
7dc532a646
lollis: only allow velocity editing on currently selected region
2023-06-26 14:18:18 -06:00
Paul Davis
4305ef34f8
switching between lollis and line now allows lollipop events
2023-06-26 14:18:17 -06:00
Paul Davis
5c03ffd6f5
fix assignment/comparison typo
2023-06-26 14:18:17 -06:00
Paul Davis
2de0e62695
for velocity automation lanes, make sure ghosts group is on top
...
otherwise, it's the streamview on top, and that prevents lollipops receiving
events.
this may have to change once the line becomes an option.
2023-06-26 14:18:17 -06:00
Paul Davis
ea6717f041
empty, useless velocity lane for MIDI tracks
2023-06-26 14:18:17 -06:00
Paul Davis
b35518e212
switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
...
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
Paul Davis
389577b1e9
automation line: use return value from (new API) model-to-view method
2022-10-26 16:56:22 -06:00
Paul Davis
a928e35efb
significant overhaul of automation region/lines to update during tempo map drags etc
2022-10-25 11:10:36 -06:00
Robin Gareus
2245042b85
Fix crash when adding events to disabled MIDI event-lane
...
In case of MIDI CC/Bend/Pressure etc events, the underlying
data is provided by a MidiTrack (is-a Automatable) and not
an automation-control.
When directly calling AutomationControl::set_automation_state,
the AC disables automation-watch using shared_from_this().
With the Evoral::Control used for MidiTrack event-lists this
results in a tr1::bad_weak_ptr.
2022-07-22 03:38:34 +02:00
Robin Gareus
0e804be818
Fix typo in 1dafa5017e (first automation point on line)
2022-04-27 12:56:32 +02:00
Robin Gareus
1dafa5017e
Always place first automation point using the current value
...
This is in preparation to always show a line, which show
the current value in case there are no automation points yet.
It also unconditionally snapshots the current value without
changing automation modes to touch/write first.
2022-04-25 18:32:23 +02:00
Mads Kiilerich
7f649efd42
gtkmm: use set_can_focus() instead of deprecated Gtk::Widget::set_flags(CAN_FOCUS)
2022-04-08 21:11:06 +02:00
Mads Kiilerich
2aa72891f3
gtkmm: use ALIGN_START instead of deprecated Gtk::AlignmentEnum::ALIGN_LEFT
2022-04-08 21:11:06 +02:00
Paul Davis
a3c5db5d51
ensure that non-drag track height changes cause a call to Editor::redisplay_track_views()
2022-04-05 20:52:10 -06:00
Paul Davis
0162d3f9d6
GUI changes to *try* to adapt to a world without explicit beats<->samples converter objects (i.e. use AutomationLine::get_origin() instead
2021-08-13 12:51:34 -06:00
Paul Davis
8bd52c80dc
fix paste API issue for automation list/tracks
2021-08-13 12:51:32 -06:00
Paul Davis
2a08e4bdaa
continued work on timeline types conversion. in theory, just editor_ops.cc remains
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
04e8dbb342
another day of slow timeline type conversion
2021-08-13 12:51:29 -06:00
Paul Davis
0a469527f1
updated Temporal::Beats ... GUI edition
2021-08-13 12:51:28 -06:00
Robin Gareus
5c579ed52d
Remove unused #include<> (1/2)
...
PBD::stacktrace() is not used nor needed by default.
It should be used sparingly.
2021-05-05 17:43:28 +02:00
Robin Gareus
e81794d878
Add preference to keep spilled automation-lanes visible
2021-03-02 19:00:23 +01:00
Robin Gareus
f31e8ede4c
Unconditionally switch Manual->Play when drawing automation
2021-02-23 22:00:27 +01:00
Robin Gareus
0becbe7f4f
Auto-touch when adding automation events to a spilled control
2021-02-11 00:29:44 +01:00
Paul Davis
7a536524db
no need to compute x-axis coordinate when adding an automation event
2021-01-19 13:04:34 -07:00
Robin Gareus
21df7279d2
Prefer parameter_is_midi() API, fixes PolyKeyPressure
...
Previously MidiNotePressureAutomation was not assumed to be
MIDI automation.
2020-04-15 15:36:45 +02:00
Robin Gareus
a3af5e31f1
Update labels in MIDI Automation Lanes when MIDNAM changes
2020-04-15 02:38:18 +02:00
Paul Davis
8a1f1a3005
remove border around ATAV controls table (looks better with new theme)
2020-04-03 14:25:32 -06:00
Paul Davis
626d97b13a
a better solution for automation axis name labels
2020-04-03 14:25:13 -06:00
Paul Davis
be2322ef2b
set size request for automation lane name label, to prevent it from changing tracker header width
2020-04-03 14:11:14 -06:00
Robin Gareus
a92dddda25
Fix automation dropdown menu-item active state
...
Extra XML/GUI has not been in use since ages.
Automation Lane visibility is saved as GUIObjectState.
This properly marks DropDown Menu items as active when a
Plugin Automation Lane is displayed
2019-12-12 03:02:48 +01:00
Robin Gareus
629289dc4a
Fix crash when selected automation-lane is removed
...
When a plugin is deleted, automation-lanes of the given plugin
are removed, but previously a pointed to the deleted lane remained
in the selection.
This caused crashes later when the track selection is used. e.g.
during sensitize_the_right_region_actions()
Note that ~TimeAxisView() also emits CatchDeletion (this);
however "this" fails to be dynamic_cast<AutomationTimeAxisView*>
because that d'tor has already been completed.
2019-08-24 18:24:21 +02: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
Paul Davis
ea5fa64c0b
manually fix up various cases where Gtk:Frame foo_frame had been changed to foo_sample
2017-09-18 14:59:11 -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
Robin Gareus
9e256b044d
GUI support for Latch
2017-09-18 11:40:52 -04:00
Robin Gareus
1545c426d9
Revert "Temporary session-format compatibility (revert before release)"
...
This reverts commit 8cd8cb1650 .
2017-09-18 11:40:52 -04:00
Paul Davis
a1143a0ed6
expose automation state controls in AutomationTimeAxisView when used for MIDI CC
2017-08-12 14:40:21 -04:00
Paul Davis
b98969be94
do not set automation to off/manual for MIDI CC data when clearing such data
2017-08-12 14:40:21 -04:00
Robin Gareus
df76e4417d
Fix ATAV GUI property cleanup
...
AutomationTimeAxisView::state_id() requires a stripable
(stripable == automatable + parameter OR stripable + control)
2017-08-01 16:56:20 +02:00