Show Expansion List
-
Back at it and now im venturing off to create a custom preset browser.
Here be dragons.
I looked around and saw that its possible to get a list of the current expansions in an array?
You need to create an expansion handler object and get familiar with its functions. In this case
getExpansionList
. The API browser will be your best friend.How would I go about making those expansions appear on column, with being able to add new expansions and being able to scroll up and down in that column to view all expansions?
First you need to decide what a column is. Is it a viewport list or is it a panel within a viewport, or is it something else? If it's a viewport list then you just add the items in the array to the list.
If it's a panel then you need to decide if you want to draw the items directly in the panel and use mouse callbacks, etc. or do you want to use child panels.
What is the purpose of the two section preset browser? Why not save yourself a ton of work and use the stock one? Is your custom solution really worth the effort?
-
@d-healey thanks for the info! The reason I’m planning on using two different “preset browsers” is that theres (I think) two parts to the plugin. The plugin is set on 3 main layer knobs. Each instrument made has 3 layers and for each instrument loaded up, the sample maps within the three sampler instances are changed. The user would be able to save their knob placements as a preset. Then the reason I had a second browser was that the three layer knobs can be swapped with other layers from other instruments. Mix and match. For example, one layer would be from instrument 1, the next layer would be one layer out of the three that instrument 2 has, and the last layer could be from another instrument. The user would save their own combos with the knob placements. There could also be some premade combos. What do you think are some ideas I could do to implement this into the default browser, one of the main reasons I opted for the custom solution was that i thought it could be more organized and customizable for future things to add like tag systems, or license authentication, but maybe there’s something I’m not thinking of! Thanks for responding and let me know if your thoughts!
-
If it was me I would clearly define the three samples/layers on the UI and add a drop down menu to select a sample map for each one.
I would use the stock preset system to store the state of the controls (including the sample map combo boxes).
The stock preset browser does have a tag system already. The UI side of it is a bit clunky from what I understand (I haven't used it). Although I'm working on a project now where tags would be useful so I might investigate it. I also think it would be good if the search box also made use of the tags.
-
@d-healey Yup, i see what you're going at, the only problem may be that the dropdown could get pretty bogged up with many entries so Im planning on making a popup box which shows all the sample maps as there respective layers. im going to try and rethink and see if what im planning on would work, thanks for the info!
-
@d-healey said in Show Expansion List:
The stock preset browser does have a tag system already. The UI side of it is a bit clunky from what I understand (I haven't used it). Although I'm working on a project now where tags would be useful so I might investigate it.
Here be dragons... I found the tag system in the preset browser very prone to crashing the plugin - so I built my own, but it then requires you to store tag meta data somewhere...
-
@Casmat You might want to checkout Mndala (https://www.mntra.io/) It uses 6 samplers/layers for which we built a separate sample map browser. It still uses the stock preset browser for presets.
-
@Lindon and you are using the stock preset browser, which supports the use of your tag solution?
-
@d-healey woah! You’re telling me this was created with hise? Gosh is HISE a cheat code. I still remember thinking of exploring the land of creating audio software from my clunky C++ knowledge using Juce by itself, not only does hise make it easier, it’s far efficient and faster to work with!
-
@Casmat said in Show Expansion List:
@Lindon and you are using the stock preset browser, which supports the use of your tag solution?
nope I use tags these days for sounds but I have returned to the stock.preset browser...
-
@Casmat said in Show Expansion List:
@d-healey woah! You’re telling me this was created with hise? Gosh is HISE a cheat code. I still remember thinking of exploring the land of creating audio software from my clunky C++ knowledge using Juce by itself, not only does hise make it easier, it’s far efficient and faster to work with!
Yes, it took a long time to build and we're still working on it.
-
@d-healey keep it up! Already turning out amazing! Will definitely take a look at it
-
@Casmat Actually I did the bulk of the work for the initial release but its in the capable hands of another developer now. I just help out now and again.