@d-healey I have one main xml file named like the project and smaller stripped down versions for testing. Once a plugin reaches a certain level of complexity I like to branch out and create a new one to test complex features in isolation.
I often also have a Waveform, Filter, Arp combo in one xml to test the audio and the scriptfx networks. So that I can click click click to have a good sounding working setup. I mainly work with FX Plugins.
I think having a prompt where we can just press enter or escape would be a very good compromise. I think this already exists when changing projects.
Here it is. Just add a panel to your UI and pass its ID to the function and the magic will happen. The function includes a broadcaster that watches the panel's enabled property and passes it along to the buttons, so disabling the panel will disable (and repaint) the buttons.
@Christoph-Hart Ok I almost solved it using one TransportHandler.
I have 1 question though, if I have the "internalClock" running all the time, it is not possible to via "setOnTransportChange" get a "isPlaying = false" because the internalClock is still running (and I want it to keep running)
Is it possible to get the Transport state another way then via the TransportHandler?
@aaronventure Honestly I would much rather like to have a button in HISE which reloads and compiles the project again. That way we could use our favourite IDE like Sublime or VScode with all the bells and whistles.
We could write our own plugins for HISE Script, save snippets, use prettier code formatting and even code with Github Copilot. Using the built in Editor in HISE can sometimes be really painful, jumping between files and tabs.
Also its really annoying if you make HISE crash with some written code and need to jump into a external editor to fix the code so that HISE launches again because it would not let you edit the code.
I am currently working on a Language Server Extension for HISE Script (similar to this project) so that we can use the super reliable auto completion of VSCode.
@obolig This actually created issues later down the road. The AAX plugins that resulted from this method were about 20X the size they should have been. I didn't realize this until I got to the signing stage of development. @gorangrooves informed me that the Runtime Library needs to be set to Multi-Threaded before you build the AAX SDK.
This results in HISE building AAX plugins by simply using the regular export method. No need to adjust settings in the VS projects created by HISE/JUCE.
Linkwitz-Riley filters are widely used in audio crossovers that have two outputs,
a low-pass and a high-pass, such that their sum is equivalent to an all-pass filter
with a flat magnitude frequency response. The Linkwitz-Riley filters available in
this class are designed to have a -24 dB/octave slope (LR 4th order).