@Christoph-Hart Ohh, awesome, that works fine. You can also specify the slot that way.
Content.makeFrontInterface(600, 600);
const var rm = Engine.getGlobalRoutingManager();
const var cable = rm.getCable("Slot_01");
const var value = cable.getValue();
Console.print(value);
@Lindon Yes, unless they use certain things which prevent compilation:
global cables
modulator slots
changes to the DSP network using the scripting API
I think there are a few more edge cases, but these are the most important ones. If none of them apply, then you should export the scriptnode network as dll and use the hardcoded modules instead, this bypasses the entire scriptnode data management with its additional data layer and API access.
Ok thanks - good guidance, in passing... what are "modulator slots" here?
@d-healey I was watching it than I started 'getting creative' to see what I can do... and that's where I got in trouble... I used to write javascript and AS2 and AS3 for flash... there is some familiar things going on and it's been awhile...
Trust me you don't want a single knob. This creates many issues with preset restoring / automation if the order of the sync knob and the button is not in the correct order etc.
What I'm usually doing is to have two knobs at the same position and just swap the visible property to show only one of them.
@Lindon yes but there's no way of knowing where they are until dir is defined. which is the same function as the download. Can you think of a way of separating these? I'm trying with a timer.... ...... ok hang on... just exported it and the behaviour is different to within Hise and I thiiiink it might work with what I posted above after all... which would be nice!
Yes now that you mention it, it definitely improves the interprocess abilities. Not sure what happens if you use the same port for input / output, but if you're brave you can find it out yourself.
Edit: Added a failsafe rule to reset the panel size if it falls outside of the set perimeters and stops the timer, as on subsequent script recompiles, the panel can keep shifting position until it is outside of the interface and can not show up.