def __setColor(cls, menu, node): color = Gaffer.Metadata.nodeValue( node, "nodeGadget:color") or IECore.Color3f(1) dialogue = GafferUI.ColorChooserDialogue(color=color, useDisplayTransform=False) color = dialogue.waitForColor( parentWindow=menu.ancestor(GafferUI.Window)) if color is not None: with Gaffer.UndoContext(node.ancestor(Gaffer.ScriptNode)): Gaffer.Metadata.registerNodeValue(node, "nodeGadget:color", color)
def __buttonRelease(self, swatch, event): if event.button != event.Buttons.Left: return False dialogue = GafferUI.ColorChooserDialogue( color=self.__swatch.getColor(), useDisplayTransform=False) color = dialogue.waitForColor( parentWindow=self.ancestor(GafferUI.Window)) if color is not None: self._updateFromWidget(color)
def __buttonPress(self, widget, event): if not self.__colorChooserDialogue: self.__colorChooserDialogue = GafferUI.ColorChooserDialogue() self.ancestor(GafferUI.Window).addChildWindow( self.__colorChooserDialogue) self.__colorChooserDialogue.setTitle(self.getPlug().relativeName( self.getPlug().ancestor(Gaffer.ScriptNode.staticTypeId()))) self.__colorChooserDialogue.colorChooser().setColor( self.getPlug().getValue()) self.__colorChooserDialogue.colorChooser().setInitialColor( self.getPlug().getValue()) self.__colorChangedConnection = self.__colorChooserDialogue.colorChooser( ).colorChangedSignal().connect(self.__colorChanged) self.__confirmClickedConnection = self.__colorChooserDialogue.confirmButton.clickedSignal( ).connect(self.__buttonClicked) self.__cancelClickedConnection = self.__colorChooserDialogue.cancelButton.clickedSignal( ).connect(self.__buttonClicked) self.__dialogueClosedConnection = self.__colorChooserDialogue.closedSignal( ).connect(self.__dialogueClosed) self.__colorChooserDialogue.show()
import IECore import Gaffer import GafferUI import GafferScene import GafferSceneUI import os scriptNode = script scriptWindow = GafferUI.ScriptWindow.acquire(script) #just launch a colour chooser dialogue and then set it to be grabbed cc = GafferUI.ColorChooserDialogue(color=IECore.Color3f(0.2, 0.6, 0.8)) cc.setVisible(True) cc._Widget__qtWidget.resize(250, 250) cc.colorChooser().setColor(IECore.Color3f(0.6, 0.6, 0.8)) application.setGrabWidget(cc)