e8b81065bc
This implements the `Warning` node that allows node groups to communicate expectations about input values to the user. By default, the `Warning` node is only evaluated if the node group that contains it is evaluated in any way. This is better than always evaluating it, because that could trigger lots of unnecessary evaluation in parts of the potentially large node tree which should be ignored. In this basic mode, the output of the node should not be connected to anything and it must not be in a zone. For more fine-grained control for when the `Warning` node should be evaluated, one can use the boolean output which is just a pass-through of the `Show` input. If this output is used, the `Warning` node will only be evaluated if its output is used. A simple way to use it is to control a Switch node with it that e.g. "disables" a specific output when the inputs are invalid. In this case, the `Warning` node may also be in a zone. The node allows the user to choose between 3 severity levels: Error, Warning and Info. Those are the same levels that we use internally. Currently, the error and warning mode are pretty much the same, but that may change in the future. Pull Request: https://projects.blender.org/blender/blender/pulls/125544