## Fix: Error in Node Wrangler UI when in Sequencer mode
Node Wrangler tried to find the current scene compositing node tree,
even when there was none. This could happen if working on a sequencer
compositing modifier.
This commit hides the Save This Image button when not in Scene
compositing mode.
## Fix: Error in Node Wrangler's Save Image op when file path is empty
If the file path is empty in Save Image operator, it returns `None`
and errors out.
This commit makes it return `{'CANCELLED'}` early in that case.
## Add webp to list of file formats for Save Viewer
## Fix: Error when Viewer Node image renamed and saved
The "Viewer Node" image that contains the current compositing node
tree's viewer data has a hardcoded name by default. However it can be
renamed by the user, which will make the Save Viewer operator fail.
This commit extracts a utility function to get the current viewer
image based on its properties, and simply saves that.
In addition, this avoids having to change the area type to an image
editor to get the current viewer node, and restoring the node editor
afterwards. This action did not restore the current node tree if the
editor was inside a node group.
## Rename "Save This Image" to "Save Viewer Image"
When calling the operator through Menu Search, it is not clear what
"Save This Image" refers to. This commit renames the operator to "Save
Viewer Image", but keeps the old name for the button label.
Pull Request: https://projects.blender.org/blender/blender/pulls/147085
Implement a native method to swap between different node and zone types.
This implementation repurposes the existing menu definitions as base
classes, from which both an "Add" and a "Swap" version would be generated
from. This allows both menus to have the same layout, but use their own
operators for handling the different node/zone types.
In this PR, support for all node editors has been implemented.
Invoking the menu is currently bound to `Shift + S`, same as the old
implementation in Node Wrangler. Since "Swap" is implemented as a
regular menu, features that menus already have such as type-to-search
and adding to Quick Favorites don't require any extra caveats to
consider.
Resolves#133452
Pull Request: https://projects.blender.org/blender/blender/pulls/143997
Replace the icons for the "From Socket" and "To Socket" pop-up menus from
`RADIOBUT_OFF` and `FORWARD`, to each socket type's corresponding icon.
This makes it easier to pick out sockets in longer lists, as they could now be
distinguished by their color.
Video and images in PR
Pull Request: https://projects.blender.org/blender/blender/pulls/145648
Fix error in Attributes menu in World shading mode
Node Wrangler's Attributes menu allows direct addition of attributes
to a shading node tree. It only works on objects, not World, since the
latter does not store attributes.
Fix: Update Merge Nodes operator for new node types
Nodes were deduplicated between node modes (shading, compositing,
geometry) in Blender 5.0. This commit aligns Node Wrangler's Merge
Nodes operator to the new node types.
Cleanup
- Remove unused import and variables
- Merge Nodes Operator
- Use negative list indices instead of length - index.
- Chain conditions instead of nesting them.
Pull Request: https://projects.blender.org/blender/blender/pulls/141508
This is part of the short term roadmap goal of simplifying the
compositor workflow
(see https://projects.blender.org/blender/blender/issues/134214).
The problem is that many users don't know how to get started with
compositing in Blender, even when they have used Blender for other
areas, e.g. modeling.
Note: although the solution makes compositor node trees reusable
accross blend files, this is a nice side effect and not the main goal
of the PR.
This PR implements a "New" button that creates a new compositing node
tree, and manages trees as IDs. This has following advantages:
- Consistent with other node editors and other parts of Blender,
therefore making it easier to getting started with compositing if users
are familiar with shading or geometry nodes
- Give users the ability to reuse the compositing node tree by linking
or appending it.
Note: The parameter "Use Nodes" is still present in this PR, but will
be removed (in a backward compatible way) in a follow up PR.
Pull Request: https://projects.blender.org/blender/blender/pulls/135223
615100acda added support to
`NODE_OT_add_image` to open multiple images, This makes the NW
operator redundant, also `NODE_OT_add_image` can open multiple
images at drag-n-drop. The only difference is that this operator adds
the new image nodes as collapsed nodes.
Pull Request: https://projects.blender.org/blender/blender/pulls/128443
Commit 8ff8fc4859 changed the context for the modes in Merge Nodes
and Change Nodes operators to Nodetree. The enum items were thus
extracted using this context, but the UI Menus were not updated to
reflect this change and a few items were no longer translated.
This commit fixes the issue by using the same translation context for
the menus' drawing.
This operator was duplicating feature that already exists in core
Blender (`node.join`), and was not working great as well. So there is
no need to maintain this python operator, but to keep consistency for
users I kept the keymap and UI entry but assigned it to `node.join`
operator instead, so that users don't notice change.
I assigned keymap inside add-on and not in Blender core because people
who didn't use Node Wrangler have that key free, or have something else
assigned (and `node.join` is already mapped to Ctrl+J), so only Node
Wrangler users should have this keymap. We can change it and rename
built-in operator to Parent, instead of Join, and remap it to Shift+P,
but that's separate discussion.
Resolves#129404.
Pull Request: https://projects.blender.org/blender/blender/pulls/132758
Many operator buttons in Node Wrangler used custom texts defined
elsewhere, but the translation context in this case is "Operator". It
should be using "Default" instead.
Attribute nodes in the shader editor should never be translated
because their name is user data.
Some button labels were switched to title case.
"Dodge" and "Burn" were renamed to "Color Dodge" and "Color Burn"
respectively, to match the item name from the actual node.
The "Frame Selected" operator now uses Node translation context, to
distinguish from the other operator of the same name which means
"Place selected in view".
Pull Request: https://projects.blender.org/blender/blender/pulls/123403
- Reuse menus' bl_label in UI code when identical.
- Switch labels to title case.
- Switch descriptions to sentence case.
- Do not end sentences with "." in reports.
- Replace "Can't" with "Cannot" and "Don't" with "Do Not".
Making node wrangler a core add-ons means that it will ship with Blender, but it still has to be enabled explicitly. It won't be available on the extensions platform anymore.
We'll still continue to move parts of its functionality out of the add-on into default Blender. However, that takes a little bit longer, because we need to go over the design and code quality in more detail first. Once, the most important functionality (#121749) is merged, the remaining node wrangler features can be put on the extensions platform.
Ref !122557