Commit Graph
94 Commits
Author SHA1 Message Date
itsmattkc e0bb31b199 remove shifts, operations, and make caches node-agnostic 2022-05-16 19:53:38 -07:00
itsmattkc 790a483e1b speeddurationdialog: implemented rippling trailing clips 2022-05-10 16:08:51 -07:00
itsmattkc 4b366a9b73 update copyright year to 2022 2022-05-10 10:38:56 -07:00
itsmattkc 0f99d8a662 timeruler: add ability to resize markers and workarea 2022-05-09 17:53:21 -07:00
itsmattkc 91b761693b code: use config macro
Macro is much easier to use and more readable
2022-05-04 09:50:34 -07:00
itsmattkc d6b90f4e94 timeline: set waveform after initial input copy 2022-04-09 16:37:38 -07:00
itsmattkc cce379ad22 handle cache properly in ripple delete 2022-01-28 13:49:49 -08:00
itsmattkc 124d66a281 remove track and exclusive dependencies from sequence 2022-01-24 09:53:16 -08:00
itsmattkc 7fa8c6f33a timeline: rewrite ripple delete
Fixes #1841
2022-01-23 23:54:38 -08:00
itsmattkc eafa2ca3be implemented basic track delete function 2022-01-23 14:51:43 -08:00
itsmattkc 61f65a3def corrected some undo command issues 2022-01-02 13:35:18 -08:00
itsmattkc 239a019690 many improvements and reimplementations 2021-11-29 21:22:49 -08:00
itsmattkc 93be94bc2c more work 2021-11-16 23:58:34 -08:00
itsmattkc 6bd7bc4cca timeline: copy waveform when copying 2021-08-25 12:27:26 -07:00
itsmattkc cc4ead6935 Merge branch 'master' into transition-offsets 2021-08-12 14:41:30 -07:00
itsmattkc e511fde899 timeline: invalidate when undoing a place command
Fixes #1715
2021-08-09 12:52:25 -07:00
itsmattkc c3d30f1b77 Merge branch 'master' into transition-offsets 2021-08-02 14:20:56 -07:00
itsmattkc 3b9421f90e multiundocommand: keep undo/redo under protected
Minor code improvement
2021-08-01 13:37:32 -07:00
itsmattkc 6995ffe015 reworked timeline elements 2021-08-01 11:05:18 -07:00
itsmattkc 7fe8dbc77a timeline: fixed double remove on transitions
Fixes #1655
2021-07-22 01:09:06 -07:00
itsmattkc 52c5617159 undo: wrapped redo/undo functions to ensure prepare is called 2021-07-17 00:14:24 -07:00
itsmattkc 7a51e521a2 timeline: don't set null context 2021-07-16 20:29:39 -07:00
itsmattkc 2229ce9a69 timeline: updated ripple for new invalidation scheme 2021-07-16 01:48:11 -07:00
itsmattkc c41047ab02 timeline: reorganized undo commands
Split commands between several files rather than having them all in two monolithic ones.
2021-07-16 01:38:20 -07:00
itsmattkc fbdda3d6d4 various code cleanups 2021-01-13 12:05:05 +11:00
itsmattkc 8f729203fc some timeline refactoring, preparing for rewrites 2021-01-09 11:41:33 +11:00
itsmattkc 181235f6ce began new infrastructure
Yep, this is another one of my "famous" sweeping rewrites. Expect things to break.

Goals for this are:
- Greatly simplify node connections (particularly with arrays) so the code requires less maintenance/is more stable
- Redesign node structure to address issues where UI would stall for lengthy periods of time
- Less reliance on shared ptrs/greater reliance on QObject system for inheritance/memory management
- General code cleanup and improvements
2021-01-05 11:20:38 +11:00
itsmattkc 9ee523b145 timeline: split gaps only if there's an insert
Fixes regression from 97afae9687
2020-11-29 17:06:56 +11:00
itsmattkc 97afae9687 timeline: when ripple removing an area, don't split gaps 2020-11-29 12:17:23 +11:00
itsmattkc b5cc13c10e timeline: snap pointer and import operations to timebase
If frame rates are mixed, ensures that video doesn't end up falling or ending on half frames which potentially make the entire sequence awkward
2020-11-25 11:46:41 +11:00
itsmattkc 857e4b046d timeline: when inserting gaps, only do one per track 2020-11-20 19:37:00 +11:00
itsmattkc afbd3ada36 bypass track invalidate length limit on trim command 2020-11-18 19:34:12 +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 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 787ea1d548 Merge branch 'master' into ui-optimizations 2020-10-05 15:19:57 +11:00
itsmattkc 8b4a073f35 timeline: implemented system of moving selections and making them undoable 2020-10-03 22:33:10 +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 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 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 ce353ccbed timeline: various work to improve timeline behavior, particularly when dealing with transitions 2020-07-22 18:09:57 +10:00
itsmattkc de74adeb5e nodes: improved changed signal processing
Improves stability and cache reliability.

Earlier iterations were prone to skipping necessary signals (usually
leading to some sort of assert fail), particularly when track
optimizations were used. Those optimizations have been moved to the
viewer node so there's a higher degree of control over which signals
get optimized and in which ways.
2020-07-16 00:32:00 +10:00
itsmattkc a239fa0e2f timeline: fixed some ripple tool behavior bugs 2020-07-07 18:06:49 +10:00
itsmattkc 494609410b timeline: when trimming, removing adjacent if its length is reduced to zero 2020-06-09 15:38:47 +10:00
itsmattkc be784591fc timeline: optimized pointer tool ctrl+drop 2020-06-06 17:50:23 +10:00