itsmattkc
52076b19fc
timeline: added more signalling when tracklists change
...
Fixes #1591
2021-04-27 10:08:04 +10:00
itsmattkc
e2a590da26
timeline: remove transitions when removing clips
...
Fixes #1224
2021-04-26 20:29:21 +10:00
itsmattkc
269fa6d905
remove block enum
...
Replaced with dynamic casts.
2021-04-22 11:50:24 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +10:00
itsmattkc
22b2d08baf
rational: implement NaN mode
...
Also clarify code where 0 is used as a rational.
2021-04-17 15:04:03 +10:00
Thomas Wilshaw
1b4fd56803
timelinewidget: Catch any nullptr, not just kHand
2021-04-16 20:27:44 +01:00
Thomas Wilshaw
837ab00ec5
TimelineWidget: catch hand tool double click
...
The hand tool does not inherit from TimelineTool (it is a special
program
wide tool) so tools_[olive::Tool::kHand] is a nullptr. Therefore when
ViewMouseDoubleClicked is called we check if the hand tool is
selected and
simply return if it is.
Fixes #1577
2021-04-15 20:17:29 +01:00
itsmattkc
e54854b78a
fixed issue where timecodes in UI weren't updated correctly
2021-04-13 13:22:46 +10:00
itsmattkc
bd052ff4c8
timeline: null checks around any timestamp transform to audio timebase
2021-04-11 12:26:58 +10:00
itsmattkc
c687460f89
added null checks to timeline snapping and seekablewidget seeking
2021-04-10 09:24:16 +10:00
itsmattkc
52ccaa15d3
timeline: clear ghosts on delete
...
Fixes #1556
2021-04-08 19:08:29 +10:00
itsmattkc
2791e8d738
timeline: null check when updating timebase
...
Fixes crash on close
2021-04-08 10:45:01 +10:00
itsmattkc
2dc27de37c
ensure frame rate and sample rate changes ripple through widgets
2021-04-08 10:44:32 +10:00
itsmattkc
ea29ffef96
minor refactoring and signalling panel subtitle by node change
...
Fixes issue where Footage Viewer subtitle wouldn't update when
dropping footage in.
2021-04-08 10:42:13 +10:00
itsmattkc
d495815550
audio: use sample rate rather than timebase now they aren't interchangeable
2021-04-08 07:59:56 +10:00
itsmattkc
bb32048c65
use frame rate and timebase less interchangeably
2021-04-07 13:08:25 +10:00
itsmattkc
898ea25e89
finished merge of viewer and footage
2021-04-06 13:08:56 +10:00
itsmattkc
4066fcba90
began merging footage and viewer
2021-04-05 16:41:37 +10:00
itsmattkc
da4a93f1a5
timeline: minor enhancement, probably fixes nothing
2021-04-05 15:54:13 +10:00
itsmattkc
9be014c0b6
refactored so sequence is again a derivative of viewer
2021-04-05 14:41:59 +10:00
itsmattkc
d03da1817f
timeline: null check on block track
...
If a block has no track, it's probably not on the timeline and can be safely
ignored.
2021-03-24 10:25:52 +11:00
itsmattkc
5d59ecb699
timeline: allow disabling waveforms
2021-03-10 14:23:59 +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
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
fa1fbd3a34
nodeview: updated with new node color UI system
2021-01-19 09:08:46 +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
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
374fa3f75c
moved some files around for better organization
2020-12-16 19:05:22 +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
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
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
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
1b9bf6d92c
switched many QLists for QVectors
...
Minor optimization
2020-11-16 16:17:43 +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