The simplest hack to have Maya believe the function exists and to have it do nothing at all is to declare the MEL procedure:
global proc CgAbBlastPanelOptChangeCallback(string $pass){}
Just run that in MEL and the error should disappear in the current Maya session. However, the callback is still saved with the scene, so reopening it later and not having that procedure defined in a new Maya session will cause the errors again.
To remove the actual callback one can do try this Python snippet I posted here: https://gist.github.com/BigRoy/0c094648e6af1a22d6fe99cdc9837072
Even if then after saving and reloading it is not fixed it's likely due to it still somehow being present in the uiConfigurationScriptNode that Maya creates during save and used during loading of the scene file (if you have that enabled, which it is by default - it is whatever restores the Maya UI to what it was like when you were saving the file).
Anyway, if you really want to debug further you can look into the content of the particular script node. It can for example be found in:
- Window > Animation Editors > Expression Editor
- Select Filter > By Script Node Name (top left of the window)
- uiConfigurationScriptNode (this will only exist if the scene has been saved with the UI setting enabled)
If that script node sets the modelEditor callback the issue will then again persist on scene reopen. I guess you could try deleting the uiConfigurationScriptNode and then just save the scene again... e.g. delete it with this in MEL:
delete "uiConfigurationScriptNode";
Then still make sure to clear it using the Python snippet in the Github gist link above.
@Anonymousdoes that help your case?