Deep-Symmetry / beat-link-trigger

Trigger events and automate shows in response to events on Pioneer CDJs
Eclipse Public License 2.0
438 stars 37 forks source link

Library cue wizards #157

Closed brunchboy closed 1 year ago

brunchboy commented 1 year ago

Is your feature request related to a problem? If so, please describe. There are a ton of mouse clicks required to set up a new cue that needs to use expressions to integrate with another system. Library cues can help with a lot of that, but often one or more expressions need to be tweaked to achieve the specific goals of individual cues. That still takes a lot of mouse clicks to configure and test.

Describe the solution or new capability you’d like See the discussion on Zulip for more details. The essential idea is to support a new kind of cue expression which, when present, will be used when adding that cue from a library. The expression would pop up a window with a simple form in it that could be used to type or pick the elements of the cue that vary from instance to instance, and would then generate the relevant expression source code based on the values chosen. There would probably also be an entry in the cue context menu that would re-run the wizard, to regenerate those expressions based on new values. If any exceptions occurred while trying to compile the expressions, the old values would be restored and the wizard window would stay open. Canceling the wizard window would cancel the creation of the library cue, or the update of an existing cue.

When creating a cue from such a library template, it should start out unlinked, because each such cue will differ from its library template.

Describe alternatives you've considered See the linked discussion. Also, #158 is a related but separate enhancement that could be helpful when initially setting up the template cue for such a library cue.

Current Beat Link Trigger Version 7.1.0-SNAPSHOT

brunchboy commented 1 year ago

The original use case I had for this turns out to be solvable with just some library folders, so I am dropping the priority for now until someone can come up with a more compelling need.