ID 332226 - Eyedropper knob disappears when the node it has been created within gets either copied and pasted, or the script is saved and re-opened.

Follow

Problem summary
When particular knobs, like the Eyedropper_Knob are created within a node using python, once the node is copied or the script is saved and re-opened the knob controls will not be stored and disappear.


During testing, this also happens to other knob types and is seemingly unspecific.

Customer reported version
nuke.11.1v1

Customer reported platform
centos7

Steps to reproduce

1) Open a new Nuke script

2) Copy the following snippet into your Script Editor and click 'ctrl+enter' to run
dot = nuke.nodes.Dot()
k = nuke.Eyedropper_Knob("Picker","Picker")
dot.addKnob(k)
This will create a Dot node that contains an eyedropper selection tool.

3) Copy the Dot node and paste it
Result: The new Dot node will not have the eyedropper knob

4) Save the nuke script and re-open the nuke script
Result: The Dot node will not have the eyedropper knob

Workaround
As the issue is being caused by an incorrect value being set when copied within the knob, you can manually change this value with the following steps:

1) Open the script in a Text Editor

2) Alter the value in the following line of code in the Dot nodes operations from '0 Picker' to '36 Picker'
 addUserKnob {20 User}
 addUserKnob {0 Picker}
 Picker {0 0 0 0 0 0 0 0} 
When the script is re-opened it will correctly work until this node is saved again.

Unfortunately, each time you go to open the script you will need to re-type this value.


Note: Additional tests using several other knobs from following knob types list provided various results.
https://docs.thefoundry.co.uk/nuke/105/ndkdevguide/knobs-and-handles/knobtypes.html

For example, 'Range_Knob' does not work, where 'File_Knob' does.

Reproduced by support
This bug has been reproduced in:
Nuke 11.1v1 - CentOS 6.9 - Windows 7 - MacOSX 10.13
Nuke 11.0v3 - CentOS 6.9
Nuke 11.0v1 - CentOS 6.9 - Windows 7 - MacOSX 10.13
Nuke 10.5v7 - CentOS 6.9
Nuke 10.5v1 - CentOS 6.9 - Windows 7 - MacOSX 10.13
Nuke 10.0v6 - CentOS 6.9
Nuke 10.0v1 - CentOS 6.9 - Windows 7 - MacOSX 10.13
Nuke 9.0v9 - CentOS 6.9
Nuke 9.0v1 - CentOS 6.9 - Windows 7 - MacOSX 10.13
Nuke 8.0v7 - CentOS 6.9
Nuke 8.0v1 - CentOS 6.9
Nuke 7.0v10 - CentOS 6.9 - Windows 7 - MacOSX 10.13

Earliest version tested
Nuke 7.0v10
- This issue appears to be in all versions of the product

Expected behaviour
The Eyedropper_Knob value should be stored within the node when copied/pasted and also when script is saved and re-opened

Actual behaviour
The Eyedropper_Knob value does not get stored when copied/pasted and when script is saved and re-opened.

    We're sorry to hear that

    Please tell us why