itsmattkc
a422f6e369
timelineviewbase: decrease ctrl+scroll speed
2020-04-23 01:00:26 +10:00
itsmattkc
9d9825d8e1
trackviewitem: receive signal when mute is changed from another source
2020-04-19 16:26:48 +10:00
itsmattkc
63c194896d
core: implemented yes/no to all when closing multiple modified projects
2020-04-19 03:29:39 +10:00
itsmattkc
f73c41d3fa
various: implemented multiple project support
...
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.
2020-04-18 01:50:47 +10:00
itsmattkc
832cc986b7
timeline/block: reimplemented enabling/disabling blocks
2020-04-17 02:16:04 +10:00
itsmattkc
78c3c10e5f
timeline: reimplemented deleting/ripple deleting the in/out region
2020-04-17 01:41:20 +10:00
itsmattkc
cc421d4108
keyframeview: show correct length and jump to the corresponding time in NodeParamView
2020-04-15 03:35:48 +10:00
itsmattkc
6046b1e892
timeline: fixed bug that prevented clips from being dragged to lower tracks
2020-04-14 23:36:59 +10:00
itsmattkc
1aa87cbda6
various: encapsulate all code in the olive namespace to avoid name collisions
...
Large-scale code cleanup. Also adds a license to the top of all files that were
missing it.
2020-04-06 15:29:53 +10:00
itsmattkc
edc38ad8a2
timeline: implemented adding objects in the timeline (e.g. solid, title)
2020-04-06 00:05:09 +10:00
itsmattkc
0acad08887
timeline: unlink clip if it is completely overwritten
2020-04-05 23:19:55 +10:00
itsmattkc
6ea52e4123
audio renderer/timeline: pass through channel count of waveform visualizations
2020-04-05 19:59:14 +10:00
itsmattkc
bfbb2e3fef
msvc: fixed compile/syntax error that only seems to occur in msvc
2020-04-02 13:09:21 +11:00
itsmattkc
76f260cb3a
timeline: added ability to move clips by sample in addition to by frame
2020-04-01 13:55:19 +11:00
itsmattkc
53955e9632
timeline: fixed array index out of bounds bug
2020-03-31 02:23:00 +11:00
itsmattkc
2bda306866
timeline/various: implemented block copy/paste
...
Implemented the ability to copy/paste blocks/clips in the timeline. This did
require some large scale changes and reworking of the copy/paste system
introduced a few commits ago, but should be largely functional now.
2020-03-31 02:19:05 +11:00
itsmattkc
67d8ad571d
timeline: remove blocks from timeline if a place command has overwritten them
2020-03-30 18:06:02 +11:00
itsmattkc
6624f14517
timeline: temporarily disable optimization that doesn't re-cache after split
...
Since waveforms are generated during the cache process, if clips don't cache,
a waveform isn't generated for them. Therefore for now, this optimization will
be disabled but should be re-enabled later when waveforms are improved to handle
this situation.
2020-03-30 15:14:06 +11:00
itsmattkc
5aa4f91c46
timelineviewblockitem: fixed some indentation
...
Minor code tidiness.
2020-03-30 15:13:17 +11:00
itsmattkc
9f3b9fdc70
footageviewer: allows users to drag video or audio only
...
Updates drag mime data to include a variable determining which streams are
enabled and which ones aren't (a binary qint64 where the 0s are disabled
and the 1s are enabled) rather than relying solely on the stream->enabled
values which can't be modified as part of the drag process.
2020-03-23 18:55:59 +11:00
itsmattkc
3b8743a0ce
timeline: show timecode on block items and started copy function
2020-03-23 15:28:58 +11:00
itsmattkc
51f02ea01b
viewer: allow switching open sequences
2020-03-21 22:18:17 +11:00
itsmattkc
fed17e35fa
audiowaveformview: optimizes waveform to only redraw when necessary
...
Draws to a pixmap only when the waveform changes so it doesn't have to be
regenerated on every draw. Also renames WaveformView to AudioWaveformView
2020-03-18 14:44:05 +11:00
itsmattkc
abb4c440fb
core: added signalling for timecode display changes
...
Allows targeted application-wide UI updates for when the user changes the
timecode display so that the response is immediate.
2020-03-18 14:09:31 +11:00
itsmattkc
02e7c68104
timeline: reimplemented linking/unlinking functionality
2020-03-15 13:41:46 +11:00
itsmattkc
b57b091ca4
timeline: auto-unlink blocks when they're deleted
2020-03-15 13:15:36 +11:00
itsmattkc
a56484d3e6
timelinescaledobject: implemented minimum scale
...
Used by Viewer to keep TimeRuler and WaveformView within restrictions.
2020-03-14 22:34:23 +11:00
itsmattkc
7f2dcc8200
waveformview: made UI seekable
2020-03-14 01:57:40 +11:00
itsmattkc
73d693f2d5
waveformview: implemented basic waveformview display
2020-03-14 01:22:03 +11:00
itsmattkc
f0e6f9a5f9
various: created derived class for widget derivations of
...
TimelineScaledObject
Minor code cleanup, faster than deriving both QWidget and
TimelineScaledObject each time.
2020-03-14 00:45:50 +11:00
itsmattkc
c338e6d99d
resizablescrollbar: refined timeline scrollbar resizing to be more accurate
2020-03-11 14:11:12 +11:00
itsmattkc
8cf9327936
timelineviewblockitem: fixed issue that caused waveforms to always appear at
...
the start of the timeline
2020-03-09 16:57:51 +11:00
itsmattkc
dc37389d02
timeline: implemented in/out points
2020-03-08 01:06:45 +11:00
itsmattkc
52fc4f064b
timeline: rewrote ripple deleting into an undoable command that takes place
...
after the gaps are made and cleaned
Results in more reliable ripple delete behavior.
Also fixes bug that would cause gaps that were cleaned and then restored in an
undo to crash when selected.
2020-03-07 20:42:07 +11:00
itsmattkc
38a30b584a
timeline: implemented some base ripple delete functionality
2020-03-07 18:07:55 +11:00
itsmattkc
d5fdc555e1
timelineviewblockitem: prevent waveforms from exceeding the clip rectangle
2020-03-07 02:47:15 +11:00
itsmattkc
f2d6d3b32c
timeline/renderer: automatically update timeline view when a visual waveform
...
has updated
2020-03-07 02:44:15 +11:00
itsmattkc
c75a0e8498
timeline/renderer: implemented basic waveform display support
2020-03-06 16:18:07 +11:00
itsmattkc
2f7819d0ae
timeline: use similar reverse strategy for inserting/overwriting from
...
the most recently focused project panel
2020-03-03 20:13:58 +11:00
itsmattkc
9b73892c41
ui: implemented keyboard controls for inserting/overwriting footage into the
...
timeline
Allows users to use the keyboard to place footage into the timeline rather than
forcing them to drag.
2020-03-03 20:03:50 +11:00
itsmattkc
a9577d72ee
pointertool: reused insert code from importtool
2020-03-03 16:34:09 +11:00
itsmattkc
e3759bb704
importtool: re-implemented functionality to hold ctrl to insert dragged clips
2020-03-03 15:51:53 +11:00
itsmattkc
baf3fbde05
global: made every user action set a project "modified" state that will prevent
...
the main window from closing instantly
2020-03-03 14:33:45 +11:00
itsmattkc
796a30eda9
timelinewidget: when rubberbanding, only emit selection changed when
...
the rubberband is finished
2020-03-02 17:03:36 +11:00
itsmattkc
d7cde3b22e
timelinewidget: clear block items before destruction
...
Prevents block items signalling anything after the TimelineWidget has already
been destroyed.
2020-02-26 14:36:51 +11:00
itsmattkc
bf7fc9a0c4
panels: selecting a clip in the timeline automatically selects the corresponding
...
nodes in the nodeview
2020-02-26 00:39:30 +11:00
itsmattkc
ab19e445bd
importtool: implemented auto-parameter detection from image streams too
2020-02-25 14:59:54 +11:00
itsmattkc
0e7b051228
timelinewidget: show cache status in timeline too
2020-02-22 14:45:50 +11:00
itsmattkc
9cb04b0020
timelineview: simplified TrackRippleRemoveAreaCommand and fixed bug that
...
incorrectly calculated the splice copy's media in
2020-02-22 01:14:38 +11:00
itsmattkc
c7a3906c97
timelineview: fixed bug that wouldn't invalidate all necessary regions of the
...
cache when using rippleremovearea
2020-02-22 00:49:57 +11:00