itsmattkc
4268ccd75e
importtool: fixed broken snapping
...
Snap points were made before the ghost's in/outs were set resulting in
incorrect points.
2020-07-22 10:32:04 +10:00
itsmattkc
6309b8fbb7
math: fixed power function
...
Corrected shader code and fixed bug in widget bridge that reported an
incorrect index.
2020-07-17 12:33:28 +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
fdfadd8858
add tool: use new class directly rather than text ID
...
Minor code improvement/optimization.
2020-07-14 22:32:01 +10:00
itsmattkc
ae62750d9d
various: fix broken transition creation
...
It's now possible to create transitions! But they're still broken in
a multitude of other ways so plenty more work to do hahahahahahahahaha
2020-07-14 22:31:11 +10:00
itsmattkc
11afdf32fe
decoder/timeline: improve decoding of still images
2020-07-12 18:25:51 +10:00
itsmattkc
4d6003bb55
slider: update label color
...
Dark blue on dark gray was a little unreadable.
2020-07-12 13:54:31 +10:00
itsmattkc
39d71eb7cd
nodeview: drop nodes on release rather than press
...
Minor UI improvement that also addresses issue where the cache would
ignore the invalidation.
2020-07-10 19:28:42 +10:00
itsmattkc
c710fd162e
richtextdialog: show html tags rather than wysiwyg
...
While good in theory, a WYSIWYG rich text editor for large video frames
was unwieldy (and in many cases unhelpful). Instead the titler will
show plain text/HTML tags so the user can still write rich text but
without the unwieldy UI.
For a true WYSIWYG experience, we would probably need to write a true
graphical editor (a la Premiere's titler), but that's a later goal.
This titler will be sufficient in a good majority of cases and there
are plenty of dedicated graphics packages if more complex titling is
required for the timebeing.
2020-07-10 18:42:13 +10:00
itsmattkc
efd90d5c8f
renderer: use shared backend when caching
...
I think there was an earlier commit with a similar name but turns out
I'd only done foundational work in that commit and never actually
properly set it up. Of course once I did, there were several issues that
needed fixing to make it work correctly, but now it works as expected.
Heavily optimizes larger projects by allowing cache jobs to only copy
what has changed.
2020-07-10 18:39:47 +10:00
itsmattkc
343c39d66d
nodeparamview: preserve cursor position when text is edited
2020-07-10 02:41:35 +10:00
itsmattkc
0b4a9f4650
timeline: fixed bug that caused I-beam to render incorrectly
2020-07-10 02:40:23 +10:00
itsmattkc
8e1be4a3ff
nodeparamviewwidgetbridge: implemented editing font parameters
2020-07-10 02:40:09 +10:00
itsmattkc
8e75432304
project/timeline: save timeline tracklist state in project file
2020-07-08 19:19:32 +10:00
itsmattkc
af69f157a3
timeline: improved beam tool and its derivatives
2020-07-07 18:43:18 +10:00
itsmattkc
a239fa0e2f
timeline: fixed some ripple tool behavior bugs
2020-07-07 18:06:49 +10:00
Thomas Wilshaw
098b40c98e
Use cfloat instead of limits
2020-07-02 15:36:13 +01:00
Thomas Wilshaw
b04fa02ab4
Explicitly include limits header to fix build issue on Linux.
2020-07-01 14:18:12 +01:00
itsmattkc
d31c373bd0
curveview: transform times to target for zoom fit
2020-06-24 01:29:57 +10:00
itsmattkc
8bf653925f
curve/timeline: improved user interface behavior
...
* Implements "auto-fit" setting for curve view and sets it on open.
* Improves scroll zooming on all TimelineViewBase derivatives.
* Improves code sharing for better maintenance.
2020-06-23 05:25:34 +10:00
itsmattkc
e681b87988
curve/param/panels: leave curve panel open and have option for timebasedwidget to auto-set timebase
2020-06-23 05:22:58 +10:00
itsmattkc
1725f01459
paramview: changed to static viewer-bound and fixed various scrolling issues
2020-06-22 00:38:00 +10:00
itsmattkc
e97b5a9a14
nodeparamview: set time on node set
...
Fixes bug where keyframes would land on 0 unless the time is set a
second time.
2020-06-21 13:12:07 +10:00
itsmattkc
5f6e5916bc
curvewidget: allow zooming only one axis and allow hiding keyframe tracks
2020-06-20 01:56:41 +10:00
itsmattkc
65ccac1dfe
renderer: fixed bug that would render frames even after hash matching
...
Also enables the -Wshadow GCC warning to warn against the code bug that
caused this issue (and has caused other issues like it in the past).
2020-06-19 20:25:05 +10:00
itsmattkc
fd8116a9de
slider: use ctrl to switch axes
2020-06-19 02:36:09 +10:00
itsmattkc
115e62f140
slider: further behavior improvements
...
Ladders appears offset on sliders with multipliers. Ladder also appears
on initial press (but still shows line edit if mouse wasn't moved)
2020-06-18 18:58:49 +10:00
itsmattkc
1f3e0db64b
Merge branch 'master' of https://github.com/olive-editor/olive
2020-06-18 18:15:51 +10:00
itsmattkc
e8c8fedcdb
slider: stop ladder drag timer on release
2020-06-18 17:50:28 +10:00
itsmattkc
57f858dd92
nodetable: correctly update with time
2020-06-18 16:30:57 +10:00
itsmattkc
e47c985baa
slider: if a ladder appears, signal the label that the drag has finished
2020-06-18 16:30:36 +10:00
itsmattkc
a717742cbc
nodetable: show values in separate columns
...
Works for vector coordinates (e.g. XY, XYZ, etc.) as well as displays
checkboxes for RGB/A. Still non-functional.
2020-06-18 15:07:47 +10:00
itsmattkc
c5dd406ff1
slider: improved ladder usability
2020-06-18 14:11:50 +10:00
itsmattkc
5397457c8d
timeline: treat non-primary clicks as non-moving
...
Fixes bug where drag would get stuck if the user right clicked on the
timeline.
2020-06-18 03:35:59 +10:00
itsmattkc
e0d27490e7
Merge branch 'master' of https://github.com/olive-editor/olive.git
2020-06-17 19:56:27 +10:00
itsmattkc
a871c5081b
nodeparamtable: bare bones table view for node inputs
2020-06-17 17:48:07 +10:00
itsmattkc
1b6e9c1c79
viewer: moved nouveau to application launch rather than viewer init
...
Viewer init was kind of too late since in many cases the sequence
would start caching and crash the app before the user could even read
the message. Moving to the startup makes it clearer from the beginning.
2020-06-17 03:00:00 +10:00
itsmattkc
29d56a1583
timeline: implemented UI indicator for tools like razor and edit
2020-06-16 18:30:00 +10:00
itsmattkc
67ee78ac9a
nodeparamview: allow disconnecting nodes by right clicking the "connected to" label
2020-06-16 17:48:10 +10:00
itsmattkc
f107c9bba1
nodeview: associated pasted nodes
...
Prevents nodes being erroneously filtered out.
2020-06-16 17:17:47 +10:00
itsmattkc
e979ce4d7a
nodeview: made an "infinite scroller"
...
Set scene rect to huge and hid the scrollbars. The node view should be
scrolled with middle click or the hand tool.
2020-06-16 16:31:16 +10:00
itsmattkc
62c23e8ed1
timeline: allow re-labelling clips
2020-06-16 16:30:31 +10:00
itsmattkc
41b04d976c
nodes/clips: use node label as clip name and allow changing multiple labels at once
...
Merges the "clip name" and "node label" into the same entity.
2020-06-16 16:23:05 +10:00
itsmattkc
71fa821e52
nodeview: enforce minimum scale
2020-06-16 15:37:11 +10:00
itsmattkc
5980737742
timeline: ignore subtitle tracks for now
2020-06-16 15:17:21 +10:00
itsmattkc
dc86e18eb6
slider: remove old debug info
2020-06-16 15:17:01 +10:00
itsmattkc
89b3fa33f8
slider: update behavior for usability and qt 5.15
2020-06-16 14:52:53 +10:00
itsmattkc
cf17bbc80b
viewer: removed unnecessary background cache triggers
...
This was extremely aggressive and led to cache tasks that would return
even if you cancelled them. This should work a lot better.
2020-06-16 04:07:55 +10:00
itsmattkc
41fc50f412
slider: initialize dragged diff to 0
...
Fixes undefined behavior on first drag of a slider.
2020-06-16 02:51:35 +10:00
itsmattkc
cc463c7c60
viewer: allow temporarily suspending the auto-cache
...
While the auto-cache will always default to on, there are cases where the
user may not want the viewer to barrel ahead caching something (footage
viewer for instance or if the user is making a lot of changes in a short
amount of time).
2020-06-15 18:28:11 +10:00