0.21.0¶
- Added a selectionMenu widget. 
- Stylesheet restructured, enabling style overrides in widgets. 
- Improved stylesheet performance applying styles only in Window and Menu widgets. 
- Buttons can optionally have the frame removed using the setHasFrame() method or the hasFrame argument to the constructor. Additionally they no longer have minimum sizes defined by the stylesheet. 
- Minor style changes. 
- Disabled Qt’s automatic merging of menubars with the OS X system menu. This was causing crashes and wasn’t compatible with fullscreen mode either. 
- Added a simple ProgressBar widget. 
- Removing a node from a parent using removeChild() now automatically disconnects the node from the graph. Fixes issue #38. 
- Fixed a number of test failures which occurred only in the Image Engine build, due to the fact that we install the cortex ops with different version numbers than a standard install. 
- CompoundParameterValueWidget now updates the ui appropriately when plugs are added and removed. This can be seen in the Read node when switching between different file types. 
- File menu items now open file browsers in a more sensible location. 
- File browser now has a button to go up one directory level. 
- Containers may now be used in the python with statement to make the creation of nested layouts more straightforward. For example : - with GafferUI.Collapsible() : with GafferUI.ScrolledContainer() : with GafferUI.ListContainer( GafferUI.ListContainer.Orientation.Vertical ) : GafferUI.TextWidget( “Making uis is easier now” ) GafferUI.Button() 
- Nodule::registerNodule now accepts regular expressions for plug names. 
- StandardNodeGadget::acceptsNodule is deprecated. Use Nodule::registerNodule in preference. Default implementation of StandardNodeGadget::acceptsNodule now always returns true. 
- Graph editor ui for ParameterisedHolders now only shows connections for ObjectPlugs, this prevents the interface being cluttered with connections for all the other parameter types. 
- Viewer is no longer hardcoded to display the result of the “output” plug - it now displays the result of the first output ObjectPlug. This allows it to view the results of procedurals and ops. 
- The node creation menus for Ops and Procedurals now create OpHolder and ProceduralHolder nodes rather than generic ParameterisedHolder nodes. Ops and procedurals may now be run in Gaffer.