Look at "LUE grading for Nuke" on Nukepedia. It has a fully self contained
custom UI.


Den søndag den 7. februar 2016 skrev Frank Rueter|OHUfx <fr...@ohufx.com>:

> Looks like you need to feed the custom python knob a QWidget instance.
> So with the below code in your plugin path, you can just add a custom
> python knob to your gizmo and instantiate the widget in there simply with:
> MyWidget()
>
> This will create a new instance every time though, so you will be
> responsible for keeping track of the widget values between panel close/open
> cycles. Most likely you will want to connect the values to internal node
> values anyway, so that should take care of it, I haven't tried it myself
> yet.
>
>
> class MyWidget(QtGui.QWidget):
>
> def __init__(self):
>
> super(self.__class__, self).__init__()
>
> self.node = nuke.thisNode()
>
> layout = QtGui.QHBoxLayout()
>
> layout.setAlignment(QtCore.Qt.AlignTop)
>
> self.setLayout(layout)
>
> btn1 = QtGui.QPushButton('Node Name')
>
> btn1.clicked.connect(self.btn1Clicked)
>
> btn2 = QtGui.QPushButton('Print Stuff')
>
> btn2.clicked.connect(self.btn2Clicked)
>
> dial = QtGui.QDial()
>
> dial.valueChanged.connect(self.dialValueChanged)
>
> layout.addWidget(btn1)
>
> layout.addWidget(btn2)
>
> layout.addWidget(dial)
>
> def btn1Clicked(self):
>
> print self.node.name()
>
> def btn2Clicked(self):
>
> print 'Hi, I\'m a button.'
>
> def dialValueChanged(self):
>
> print 'Value was just changed!'
>
> def makeUI(self):
>
> return self
>
> def updateValue(self):
>
> pass
>
>
>
> On 7/02/16 5:41 am, Hugo Léveillé wrote:
>
> Hey guys
>
> I have been playing with the python custom knob based on Brent Tyler's 
> written tutorial ( http://bit.ly/1OMhdTQ ). It works great to add pyside 
> widgets inside gizmo. The avantage is that you only need to modify the code 
> outside the gizmo the update all instances of the gizmo.
>
> But I would like to know if it is possible to bake the code inside the python 
> knob so that the gizmo/grizmo can be shared without having to have the 
> init.py file with the python code
>
> Also, since pysides knobs values are not saved when copying/saving the 
> script, the only way right now to save them is in an hidden knob on reference 
> to them in the __init__ function to set their values. Any better idea?
>
> _______________________________________________
> Nuke-python mailing listnuke-pyt...@support.thefoundry.co.uk 
> <javascript:_e(%7B%7D,'cvml','Nuke-python@support.thefoundry.co.uk');>, 
> http://forums.thefoundry.co.uk/http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
>
>
> --
> [image: ohufxLogo 50x50] <http://www.ohufx.com> *vfx compositing
> <http://ohufx.com/index.php/vfx-compositing> | workflow customisation and
> consulting <http://ohufx.com/index.php/vfx-customising> *
>
_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python

Reply via email to