When you connect an output port to an input port of a different type, a small (“collapsed”) node called a type converter is inserted.
Sometimes you might want to use a type converter node without it being collapsed, for example if trying to connect it to multiple output ports. This screen capture by @Bodysoulspirit (https://community.vuo.org/t/-/5495/6) demonstrates with the Mix Audio Channels node as the type converter:
.
So, instead of always collapsing a type converter when it becomes connected on both ends, only collapse ones that were automatically inserted from a cable drag, and never collapse ones that were manually added from the node library.
Workaround until this is implemented: Connect the type converter node’s output port to multiple input ports before connecting its input port. This leaves it un-collapsed.
I guess if we have collapsable nodes for other types of nodes in the future (to be more efficient with graph real-estate) for example in QC-land minimal splitters, math and logic patches then a right-click to swap state from one to the other would be handy.
I’ve often used the workaround when wiring up a collection of outputs, then connecting inputs after, but what I like about that technique is that the collapsable nodes collapse automatically if possible. I really like the ability to collapse nodes, even when I’ve added them myself; I’d be disappointed to see this incidental functionality disappear.
Perhaps another solution would be to allow Vuo composers to collapse and uncollapse nodes as needed, maybe with just a right-click. Whether the current automatic collapse functionality is altered or not, it would be nice to have a little more control over these things.
Is there room to expand collapsable nodes outside of just type-converters? For instance:
Other nodes that have one input only (including lists)? For example, Add, Multiply, Spint Off Event/Value…
Nodes where only one input is being sent data? For example, Get Item from List where the List port gets sent data, but Which is entered manually…
Chains of nodes that match the above requirements? For example, say some text data comes into an Append Texts node (with a / separator) to compile the pieces of a URL for an image that will be fed into a Make Image Layer node. The first four nodes could be collapsed in this chain: Append Texts>Fetch Image>Invert Image Colors>Convert Image to Layer>Render Layers to Window (As it is now, only the second last node is collapsed automatically.)
@Pianomatic, that’s an interesting idea. To avoid expanding the current feature request beyond its complexity of 1 dot / up to a few days of work, I’ve created a separate feature request covering items 1 and 2: Ability to collapse other nodes besides type converters.
For item 3, I think a good way to accomplish that would be with the separate feature request plus Ability to create composition-local subcompositions. You could group the nodes into a subcomposition and give it a meaningful name, which would be displayed when you collapse the subcomposition node.