@JL-LV They are using the PolyBlep algorithm to reduce aliasing, but I'm sure there are more advanced techniques out there. However this is reasonably good for my taste so if you need better quality you need to roll your own oscillators.
@d-healey It's just a simple call to JUCE's repaint() method that causes the UI element to repaint. The difference to the ScriptPanel.repaint() function is that this one will cause the scripted paint routine to be evaluated again.
You're most likely need it if you're using custom LAF that use external data to paint some components so when you change that data you can call the sendRepaintMessage() function - otherwise you would have to do some hacks like changing the width by a pixel or something to trigger a repainting.