itsmattkc
02c0fb7316
nodeview: automatically deselect blocks that have been removed
...
Fixes segfault attempting to access and select an item that's already been
removed.
2020-08-05 23:56:42 +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
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
1ed0814e83
nodeview: associate disconnected nodes with selected blocks until re-connected
2020-05-13 16:06:13 +10:00
itsmattkc
ce58671fd6
nodeview: started core node filtering work
2020-05-11 22:48:27 +10:00
itsmattkc
16d4cccdb5
nodeview: optimized selecting
...
Rather than responding to every single selection change, the selection operation
can function as-is and then respond to all of them at the end.
2020-05-09 03:33:36 +10:00
itsmattkc
3d0f11c6ef
nodeview: first attempt at filter dialog
2020-05-08 23:12:00 +10:00
itsmattkc
bf68a4d631
nodes: added ability to label nodes
2020-04-29 15:35:05 +10:00
itsmattkc
13dc79d0cd
nodeview: implemented duplicate feature
2020-04-29 15:04:53 +10:00
itsmattkc
d83073cf85
nodeview: attach pasted nodes to the cursor
2020-04-29 14:49:43 +10:00
itsmattkc
ff1a470aa0
Merge branch 'master' into nodeviewredux
2020-04-29 05:01:11 +10:00
itsmattkc
8ab91a70cc
nodeview: implemented moving with either the hand tool or middle mouse button
...
Includes splitting off this functionality from TimelineViewBase so it can be
re-used in any QGraphicsView.
2020-04-29 04:56:58 +10:00
itsmattkc
b57d12868f
nodeview: allow dropping a node on any edge
...
Before we checked data types to ensure compatibility, but some nodes (e.g. the
math node) may be compatible despite a not apparently compatible data type.
We allow users to make any connection quickly this way.
2020-04-28 03:20:08 +10:00
itsmattkc
b947b2224a
nodeview: support multiple flow directions
2020-04-27 16:08:48 +10:00
itsmattkc
1aa87cbda6
various: encapsulate all code in the olive namespace to avoid name collisions
...
Large-scale code cleanup. Also adds a license to the top of all files that were
missing it.
2020-04-06 15:29:53 +10:00
itsmattkc
2bda306866
timeline/various: implemented block copy/paste
...
Implemented the ability to copy/paste blocks/clips in the timeline. This did
require some large scale changes and reworking of the copy/paste system
introduced a few commits ago, but should be largely functional now.
2020-03-31 02:19:05 +11:00
itsmattkc
2bfe9f44df
nodeview: added ctrl+scroll zooming
2020-03-30 01:27:10 +11:00
itsmattkc
34f60e639a
nodeview: implemented copying/pasting nodes
...
Re-uses XML-based project saving/loading functions to store nodes, their
parameters, and their connections in a text-based format in the clipboard.
2020-03-15 20:01:58 +11:00
itsmattkc
3e34975dd9
nodeview: improved and optimized some selection code
2020-03-02 17:03:03 +11:00
itsmattkc
f6d602d8e0
nodeview: improved code structures
2020-03-02 16:07:24 +11:00
itsmattkc
bf7fc9a0c4
panels: selecting a clip in the timeline automatically selects the corresponding
...
nodes in the nodeview
2020-02-26 00:39:30 +11:00
itsmattkc
0a74714f5d
nodeview/nodepanel: implemented select all/deselect all functionality
2020-02-23 11:38:30 +11:00
itsmattkc
ce889f68d5
nodeview: allow users to place a node on an edge to automatically connect it
...
between the two nodes
UI convenience. Edge highlights when the cursor is in range to perform this
action.
2020-02-16 12:40:12 +11:00
itsmattkc
a6f4922d66
nodeview: allow esc key to cancel adding a node
2020-02-16 11:44:35 +11:00
itsmattkc
fa0f732d39
nodeview: attach new nodes to mouse for easier placement
2020-02-16 11:19:26 +11:00
itsmattkc
b233bdf8c9
a fairly decent node auto-positioning algorithm, not perfect, but a good start
2020-01-09 04:03:47 +11:00
itsmattkc
7018973d09
basic auto-positioning implementation
...
Not perfect by any means, but nodes are now automatically placed in relation to
their surroundings and connections.
2020-01-09 01:41:23 +11:00
itsmattkc
18bf126574
implemented deleting nodes in the nodeview (undoable)
2019-12-13 04:12:00 +11:00
itsmattkc
186973ff20
implemented final connections to allow creating new nodes in the nodeview
2019-12-13 03:06:12 +11:00
itsmattkc
934eea5f40
completed node 'add' menu
2019-12-13 02:55:09 +11:00
itsmattkc
371d0e2b37
some render cache adjustments
2019-09-04 10:58:50 +10:00
itsmattkc
9b63cc7755
inserting blocks through the timeline implemented
2019-08-11 17:30:27 +10:00
itsmattkc
136bb52fef
started parameter editor
2019-07-19 00:15:59 -07:00
itsmattkc
9633028f99
documented node view classes
2019-07-17 15:31:34 -04:00
itsmattkc
a78cc3950a
various node UI improvements
2019-07-16 13:25:38 -04:00
itsmattkc
1a39216be2
nodeview can connect and disconnect nodes
2019-07-16 04:43:57 -04:00
itsmattkc
dc2101938e
began node viewer for dag insight
2019-07-15 03:52:44 -04:00
itsmattkc
df32b881c2
reworked css
2019-07-14 11:28:19 -04:00
itsmattkc
f0bf51e4a6
began work on node view panel
2019-07-14 10:14:57 -04:00