Commit Graph
4071 Commits
Author SHA1 Message Date
itsmattkc f7ab0bb640 audio: rewrote audio cache to write to contiguous segments rather than one long file
Fixes issues with PCM file placement, optimizes some audio-based timeline
and cache operations, just generally a better approach.
2020-10-11 23:27:40 +11:00
itsmattkc 920a15d2ea ui: hack to disable embossing
Fixes #1217 while Qt 5.15's palette system is still broken
2020-10-10 20:53:10 +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 0cafbb2594 nodeview: minor optimizations and behavior improvements 2020-10-10 19:47:25 +11:00
itsmattkc df54b98fd6 nodeview: added light gradient to node item 2020-10-10 17:22:12 +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 2ccbfa7715 nodeview: null checks on select code
Prevents segfaults if the node view clears before the timeline.
2020-10-06 00:10:53 +11:00
itsmattkc 2d8c605cc9 timerangelist: fixed bug where ranges might sometimes overlap 2020-10-05 16:50:38 +11:00
itsmattkc 787ea1d548 Merge branch 'master' into ui-optimizations 2020-10-05 15:19:57 +11:00
itsmattkc ac4be0907f cmake: move application install outside of crashpad if statement 2020-10-05 01:07:30 +11:00
itsmattkc d552e71845 cleanup and included closing footage viewer if footage is in use 2020-10-05 01:04:45 +11:00
itsmattkc fa8e7ab5ee Merge branch 'delete_footage' of https://github.com/ThomasWilshaw/olive into ThomasWilshaw-delete_footage 2020-10-04 21:42:11 +11:00
itsmattkc ebd9e27127 Merge pull request #1244 from ThomasWilshaw/Fix_#1241
Fix issue#1241
2020-10-04 21:39:16 +11:00
itsmattkc ab6501d215 panels: restored block selection signal 2020-10-04 15:20:34 +11:00
itsmattkc de9c67a0f8 project: detect project version and show errors on incompatibility 2020-10-03 23:44:32 +10: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
Thomas Wilshaw e09afd7f68 Fix Issue#1241
When a Block node was deleted its linked blocks were not unlinked
which caused a crash when the user tried to select a linked block.
This fixes the issue by ensuring all links are removed when a Block
node is delete.

Undo/redo is also supported.
2020-09-29 18:27:30 +01:00
itsmattkc b9359ce50d nodeparamview/viewer: improved gizmo selection system 2020-09-30 00:32:40 +10:00
Thomas Wilshaw 7704e00443 Cleanup 2020-09-29 14:14:21 +01:00
Thomas Wilshaw 56e2b51041 Add filename to warning message. 2020-09-29 14:03:25 +01:00
Thomas Wilshaw a71df11fa6 Deal with composite blocks
If a block relies on mulitple inputs (i.e. a composite) then don't
delete these from the timeline. We catch these inputs afterwards.
2020-09-29 13:29:59 +01:00
Thomas Wilshaw 791857fba1 Cleanup. 2020-09-29 12:03:01 +01:00
Thomas Wilshaw 8e6b42a160 Simplify and clean up
Remove the Undo code for deleting a clip and replace it with simpler
parent/child undo relationship.

Move block gathering code to seperate function. It's quite brute
force and might lead to issues further down the line with more
complex composited node setups.
2020-09-29 11:31:03 +01:00
Thomas Wilshaw aef9078598 Fix delete redo code 2020-09-29 10:56:30 +01:00
itsmattkc fec9774935 curveview: finished rework 2020-09-29 16:41:12 +10:00
Thomas Wilshaw 92db735022 Add Delete functionality. Still buggy. 2020-09-29 00:06:38 +01:00
itsmattkc 610f4c54fe various: began heavy rework of curve view to link closely with param view 2020-09-29 00:42:16 +10:00
itsmattkc fb6e8a8a13 volume: disable keyframing on the sample input 2020-09-29 00:40:40 +10:00
Thomas Wilshaw 602f96b2b6 Cleanup comment 2020-09-28 14:33:58 +01:00
Thomas Wilshaw 5bb9cb0cca Make Offlining footage an UndoCommand
Created a new UndoCommand in ProjectViewModel that set the footage
input to a nullptr and resets it to the correct stream on undo.
2020-09-28 14:33:58 +01:00
Thomas Wilshaw c1e345611d Cleanup. 2020-09-28 14:33:56 +01:00
Thomas Wilshaw 0f1d4ec1b8 Make sure image sequences are caught. 2020-09-28 14:33:55 +01:00
Thomas Wilshaw 0e272b6bba Cleanup and add warning message. 2020-09-28 14:33:54 +01:00
Thomas Wilshaw 3ed0cb2ab9 Move search code to seperate function. 2020-09-28 14:33:54 +01:00
Thomas Wilshaw 7c7db5c933 Check footage in use before deleteing
Initial very hacky implementation that checks if the footgae is in
use before deleting it and makes sure all refernences to it are
properly cleaned up.

Also added IsMedia() function to Node to simplify things a bit.
2020-09-28 14:33:53 +01:00
itsmattkc dc56dc1d60 nodeparamview: implemented pinning 2020-09-28 21:50:55 +10:00
itsmattkc 4c30773fd4 nodeparamview: reworked based on QMainWindow for docking functionality 2020-09-28 19:55:18 +10:00
itsmattkc dac68cabc2 timeline: made ReplaceBlocksWithGaps more accessible for other parts of the program 2020-09-28 14:28:56 +10:00