def testConstructFromImagePrimitive( self ) : window = IECore.Box2i( IECore.V2i( 0 ), IECore.V2i( 255 ) ) imagePrimitive = IECore.ImagePrimitive.createRGBFloat( IECore.Color3f( 0.25, .5, .75 ), window, window ) i = GafferUI.ImageGadget( imagePrimitive ) self.assertEqual( i.bound(), IECore.Box3f( IECore.V3f( -128, -128, 0 ), IECore.V3f( 128, 128, 0 ) ) )
def __nodeGadgetCreator(node): import IECore import GafferUI result = GafferUI.StandardNodeGadget(node) row = GafferUI.LinearContainer( orientation=GafferUI.LinearContainer.Orientation.X, alignment=GafferUI.LinearContainer.Alignment.Centre, spacing=0.5, ) image = None for typeId in [node.typeId()] + IECore.RunTimeTyped.baseTypeIds( node.typeId()): try: image = GafferUI.ImageGadget( "nodeIcon" + IECore.RunTimeTyped.typeNameFromTypeId(typeId) + ".png") break except: pass if image is not None: image.setTransform( IECore.M44f.createScaled(IECore.V3f(2.0 / image.bound().size().y))) row.addChild(GafferUI.IndividualContainer(image)) row.addChild(GafferUI.NameGadget(node)) result.setContents(row) return result
def testConstructFromFile(self): i = GafferUI.ImageGadget("arrowRight10.png") self.assertEqual( i.bound(), IECore.Box3f(IECore.V3f(-5, -5, 0), IECore.V3f(5, 5, 0)))
def __updateViewportMessage( self, unused = None ) : if self.view() is not None : return text = None icon = None if self.getNodeSet() == self.scriptNode().focusSet() : text = "Focus a node to view" icon = "viewerFocusPrompt.png" elif self.getNodeSet() == self.scriptNode().selection() : text = "Select a node to view" icon = "viewerSelectPrompt.png" else : self.__gadgetWidget.setViewportGadget( GafferUI.ViewportGadget() ) return image = GafferUI.ImageGadget( icon ) image.setTransform( imath.M44f().setScale( imath.V3f( 3.0 ) / image.bound().size().y ) ) message = GafferUI.TextGadget( text ) messageStyle = GafferUI.StandardStyle() messageStyle.setColor( GafferUI.StandardStyle.Color.ForegroundColor, imath.Color3f( 94 / 255.0 ) ) message.setStyle( messageStyle ) column = GafferUI.LinearContainer( "column", GafferUI.LinearContainer.Orientation.Y, GafferUI.LinearContainer.Alignment.Centre, spacing = 0.5 ) column.addChild( GafferUI.IndividualContainer( message ) ) column.addChild( GafferUI.IndividualContainer( image ) ) column.setPadding( imath.Box3f( imath.V3f( -10 ), imath.V3f( 10 ) ) ) viewport = GafferUI.ViewportGadget( column ) viewport.frame( column.bound() ) viewport.setCameraEditable( False ) self.__gadgetWidget.setViewportGadget( viewport )