Commit Graph
583 Commits
Author SHA1 Message Date
itsmattkc 23b1226ef4 fixed broken copy/paste 2021-03-25 22:48:03 +11:00
itsmattkc cd6544ba64 fixed erroneous hold keyframe logic
Fixes #1326
2021-03-22 23:28:43 +11:00
itsmattkc 9b6fe7e308 track: null check when looking up a block's in/out time adjustment
Fixes #1517
2021-03-22 12:15:13 +11:00
itsmattkc 78e0777c27 fixed title node when using light theme
Fixes #1496
2021-03-22 12:05:36 +11:00
itsmattkc fb410e7c96 use vectors for sample buffers rather than raw ptr arrays 2021-03-17 11:54:14 +11:00
itsmattkc 056a1202d6 added new auto-positioning to place block command 2021-03-14 22:09:59 +11:00
itsmattkc 82d6daa3da fixed bug in node dependency positioning 2021-03-14 21:52:05 +11:00
itsmattkc 2a9513e56a added new node auto-positioning for items 2021-03-14 21:09:00 +11:00
itsmattkc 500fb58d49 arranged items so they are inputs of folder rather than outputs 2021-03-12 12:22:19 +11:00
itsmattkc a57bf35e93 don't copy items when splitting or duplicating blocks 2021-03-01 13:27:13 +11:00
itsmattkc cfbf563b2e ensure cache modified time is accurate 2021-02-22 00:23:34 +11:00
itsmattkc 7fee0e6b04 suppress some benign warnings 2021-02-21 10:23:06 +11:00
itsmattkc 17474b2f71 fix some compilation issues on various platforms 2021-02-21 09:35:14 +11:00
itsmattkc 108a1399c2 fixed input array sync issue 2021-02-20 23:09:49 +11:00
itsmattkc b21271534f added UI for editing video parameters in nodes 2021-02-20 13:27:56 +11:00
itsmattkc 4827782331 moved sequence params into node graph too
Reduces code by reusing more of the existing node infrastructure
to synchronize sequence parameters the render backend.
2021-02-18 13:20:23 +11:00
itsmattkc d7c5ac4b44 implement entire project in nodes
Project items are now represented directly in nodes opening up more versatility and possibilities. This is the first iteration of this and will be buggy. Need to test thoroughly.
2021-02-15 21:31:57 +11:00
itsmattkc b8de563a6d restored invalidation code when value is changed 2021-02-11 14:35:05 +11:00
itsmattkc 81c1922911 use strings to connect nodes
This makes the node system somewhat more high-level with the intent of making
working with them far more flexible and stable. By making the architecture more
abstracted, it becomes far less rigid which should allow us to do even more
with it and make it much less crash prone.
2021-02-09 15:48:37 +11:00
itsmattkc 8d8727c7c9 removed unused variable 2021-01-30 12:31:23 +11:00
itsmattkc d53885fe3d improved nodeparamview Y setting
Still not perfect, mostly due to Qt's terrible QMainWindowLayout, but ah well
2021-01-30 10:27:52 +11:00
itsmattkc 060714cec6 fixed uninitialized variable 2021-01-30 09:41:26 +11:00
itsmattkc b748b1142b wrap keyframing settings in IsKeyframable just because 2021-01-29 17:36:58 +11:00
itsmattkc ad4b83a098 new undo system
Also enables undoing when working with node input arrays
2021-01-29 16:10:34 +11:00
itsmattkc 4e5db91c17 keyframeviewbase: cleaned up code and show tooltip values in input's desired format 2021-01-25 11:05:09 +11:00
itsmattkc 2da0aed942 remove unnecessary sequence casts 2021-01-25 09:33:50 +11:00
itsmattkc 7795d42347 moved block links to node links
Seems like it might be useful to have this as part of the node architecture as a whole
2021-01-25 09:17:25 +11:00
itsmattkc 8ccf7562cf disable keyframing on some parameters 2021-01-24 15:28:01 +11:00
itsmattkc 49a9e5b870 finally added limits to bezier so curves can't loop over themselves 2021-01-24 14:04:18 +11:00
itsmattkc b68397d687 implement keyframe track separation in curve view 2021-01-24 12:09:00 +11:00
itsmattkc 4dd2b64c6d keyframecontrol: update state if keyframe time changes 2021-01-24 12:08:23 +11:00
itsmattkc d9019f9cb1 fixed node removals 2021-01-22 19:23:20 +11:00
itsmattkc 744b768970 fixed loading bug caused by lack of while loop 2021-01-22 16:04:22 +11:00
itsmattkc 2af776b110 fixed various caching update issues 2021-01-22 14:33:30 +11:00
itsmattkc dfdb375cbf polygon: use string literal 2021-01-22 12:20:41 +11:00
itsmattkc 8a5df32281 fixed arrays in nodeparamview 2021-01-22 12:20:25 +11:00
itsmattkc 3e1fb01758 initialize array variable and set where used 2021-01-19 09:09:12 +11:00
itsmattkc fa1fbd3a34 nodeview: updated with new node color UI system 2021-01-19 09:08:46 +11:00
itsmattkc cb1accaf0c minor code enhancements 2021-01-18 16:33:49 +11:00
itsmattkc 84df19dc35 updated tracklist algorithm to new and improved one 2021-01-18 16:32:52 +11:00
itsmattkc 8497c6589c further merge hash optimizations 2021-01-18 12:04:03 +11:00
itsmattkc 57aa53cc79 ensure blocks are transformed when hashing
Fixes cache glitch
2021-01-18 10:45:07 +11:00
itsmattkc 104cbbe44b set array size before reconnecting
Fixes issue where tracks would become confused about the true array size
2021-01-18 10:44:30 +11:00
itsmattkc b4dd976e90 revised UI color system when showing nodes
Olive now has a set of colors that categories can be "assigned" to. The timeline also shares the same colors as the NodeView. Colors can be configured per node (aka per clip).
2021-01-15 18:44:34 +11:00
itsmattkc 91740dd823 reworked all timeline commands
I'll be honest, this stuff probably caused a lot of crashes. Objects were constantly created and destroyed without the foresight that other commands might be using them. This should fix a lot of that.
2021-01-15 14:36:21 +11:00
itsmattkc 96c0921193 use std::map instead of QMap for the node connections
std::map gives us a reverse iterator which we need. QMap doesn't seem to.
2021-01-15 14:34:36 +11:00
itsmattkc b83677e319 moved input signals to graph to prevent signal desyncs 2021-01-14 10:32:42 +11:00
itsmattkc f7883bd02c began some rewrites to timeline drawing 2021-01-14 10:30:20 +11: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