I’ve been experimenting a bit more with scripting lately and exploring a few ideas. I use custom LFOs all the time to build interesting DSP chains, so I’m naturally exploring various script ideas that involve generating the custom LFO envelope points automatically. It’s not yet possible to access the LFO envelope points with scripting, due to the slightly limited interface to the device properties, as briefly explained in this other thread:
Hopefully this can be improved at some point in the future as Taktik says, but in the meantime I’m forced to think about possible workarounds. One obvious thing that springs to mind is to have my script generate the XML for the envelope points instead, so that the user can copy this from a textfield in my script GUI, and then paste it directly into the LFO itself. But I’ve hit some rather annoying quirky clipboard behaviour with the script GUI text fields. (And indeed any text field that is native/internal to Renoise, it seems)
Let’s imagine that I’ve generated the following chunk of XML:
<?xml version="1.0" encoding="UTF-8"?>
<envelopeselectioncontent doc_version="0"><br>
<points><br>
<point>0,0.0</point><br>
<point>1,0.5</point><br>
<point>2,1.0</point><br>
</points><br>
<rangelength>3</rangelength><br>
</envelopeselectioncontent>
And I output it to a text field in my script GUI:
If I copy this chunk of XML from the text field in Renoise, I can see it physically go into the Windows clipboard (Start Run > clipbrd), but when I try to paste it back into the LFO envelope in Renoise… nothing happens.
If I copy the same XML from an external app such as Notepad and paste it into Renoise, then it works normally. Renoise correctly sees that there is XML on the clipboard, and it inserts the points into the LFO envelope as expected.
I tried it with a scripted text field, the scripting terminal & editor itself, and even the song comments editor, but they all seem to exhibit the same ‘problem’. Whatever Renoise is doing to interpret the clipboard text and convert the XML into working object data, it does not seem to be triggered when copying XML from internal text fields. It only works when the XML is copied from an external app such as Notepad.
Have I missed something in the scripting API, like some kind of property or notifier that can alter this clipboard behaviour, or has this simply been overlooked thus far? If it has been overlooked, it would be great if this could be fixed in a future update, so that Renoise will perform the XML-to-data conversion when copying from internal text fields.
Improved access to the device properties would of course be preferable, but I’m guessing that will take a lot longer to implement? I’ve sort of hit a brick wall here with what I want to do, so it’s a little bit frustrating.