- Added shift+drag of node to panel to create duplicate editor (#575).
- Added HSV readout for pixel below mouse in image viewer (#576).
- Improved the UI for Attributes and Options, to distinguish between the boolean used to enable a setting and the boolean used to define the value (#65).
- Fixed unwanted scaling of Button images.
- Added a toolbar to the viewer, initially with only a single button for specifying the 3D display style (#114).
- Improved MenuButton menu positioning.
- Fixed bug where searchable menus kept keyboard focus after closing.
- Fixed focus stealing problems apparent in Viewer and NodeGraph. They still take focus on mouse enter, but will not steal focus from text entry widgets (#555, #439).
- Added per-column visibility for CompoundVectorParameterValueWidget. Visibility is specified using the standard [“UI”][“visible”] userData entries on the child parameters which provide the columns (#526).
- Stopped plug controls accepting drags from themselves. This was causing trouble for users who were accidentally dragging and dropping a single line from a PathVectorDataPlugValueWidget onto itself, thus removing all the other lines.
- Added drag start threshold, to make it harder to accidentally start a drag (#593).
- Disabled “Remove input” menu item for read only plugs and uis.
- Disabled Box promotion menus on read only UIs (#604).
- Disabled ganging menu items for read only UIs.
- Stopped standard graph layout reconnecting invisible nodes.
- Prevented rogue connections being made to Shader “parameters” Plug.
- Fixed bugs in computing hashes for transform, object and attributes at the scene root.
- Added support for struct parameters.
- Added shaders for doing basic vector arithmetic.
- Added support for N global variable in OSLRenderer.
- Fixed OSLShader hash bug. Because OSL shaders are the first shader type we’ve supported where a single shader can have multiple outputs, we weren’t taking into account which particular output was connected when computing the hash.
- Prevented vector->color connections for OSLShader nodes. OSL itself doesn’t allow such connections so we mustn’t either. Also added a vectorToColor shader to help work around the restriction.
- Started versioning documentation releases - they follow the app release version.
- Changed modifier key styling in documentation content to match that used in interface.
- NodeEditor content expanded.
- NodeGraph content expanded.
- New images.
- New screen grab setups.
- Simplified example light shader.
- Renamed CheckBox to BoolWidget and added different display modes. CheckBox remains as an alias to BoolWidget for backwards compatibility.
- Added stream insertion operator for GafferScene::ScenePlug::ScenePath.
- Fixed RunTimeTyped declaration for SceneView. It was declared as deriving from View rather than View3D.
- Fixed bug in Widget.widgetAt().
- Added widget overlays to GLWidget. This allows any Widget subclass to be displayed as an overlay on top of the OpenGL contents.
- Added setColumnVisible/getColumnVisible methods to VectorDataWidget.
- Implemented VectorDataPlugValueWidget.setHighlighted().
- Fixed StandardNodeUI.setReadOnly() to properly affect plug labels.
- Implemented setPlug on a SectionedCompoundDataPlugValueWidget.
- Fixed DependencyNode::enabledPlug() python bindings.
- Added python binding for ValuePlug::setFrom().