Note Editor: Auto-offset nodes on insertion
authorJulian Eisel <eiseljulian@gmail.com>
Sat, 1 Aug 2015 15:39:48 +0000 (17:39 +0200)
committerJulian Eisel <eiseljulian@gmail.com>
Sat, 1 Aug 2015 15:56:44 +0000 (17:56 +0200)
commit47bc66fc8dfe2b89e2b5be029c63f9043c8c2174
treed9756829bb6313f82f7ae99e467ec65580156a40
parent31bf82c17d780660160ebf4e1a4be004b8933b9d
Note Editor: Auto-offset nodes on insertion

Implements "Auto-offset" (called "insert offset" in code) feature for Node Editor, developed during and after LSOC :)
Idea and sponsoring by Sebastian König, blendFX, Mathias Eimann, Mikavaa, Knick Design

When you drop a node with at least one input and one output socket onto a an existing connection between two nodes, Auto-offset will, depending on the direction setting, automatically and animated move the left or right and all of its following nodes away to make room for the new node.
The direction for offsetting can be toggled while you are moving the node by pressing „T“.

The auto-offset is enabled by default but can be disabled in the header of the node-editor. The offset margin can be changed in the editing section of the User Preferences.

Thanks a lot to the sponsors, and especially to Sebastian who helped *a lot* with this. That's how users can help developing Blender!
21 files changed:
release/datafiles/blender_icons.svg
release/datafiles/blender_icons16/icon16_node_insert_off.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_node_insert_on.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_node_insert_off.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_node_insert_on.dat [new file with mode: 0644]
release/scripts/startup/bl_operators/node.py
release/scripts/startup/bl_ui/space_node.py
release/scripts/startup/bl_ui/space_userpref.py
source/blender/blenkernel/BKE_blender.h
source/blender/blenloader/intern/readfile.c
source/blender/editors/include/UI_icons.h
source/blender/editors/interface/resources.c
source/blender/editors/space_node/node_intern.h
source/blender/editors/space_node/node_ops.c
source/blender/editors/space_node/node_relationships.c
source/blender/editors/transform/transform.c
source/blender/makesdna/DNA_node_types.h
source/blender/makesdna/DNA_space_types.h
source/blender/makesdna/DNA_userdef_types.h
source/blender/makesrna/intern/rna_space.c
source/blender/makesrna/intern/rna_userdef.c