This is the first step in what will eventually be keyframable time
remapping. The speed/duration dialog was a holdover from 0.1 and we can
probably do better here.
The following sliders now have Alt Click functionality:
- Nodes (What it's initialy set too or 0 if not)
- Export Dialog Dimensions~ (Defaults to Sequence width/height)
- Export Compression Settings~
- Advanced (0)
- Speed/Duration
- Speed (100%)
- Duration (clip length)
- Stream Properties Image sequence
- Start Index (1)
- End Index (sequence length)
Sliders with no default value set ignore an Alt
Click.
Added SliderBase::SetDefaultValue() which sets the
default value of a slider.
Added ValueReset() to SliderBase signals which is
called if a slider is Alt Clicked on. Only updates
if default_value_ is not Null.
This required various changes to various parts of the infrastructure (mostly
using paths to finding the "root project" of any given object throughout).
Now theoretically infinite projects can be opened and accounted for at any
given time.
This functions more or less identically to using a media out value, but the
desired speed is preserved through block length changes, even if the block's
length is reduced to zero (i.e. no rounding errors).
With differently set speeds, these functions would mess with the timing in ways
that would be confusing to the user. Now they act in a much more intuitive way
and also prevent negative media times.
An earlier commit implementing media in and out parameters was primarily for
this addition. A simple control dialog for the clip's speed presentation
reimplemented from the old codebase.