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
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
d1a3e22eaa
fixed linux compilation issues
2021-01-31 10:39:14 +11:00
itsmattkc
29eccf8e84
add opening sequence to the import undo command
2021-01-29 18:11:01 +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
9f99182089
use catch up scrolling when dragging items
2021-01-25 10:22:14 +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
2c7e974f78
scroll only in increments when dragging the playhead
2021-01-24 18:38:57 +11:00
itsmattkc
eb132d93de
timebasedviews: only drag playhead when there's no item underneath the cursor
2021-01-24 09:36:05 +11:00
itsmattkc
e02a307498
timeline: don't copy vectors
...
This is no longer necessary
2021-01-22 19:25:22 +11:00
itsmattkc
d9019f9cb1
fixed node removals
2021-01-22 19:23:20 +11:00
itsmattkc
fecd0e3775
trackview: delete from index 0
...
Fixes #1253
2021-01-22 17:00:39 +11:00
itsmattkc
ce8704f7d3
fixed block placement issue
2021-01-22 09:07:13 +11:00
itsmattkc
fa1fbd3a34
nodeview: updated with new node color UI system
2021-01-19 09:08:46 +11:00
itsmattkc
835b82205f
ripple: when choosing gaps on other tracks, use after or at instead of before
...
Fixes some edge cases
2021-01-18 16:40:05 +11:00
itsmattkc
9bc0629346
rewrote timeline ripple tool command
...
Cleaner code and fixes a bunch of issues and whatnot
2021-01-18 16:33:27 +11:00
itsmattkc
2a51853fd4
fix bug with underlining on timeline
2021-01-18 16:06:40 +11:00
itsmattkc
20ed087aad
timeline: fixed bug with out handle on some blocks
2021-01-18 16:05:22 +11:00
itsmattkc
e7b0c18a99
implemented track adding as an undo command
2021-01-18 12:03:48 +11:00
itsmattkc
d8efab1b77
improved new timeline drawing
2021-01-18 11:23:59 +11:00
itsmattkc
5ab585de8e
razor tool: don't try to split a clip at it's end point
2021-01-18 11:17:12 +11:00
itsmattkc
07782a96ad
some timeline fixes
2021-01-18 10:45:37 +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
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
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
06b29b3a35
Merge branch 'master' of https://github.com/olive-editor/olive
2020-12-30 14:46:15 +11:00
itsmattkc
78903391a3
timeline: don't snap add tool if snapping is disabled
2020-12-30 10:38:53 +11:00
itsmattkc
374fa3f75c
moved some files around for better organization
2020-12-16 19:05:22 +11:00
itsmattkc
6cb6407bd8
don't use shared ptrs on streams
2020-12-16 13:46:19 +11:00
itsmattkc
e12013e2fb
don't use shared ptrs for project items
2020-12-16 10:28:43 +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
73aa3760f3
timeline: initialize variable introduced in last commit
2020-11-28 19:36:57 +11:00
itsmattkc
350df42ad1
timeline: improved rubberband behavior
...
Improved rubberband responsiveness and show rubberband if dragging from a gap
(or other such immovable block).
2020-11-28 17:31:44 +11:00
itsmattkc
f8ceefff6c
don't use shared ptr on projects
...
Really unnecessary
2020-11-27 14:24:02 +11:00
itsmattkc
378216acb9
timeline: draw playheads over selections
2020-11-26 19:52:54 +11:00
itsmattkc
afa31e1df8
timeline: don't flip scroll axes on apple trackpads
2020-11-25 17:16:35 +11:00
itsmattkc
a043a686c6
timeline: started record tool
2020-11-25 11:53:56 +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
c7f5af9534
moved autoscroll code to TimeBasedWidget rather than TimelineViewBase
...
Better place for it. Fixes #1406
2020-11-25 10:00:57 +11:00
itsmattkc
1400c313ca
timeline: correctly use ptr to qvector rather than qlist
...
Fixes copy/paste crash
2020-11-24 11:04:33 +11:00
itsmattkc
29f2d3024e
timeline: clear selections when disconnecting viewer
...
Fixes #1400
2020-11-23 09:15:46 +11:00
itsmattkc
54cd244801
nodes: added distort nodes
...
Adds nodes for cropping and transforming
2020-11-22 11:34:37 +11:00
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