Re-engineering Cantabile's Bindings Framework

Web UI and StreamDeck plugin are working again without changes (due to net api compatibility endpoint).

Almost there… biggest job now is a bit of UI rework as I’m not happy with it embedded in the main window. I’m going to try moving all the binding properties to a popup window - kind of like when editing MIDI route settings.

8 Likes

Happy to see point 3 above!

Well done, Brad. It sounds like light is now streaming in from the end of this tunnel.

2 Likes

Much happier with the UI now:

  • moved the binding editor to a separate window rather than embedded at the bottom of the binding panel as it took up too much room there.
  • duplicated the enabled/bidi/schedule/test and comments fields from the main slot into the binding editor window. Now everything to do with a binding can be edited in one place.
  • changed from single click to double click to bring up the binding editor. It was a bit hard to mouse navigate in the binding list with single click (basically clicking anywhere showed the editor).
  • re-ordered the columns from “Source->Mapping->Target” to “Source->Target->Mapping”. Even though logically the first order makes more sense, you need to configure the target before the mapping so the new order works better in practice.
  • made the curve display a popup while editing the value as is was taking too much room when shown inline.
  • more prominent display of binding errors

10 Likes

That looks fantastic. I always found editing bindings fiddly. This looks so much cleaner and more intuitive.

Neil

2 Likes

Just quick update… I’m still working on this.

Pretty much finished but there are hundreds of binding points and mapping modes and I’m determined to test them all. Unfortunately it’s not conducive to automated testing so I’m manually going through them one by one.

6 Likes

I saw the checkboxes disappearing at Trello, down to the last one! I’m excited about the new bindings, they are looking a lot less like Edith’s house and maybe more like this cyclic spiraling abode … :grin: I really appreciate the size of this task Brad, great work!

image

1 Like

Yep (but it might have Edith’s garden shed out the back :slight_smile: )

1 Like

Going through the backlog and decided to keep the old name and add new names.

Old names for compatibility: $(SongPart) $(SongPartCount)

New names for consistency with other variables: $(StateIndex) $(StateCount)

(Will be in the next build, not sure when)

3 Likes