itsmattkc
857e4b046d
timeline: when inserting gaps, only do one per track
2020-11-20 19:37:00 +11:00
itsmattkc
e4f011831d
timeline: don't try to link if no clips are selected
2020-11-20 19:36:43 +11:00
itsmattkc
6eade26bc8
timeline: force update after timeline actions
...
This is actually relatively efficient since Qt will ignore multiple update
requests leading up to an update and only update once.
Fixes #1374
2020-11-19 17:50:42 +11:00
itsmattkc
afbd3ada36
bypass track invalidate length limit on trim command
2020-11-18 19:34:12 +11:00
itsmattkc
b3c3fe0fc8
merged video and audio nodes into a single media node
...
They performed exactly the same function so I don't think we need the clutter.
Also bumped the project version, but old projects are automatically converted.
2020-11-18 13:48:14 +11:00
itsmattkc
04dd502a40
nodes: bypass invalidate length limit for certain track operations
...
Fixes #1290
Fixes #1228
2020-11-18 12:56:00 +11:00
itsmattkc
75d4cd899b
use hardcoded namespace
...
The macro defined namespaces confused the hell out of lupdate and more or less broke translations permanently. Looks like the only way we can do it is to have a hardcoded namespace, which goes against my instinct, but honestly how likely is it that we'll change the namespace anyway (I guess forks might want to do it, but that's their problem ;) )
2020-11-17 20:24:42 +11:00
itsmattkc
d241090a9f
finally updated the copyright year
2020-11-17 20:13:22 +11:00
itsmattkc
15a29288aa
added Q_OBJECT macro to classes that were missing it
2020-11-17 19:13:16 +11:00
itsmattkc
e2010dde83
made formal QtUtils class
2020-11-17 09:42:36 +11:00
itsmattkc
4aea9a3757
timeline: pad by full width rather than half width
2020-11-17 00:20:56 +11:00
itsmattkc
81450044e0
added preference for duplicating dependencies
...
Fixes #1320
2020-11-16 16:32:15 +11:00
itsmattkc
1b9bf6d92c
switched many QLists for QVectors
...
Minor optimization
2020-11-16 16:17:43 +11:00
itsmattkc
0d0766e4fb
improved render channel count system
2020-11-15 22:16:40 +11:00
itsmattkc
6ecdb02fd0
okay maybe not
2020-11-08 00:47:59 +11:00
itsmattkc
07dc7104c5
made timerangelist a encapsulation rather than a derivation
...
Locks off functionality that really shouldn't be used.
2020-10-29 02:18:41 +11:00
itsmattkc
4082f6d938
Merge branch 'master' of https://github.com/olive-editor/olive
2020-10-23 01:26:49 +11:00
itsmattkc
917738d1de
Merge branch 'master' into otio
2020-10-22 20:26:16 +11:00
Thomas Wilshaw
4ddc659335
MediaInput: Rename streams access methods.
...
Change MediaInput::footage() to MediaInput::stream() and
MediaInput::SetFootage() to MediaInput::SetStream() as they access
streams not footage.
Also update all instances of access methods to reflect this change.
2020-10-19 15:50:36 +01:00
itsmattkc
db8d321fa7
project: improved loading and footage importing
2020-10-19 14:41:01 +11:00
itsmattkc
221e0efb96
timeline: fix double free on items
...
Who the hell wrote this? It's all wrong for no reason and makes no sense
Fixes #1222
2020-10-10 20:24:41 +11:00
itsmattkc
0d102defab
tracks: use node label instead of separate name string
2020-10-10 20:17:25 +11:00
itsmattkc
6e8295666d
timeline: optimized rubberband selections
2020-10-10 17:22:04 +11:00
itsmattkc
ae8af531a9
timeline: removed cursor setting from block item (how did this get here?)
2020-10-10 17:21:47 +11:00
itsmattkc
2d93e82489
timeline: reworked rubberband
2020-10-06 00:20:54 +11:00
itsmattkc
787ea1d548
Merge branch 'master' into ui-optimizations
2020-10-05 15:19:57 +11:00
itsmattkc
dfe7b80bf3
timeline: hide snap points if the tool changes
2020-10-03 23:10:10 +10:00
itsmattkc
90199b7b57
timeline: updated selection changes for trimming and rippling
2020-10-03 22:59:07 +10:00
itsmattkc
6e417d0ad6
timeline: made ghosts a foreground drawn object
...
Minor optimization, minor UI improvement, somewhat more manageable code.
2020-10-03 22:40:03 +10:00
itsmattkc
a8d714b6e2
timeline: moved tools to separate source files
2020-10-03 22:33:29 +10:00
itsmattkc
8b4a073f35
timeline: implemented system of moving selections and making them undoable
2020-10-03 22:33:10 +10:00
itsmattkc
dd3d11c7e0
timeline: moved tools to separate files
...
Code cleanup, TimelineWidget header was getting a little too bloated.
2020-10-02 22:02:18 +10:00
itsmattkc
0508acc613
timeline: began crude edit tool functionality
2020-10-02 17:10:15 +10:00
itsmattkc
4204910796
nodes: link edges to IDs rather than objects
...
Allows code to know whether the connected parameters has been removed or
not.
2020-10-02 16:04:50 +10:00
itsmattkc
2fb7066155
nodes: allow stalling graph signals until an operation is over
2020-10-02 13:25:49 +10:00
Thomas Wilshaw
9d27d557cd
Replace custom unlink with BlockUnlinkAllCommand
...
Re-use existing unlink command and move all the unlinking code to
NodeRemoveCommand to cover all bases (deletion of a block in the
timeline or in the node editor).
2020-09-30 18:14:11 +01:00
itsmattkc
dac68cabc2
timeline: made ReplaceBlocksWithGaps more accessible for other parts of the program
2020-09-28 14:28:56 +10:00
itsmattkc
a313fb525c
use QGraphicsView::FullViewportUpdate on TimelineViewBase
...
Since this appears to be necessary for all derivatives anyway, we'll add
this directly to the base class.
2020-09-28 14:21:17 +10:00
itsmattkc
6db591e89f
footage: merge video and image streams and improve image sequence import process
...
Image streams were initially separated from video streams, but they're now
joined with a parameter defining if they're a still image, image sequence,
or regular video. The image sequence import process has also improved so
that if images from the same sequence are imported too, they'll either be
ignored or the user won't be asked again for those if they should be an
image sequence (fixes #1193 ). Also shifts decoder "probe" process to return
an item, useful if the decoder returns a non-footage item.
2020-09-26 19:45:07 +10:00
itsmattkc
9c488d9a37
timeline: use full viewport update
...
Fixes #1190
2020-09-18 12:59:16 +10:00
itsmattkc
f0928814fc
track: store height in "units" rather than pixels
...
Fixes DPI scalability issue if a project ever moved from a display with
one DPI to another.
2020-08-22 00:23:46 +10:00
itsmattkc
d99a8e9005
timeline: refactored "replace with gap" command fixed bug
...
Fixes an unfortunate bug that restored blocks in the wrong order and leads
to a segfault if you continue undoing beyond that point.
2020-08-20 13:40:58 +10:00
itsmattkc
75c3a37c17
removed speed/duration dialog
...
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.
2020-08-19 17:42:52 +10:00
itsmattkc
d5dce29b22
cache: merged cachetask and footagecache into one precache task
...
Since the actual auto-cache now happens elsewhere, this cleans up a lot of
dead code.
2020-08-05 23:45:18 +10:00
itsmattkc
07a3216a1f
timeline: if an item is selected while deleted, emit the deselection signal
2020-08-05 01:42:52 +10:00
itsmattkc
2afa5a42c7
ui: optimized widget signals for selecting clips/nodes
...
Decent performance optimization when working with the UI.
2020-08-01 02:12:20 +10:00
itsmattkc
86b66004b0
ui: removed last of the widget proxies
2020-07-23 23:11:00 +10:00
itsmattkc
023ded1fb5
timeline: overhauled pointer tool again
...
Allows dynamic switching between pointer/roll/slide since occasionally this
behavior is interchangeable. Fixes a lot of transition behavior (but not
all of it).
2020-07-23 18:37:57 +10:00
itsmattkc
c76b25a17a
timeline: tools don't need to call move in the release function
...
I had thought that the cursor may still have moved between the last
mouseMoveEvent and the mouseReleaseEvent, but that turns out to be false
making it completely unnecessary to call move functions in the release
function.
2020-07-23 01:29:04 +10:00
itsmattkc
ce353ccbed
timeline: various work to improve timeline behavior, particularly when dealing with transitions
2020-07-22 18:09:57 +10:00