Well, I’ve decided to take a different approach, but in this case I was trying to use the parameters menu to change the crow input event handlers. So I have something like:
params:add_option('crow_input1', 'crow input 1', {'reverse', 'hold', 'clock'}, 1)
params:add_option('crow_input2', 'crow input 2', {'reverse', 'hold', 'clock'}, 2)
and then the crow change events will behave differently depending on which option is selected.
I know I could check if crow_input1 is set to a given option, and then prevent crow_input2 from doing anything if it is set to the same option, but my question is if there is an easy way to literally remove that option from the list in the parameters menu for crow_input2 if it is selected for crow_input1, so it is impossible for the user to select it, and then add it back once it is deselected.
I was imagining calling something like params:update_option('crow_input1', newOptions) (which I know doesn’t exist in the current paramset API)
I’m likely overcomplicating things though, and I suppose I don’t really need to do this if I just do a similar check to what you wrote above.
I also decided I can just have both inputs use different sets of options if I don’t want them to be set to the same things, but I can imagine other use cases where the behavior I’m describing might be desirable, like having multiple modulation sources with configurable destinations where you may always want a 1-to-1 src -> destination relationship