Commit Graph

890 Commits

Author SHA1 Message Date
c140ccb9fd 2d smoothview now scales back the time to move for smaller view zoom/panning.
also the compositor bounds (used for scroll bars), were only calculated when pressing the home key in 2.63, how this is updated on draw
2012-08-12 19:35:47 +00:00
9cce2d8645 smooth-view for 2d views, graph editor, sequencer, node view, works with border zoom, view selected, view all. 2012-08-12 01:07:31 +00:00
b96c622015 style cleanup 2012-08-11 22:12:32 +00:00
c567cf3fab code cleanup: WM naming conventions 2012-08-11 21:35:24 +00:00
5e0f254afa utility functions for getting/setting rectangles for operators. 2012-08-08 20:38:55 +00:00
f0951f58ca code cleanup: rename G.afbreek --> is_break, G.rendering --> is_rendering 2012-08-08 18:37:06 +00:00
0b5a995cfd code cleanup: rename G.rt to G.debug_value 2012-08-08 18:21:54 +00:00
Lukas Toenne
543cee14ca Renamed the mx/my coordinates in SpaceNode to more descriptive 'cursor'. This follows the naming in the View3D space, since this vector is used for essentially the same purpose (adding nodes at a specific location), although not used for any transform origin and not displayed in the editor.
Note: While renaming DNA properties is usually dangerous and can break files, in this case it is possible because the mx/my values are only used at runtime.
2012-08-08 17:37:02 +00:00
Lukas Toenne
bd3ec60651 Search option for adding nodes.
The 'Add' menu in the node editor now has an option 'Search' at the top, which opens a separate popup for searching node types by name.

The operator for this is implemented completely in Python (this could also be done for the regular menu-based Add options in the future). There are a few necessary extensions to the RNA as well:

* The View2D struct in regions is now exposed. Currently only contains converter functions for coordinates from the region to the view (i.e. scrolled and zoomed view space). Used for converting mouse location to node space.

* The SpaceNode exposes the existing 'cursor_location' for operators to store mouse position beyond invoke calls. Not used for anything else (transforms) so far.

* The edit_tree in SpaceNode is also exposed, this is needed for operators to work correctly inside node groups.
2012-08-08 16:44:16 +00:00
098cbdac62 fix for minor regression in own recent edits: sample line was drawing in newly created curve nodes (Hue correct). 2012-08-08 08:41:10 +00:00
4005b88b30 minor edits to node view
- when single (non frame) node selected, dont zoom in, just pan.
- only reset the background when pressing home key
2012-08-07 18:45:24 +00:00
06791ba281 select linked
- dupligroup now only selects objects with dupligroup enabled.
- selected onjects are skipped, this way and undo push wont happen if no new objects are selected.

also minor edits to node view all/selected
2012-08-07 17:20:21 +00:00
258b4a8dad add view selected for node view 2012-08-07 16:30:34 +00:00
Lukas Toenne
cfe7bab080 Fix for drawing arrows on node lines between two reroute nodes. This was a typo in r48762 which inverted the arrow scale. 2012-08-06 20:48:08 +00:00
2b8ac9bc61 inpaint node from tomato branch by Peter Schlaile
http://en.wikipedia.org/wiki/Inpainting
2012-08-06 13:45:11 +00:00
Lukas Toenne
54b61401ed Fix #32271, Node group/parent crash. The grouping operators need to also look at the non-selected nodes in the edit tree to find nodes whose parent is to be moved but the child is not, and then detach those. 2012-08-06 11:23:09 +00:00
2988c81d6b fix [#32272] crash while rendering and modifying the node setup. 2012-08-06 10:13:49 +00:00
df81b50bf2 prevent copy/paste from incompatible types (compo -> material for eg) - would crash instantly. 2012-08-06 08:41:45 +00:00
5bb97305a4 fix for node clipboard leak on exit, also use blenders convention for function naming with BKE clipboard funcs. 2012-08-06 08:25:24 +00:00
7d2190b79b fix for transforming parented nodes, the node would check its parent was not transformed, but in fact its parents parent could still be getting transformed still, also, the order of initializing transform data made this check unreliable.
fix for mingw broke from one of my own commits, changing header order fixes.
2012-08-05 21:06:56 +00:00
e592f757e8 fix for crash when moving frames about in the node space, was possible to move a node into its own child frame (causing recursive parent loop).
also some minor code cleanup.
2012-08-05 20:40:26 +00:00
887d517e3b use define for 0.375 = GLA_PIXEL_OFS, used all over the interface.
also use M_SQRT1_2 in math_rotation.c
2012-08-05 17:27:52 +00:00
97e9659c53 style cleanup 2012-08-04 12:54:27 +00:00
ee86f7fe15 dont re-combute composite nodes when knife and add-socket operators don't add any links. 2012-08-03 23:44:19 +00:00
84df85164d fullscreen mask editing now works in the image space over a viewer node. 2012-08-03 20:56:04 +00:00
6374e3b49d DO not draw active outline for collapsed nodes when they're not selected
Also made corrections to currently unused code
2012-08-03 11:39:34 +00:00
Lukas Toenne
771a7241b9 Fix for node placement when copying to/pasting from clipboard. Child node location is always relative to parent nodes (if the parent is also copied) and must not be offset. Also takes the offset of the edited node group in the editor into account now. 2012-08-03 10:51:29 +00:00
Lukas Toenne
c12d0fd76c Fix for node clipboard copy operator for Frame nodes. Was redirecting the parent pointer of the original instead of the copied nodes. 2012-08-03 10:18:52 +00:00
db8c9c24f6 code cleanup: remove unused includes 2012-08-02 23:03:16 +00:00
8f07833ed5 code cleanup: move node background image operators into node_view.c 2012-08-02 21:52:09 +00:00
5e60ccc65c rename node_state.c --> node_view.c 2012-08-02 21:36:33 +00:00
7aa44d088f Node selection: make node active before it could be unselected by extending
selection, which matches behavior of all other areas in blender.
2012-08-02 16:01:05 +00:00
Lukas Toenne
9d2173518c Clipboard feature for nodes. With the Copy operator a copy of all selected nodes and links between them is stored in an offscreen list (not in the library). The Paste operator then in turn copies these into the active node tree in the editor.
Currently does not support copying of animation data. This would require copying of individual fcurves etc. between data block, which is not implemented yet.

Also it is currently possible to circumvent some constraints of the nodes, in particular for node groups (e.g. no groups inside groups, render layer not inside groups).
2012-08-02 09:52:37 +00:00
829c48a991 code cleanup: headers 2012-08-01 20:39:14 +00:00
689c6133ea split node_edit.c into separate files (add, group, relationshops), was almost 5000 loc. 2012-08-01 19:11:17 +00:00
179d00fb9c make node select_all consistent with other select operators, also add Ctrl+I, select inverse to node space. 2012-08-01 13:28:19 +00:00
6704f56c15 Do not highlight non-selected active node with active outline
This would match other areas in Blender.
2012-08-01 09:44:25 +00:00
75046eadbf Mango request: option to create nodes with hidden preview by default 2012-07-30 17:11:59 +00:00
7217927414 add inline functions for max/min ints, good to use when the arguments are function calls (we had a few of these). 2012-07-29 18:14:20 +00:00
c41e1e434a code cleanup: replace MIN2/MAX2 with minf/maxf 2012-07-29 16:59:51 +00:00
7b4733f422 fix usercount error with dropping images in the node view. 2012-07-27 13:57:03 +00:00
f230a94d49 Fix crash in drawing socket names when zooming out a lot
--
svn merge -r49291:49292 ^/branches/soc-2011-tomato
2012-07-27 13:49:55 +00:00
18e874798d Track input node: more control on over output value
Now supports output value of:

- Absolute marker position
- Marker position relative to the very first marker
- Marker position relative to given scene frame
2012-07-27 11:07:12 +00:00
b8d96bc011 mask motion blur shutter option 2012-07-27 10:20:36 +00:00
b10a35a9a9 motion blur for mask node:
TODO
- add shutter speed option
- add blur option
2012-07-27 09:32:47 +00:00
61469d2e3e code cleanup: remove unneeded 'struct' qualifiers 2012-07-26 22:47:05 +00:00
733edf8628 option to use manual size input for scene 2012-07-26 13:29:38 +00:00
c67e910df6 fix/workaround for glitch with node editing active texture bug - where a node texture in a group could get stuck and the buttons UI wouldnt update to other active nodes.
Files saved with this error will still give problems, toggling group edit will fix.
2012-07-24 12:35:41 +00:00
2b286585af fix for node editor re-rendering when the background image was moved in the view. 2012-07-22 13:13:36 +00:00
Lukas Toenne
f883337ba3 Fix #32118, Reroute nodes inside groups get created in wonky places.
Previous attempt was not taking into account parent nodes of the group nodes (i.e. frames). The nodeFromView function should be used to convert between relative node location to absolute view space. Also added this in the node_add_node helper function, which is used in a number of operators for adding nodes in a specific location.
2012-07-20 15:07:06 +00:00