Skip to content

menu design

brian crabtree edited this page Oct 18, 2019 · 1 revision

notes ahead of a redesign of the menu system (which also includes state and interface management)

basic requirements

script loading

  • clear lua state
  • check script syntax
  • conditionally load engine. wait for engine success, run init() (or run init() if no engine)

script state

  • store last run script
  • run last script at startup

interface state

menu navigation

  • pages, scrolling
  • text entry
  • list selection
  • file selection

params

  • audio params
  • script params
  • (groups)
  • (navigation helpers)
  • saving/loading files
  • mapping interface:
    • midi (absolute vs. incremental. channel. ranges. port settings.)
    • osc (automatic?)
  • (global clock)

interface

  • SELECT scripts and preview text

    • (starred scripts view)
  • SYSTEM

    • (AUDIO -- move to params)
    • DEVICES (midi, grid, arc, hid)
    • WIFI
    • RESET
    • UPDATE
  • sysinfo: battery %, current draw, cpu %, temp, disk free, ip address, current version, current script

  • SLEEP

  • TAPE

    • play, rec, (file management?)
  • mixer: vu's, faders