itsmattkc
402c4e1694
ui: move zoom scrolling option to preferences
2022-08-12 09:16:12 -07:00
itsmattkc
925d63d707
timebased: transform keyframe times to global for snapping
2022-07-22 17:57:19 -07:00
itsmattkc
e4fd2d5d2c
timebasedwidget: rewrote scroll catchup code
...
Code is much better. Less hacky queuing, implements cooldowns to improve navigation, and introduces a framework so that subclasses can make use of catchup/cooldown code too with any scrollbar they want
2022-07-15 10:59:51 -07:00
itsmattkc
96594ef948
keyframeview: adjust sequence time to node's time
2022-05-16 14:14:53 -07:00
itsmattkc
78d5314c0a
seekablewidget: don't allow deleting if dragging
...
Fixes potential crash if a user does this
2022-05-11 13:44:59 -07:00
itsmattkc
182e1599af
keyframes: implemented copying/pasting
2022-05-10 15:42:09 -07:00
itsmattkc
4b366a9b73
update copyright year to 2022
2022-05-10 10:38:56 -07:00
itsmattkc
e6d4fe43de
reworked and vastly improved snapping subsystem
2022-05-02 00:01:49 -07:00
itsmattkc
f7396de121
markers: reimplemented copy/paste
2022-05-01 22:33:58 -07:00
itsmattkc
6aa493bd67
reworked param view passthroughs for groups
2022-01-22 18:17:51 -08:00
itsmattkc
2831f6508b
keyframeview: unadjust optimized start position
...
Fixes #1820
2022-01-05 11:55:29 -08:00
itsmattkc
352a41a59e
keyframeview: fix severe crash
2022-01-04 10:34:24 -08:00
itsmattkc
363a8cc7a9
keyframeview: correct time break bug
2022-01-02 12:35:41 -08:00
itsmattkc
74d9c43ff5
keyframeview: optimized keyframe drawing
2021-12-28 21:10:57 -08:00
itsmattkc
619de01db4
refined curve view
2021-12-17 17:07:59 -08:00
itsmattkc
bf196e790b
refined keyframeview and curveview
2021-12-15 19:45:04 -08:00
itsmattkc
7d82d56f31
reworked much of keyframeview for new architecture
2021-12-13 14:12:30 -08:00
itsmattkc
98044e0be1
keyframeview: correctly map bezier control positions when signalling scroll
...
Fixes #1704
2021-08-14 12:45:46 -07:00
itsmattkc
52c5617159
undo: wrapped redo/undo functions to ensure prepare is called
2021-07-17 00:14:24 -07:00
itsmattkc
2d53e35e7c
keyframeviewbase: null check to fix crash
2021-05-26 17:03:11 +10:00
itsmattkc
72ed87d923
ui: scroll zoom preference now specific to widget
...
Fixes #1597
2021-05-10 12:07:15 +10:00
itsmattkc
94b2cebeea
ui: merged nodeview/timelineview scrolling code
...
Greatly improves code quality and maintainability
2021-05-10 11:15:37 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +10:00
itsmattkc
cb75e37e77
moved several files around
...
Mostly moved classes that became node derivatives into the node/ folder.
2021-04-08 12:15:59 +10: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
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
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
9f99182089
use catch up scrolling when dragging items
2021-01-25 10:22:14 +11:00
itsmattkc
0f38769208
fixed more keyframe dragging bugs
2021-01-24 18:17:55 +11:00
itsmattkc
d4e6d33db1
keyframeviewbase: hold shift to only drag bezier by time
2021-01-24 15:32:03 +11:00
itsmattkc
f04ca0a707
implemented select and deselect all in curve and param panels
2021-01-24 15:29:38 +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
62bab2ec01
keyframeview: show time and value in tooltip while dragging
2021-01-24 09:35:41 +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
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
e2010dde83
made formal QtUtils class
2020-11-17 09:42:36 +11:00
itsmattkc
1b9bf6d92c
switched many QLists for QVectors
...
Minor optimization
2020-11-16 16:17:43 +11:00
itsmattkc
fec9774935
curveview: finished rework
2020-09-29 16:41:12 +10: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
2afa5a42c7
ui: optimized widget signals for selecting clips/nodes
...
Decent performance optimization when working with the UI.
2020-08-01 02:12:20 +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
1725f01459
paramview: changed to static viewer-bound and fixed various scrolling issues
2020-06-22 00:38:00 +10:00
itsmattkc
5f6e5916bc
curvewidget: allow zooming only one axis and allow hiding keyframe tracks
2020-06-20 01:56:41 +10:00
itsmattkc
2039067fdc
renderer/viewer: fixed playback and live updates from value changes
2020-05-15 15:02:30 +10:00
itsmattkc
c387ce1cd7
polygon node: early crude implementation
2020-05-05 00:22:49 +10:00
itsmattkc
e67dabf1ff
keyframes: implemented deleting keyframes with the delete shortcut
2020-05-01 17:01:16 +10:00