• Branislav Katreniak's avatar
    wip view/device-config: introduce value with form annotations · 509685fa
    Branislav Katreniak authored
    src/view/device-config.capnp:
    
    `Value` struct type that is loaded, edited submitted by configurator UI.
    
    `Args` struct type that provides context for value editor:
    * parameterizes UI for given device (like model features).
    * runtime values that are not edited, but needed by UI.
    
    $form annotations specifying rules for value editing.
    
    src/view/device-config.capnp.html:
    
    Generated html value editing UI generated
    from information in .capnp file based on angularjs.
    
    Current code is aimed to be generic for all devices we intend to edit
    by the generic configurator. But only UMR200 input devices
    are fully covered.
    
    TODO for UMR200 input devices:
    
    * alert on 1st application change if device is in a group.
    * merge clusters into pushButtonTarget combo box.
        The idea is to do this in higher view layer and keep value struct as is.
        Merging these 2 together in value struct would break current type safety.
    * split values into standard, advances and blink tabs
        The idea is to do this in higher view layer and keep value struct as is.
    509685fa