def testEnabled(self): g1 = GafferUI.Gadget() self.assertEqual(g1.getEnabled(), True) self.assertEqual(g1.enabled(), True) g1.setEnabled(False) self.assertEqual(g1.getEnabled(), False) self.assertEqual(g1.enabled(), False) g2 = GafferUI.Gadget() g1.addChild(g2) self.assertEqual(g2.getEnabled(), True) self.assertEqual(g2.enabled(), False) g1.setEnabled(True) self.assertEqual(g2.enabled(), True) g3 = GafferUI.Gadget() g2.addChild(g3) self.assertEqual(g3.getEnabled(), True) self.assertEqual(g3.enabled(), True) g1.setEnabled(False) self.assertEqual(g3.getEnabled(), True) self.assertEqual(g3.enabled(), False) self.assertEqual(g3.enabled(relativeTo=g2), True) self.assertEqual(g3.enabled(relativeTo=g1), True)
def testVisibility(self): g1 = GafferUI.Gadget() self.assertEqual(g1.getVisible(), True) self.assertEqual(g1.visible(), True) g1.setVisible(False) self.assertEqual(g1.getVisible(), False) self.assertEqual(g1.visible(), False) g2 = GafferUI.Gadget() g1.addChild(g2) self.assertEqual(g2.getVisible(), True) self.assertEqual(g2.visible(), False) g1.setVisible(True) self.assertEqual(g2.visible(), True) g3 = GafferUI.Gadget() g2.addChild(g3) self.assertEqual(g3.getVisible(), True) self.assertEqual(g3.visible(), True) g1.setVisible(False) self.assertEqual(g3.getVisible(), True) self.assertEqual(g3.visible(), False) self.assertEqual(g3.visible(relativeTo=g2), True) self.assertEqual(g3.visible(relativeTo=g1), True)
def testVisibilityChangedSignal(self): g = GafferUI.Gadget() g["a"] = GafferUI.Gadget() g["a"]["c"] = GafferUI.Gadget() g["b"] = GafferUI.Gadget() events = [] def visibilityChanged(gadget): events.append((gadget, gadget.visible())) connnections = [ g.visibilityChangedSignal().connect(visibilityChanged), g["a"].visibilityChangedSignal().connect(visibilityChanged), g["a"]["c"].visibilityChangedSignal().connect(visibilityChanged), g["b"].visibilityChangedSignal().connect(visibilityChanged), ] g["b"].setVisible(True) self.assertEqual(len(events), 0) g["b"].setVisible(False) self.assertEqual(len(events), 1) self.assertEqual(events[0], (g["b"], False)) g["b"].setVisible(True) self.assertEqual(len(events), 2) self.assertEqual(events[1], (g["b"], True)) g["a"].setVisible(True) self.assertEqual(len(events), 2) g["a"].setVisible(False) self.assertEqual(len(events), 4) self.assertEqual(events[-2], (g["a"]["c"], False)) self.assertEqual(events[-1], (g["a"], False)) g["a"].setVisible(True) self.assertEqual(len(events), 6) self.assertEqual(events[-2], (g["a"]["c"], True)) self.assertEqual(events[-1], (g["a"], True)) g["a"]["c"].setVisible(False) self.assertEqual(len(events), 7) self.assertEqual(events[-1], (g["a"]["c"], False)) g.setVisible(False) self.assertEqual(len(events), 10) self.assertEqual(events[-3], (g["a"], False)) self.assertEqual(events[-2], (g["b"], False)) self.assertEqual(events[-1], (g, False)) g["a"]["c"].setVisible(True) self.assertEqual(len(events), 10)
def testBoundIgnoresHiddenChildren(self): g = GafferUI.Gadget() t = GafferUI.TextGadget("text") g.addChild(t) b = t.bound() self.assertEqual(g.bound(), b) t.setVisible(False) # we still want to know what the bound would be for t, # even when it's hidden. self.assertEqual(t.bound(), b) # but we don't want it taken into account when computing # the parent bound. self.assertEqual(g.bound(), imath.Box3f())
def testHighlighting(self): g = GafferUI.Gadget() self.assertEqual(g.getHighlighted(), False) g.setHighlighted(True) self.assertEqual(g.getHighlighted(), True) g.setHighlighted(False) self.assertEqual(g.getHighlighted(), False) cs = GafferTest.CapturingSlot(g.renderRequestSignal()) g.setHighlighted(False) self.assertEqual(len(cs), 0) g.setHighlighted(True) self.assertEqual(len(cs), 1) self.assertTrue(cs[0][0].isSame(g))
def testVisibilitySignals(self): g = GafferUI.Gadget() cs = GafferTest.CapturingSlot(g.renderRequestSignal()) self.assertEqual(len(cs), 0) g.setVisible(True) self.assertEqual(len(cs), 0) g.setVisible(False) self.assertEqual(len(cs), 1) self.assertEqual(cs[0][0], g) g.setVisible(False) self.assertEqual(len(cs), 1) self.assertEqual(cs[0][0], g) g.setVisible(True) self.assertEqual(len(cs), 2) self.assertEqual(cs[1][0], g)
def testRenderRequestOnStyleChange( self ) : g = GafferUI.Gadget() cs = GafferTest.CapturingSlot( g.renderRequestSignal() ) self.assertEqual( len( cs ), 0 ) s = GafferUI.StandardStyle() g.setStyle( s ) self.assertEqual( len( cs ), 1 ) self.assertTrue( cs[0][0].isSame( g ) ) s2 = GafferUI.StandardStyle() g.setStyle( s2 ) self.assertEqual( len( cs ), 2 ) self.assertTrue( cs[1][0].isSame( g ) ) s2.setColor( GafferUI.StandardStyle.Color.BackgroundColor, IECore.Color3f( 1 ) ) self.assertEqual( len( cs ), 3 ) self.assertTrue( cs[2][0].isSame( g ) )
def testVisibilitySignals(self): g = GafferUI.Gadget() v = GafferUI.ViewportGadget() v.addChild(g) cs = GafferTest.CapturingSlot(v.renderRequestSignal()) self.assertEqual(len(cs), 0) g.setVisible(True) self.assertEqual(len(cs), 0) g.setVisible(False) self.assertEqual(len(cs), 1) self.assertEqual(cs[0][0], v) g.setVisible(False) self.assertEqual(len(cs), 1) self.assertEqual(cs[0][0], v) g.setVisible(True) self.assertEqual(len(cs), 2) self.assertEqual(cs[1][0], v)