Unifies the interface elements for measuring and constraining real-valued observables, as proposed in issue #47. The resulting combination is called a "Regulator," at least in the code. They are presented as text inputs in the table view. When a Regulatore is in measurement mode (has no "set point"), the text field displays its value. Entering a desired value into the text field creates a set point, and then the Regulator acts to (attempt to) constrain the value. Setting the desired value to the empty string switches the observable back to measurement mode. If you enter a desired value that can't be parsed as a floating point number, the regulator input is flagged as invalid and it has no effect on the state of the regulator. The set point can in this case be restored to its previous value (or to no set point if that was its prior state) by pressing the "Esc" key. Co-authored-by: Aaron Fenyes <aaron.fenyes@fareycircles.ooo> Co-authored-by: glen <glen@studioinfinity.org> Reviewed-on: glen/dyna3#48 Co-authored-by: Vectornaut <vectornaut@nobody@nowhere.net> Co-committed-by: Vectornaut <vectornaut@nobody@nowhere.net>
52 lines
1.3 KiB
TOML
52 lines
1.3 KiB
TOML
[package]
|
|
name = "dyna3"
|
|
version = "0.1.0"
|
|
authors = ["Aaron Fenyes", "Glen Whitney"]
|
|
edition = "2021"
|
|
|
|
[features]
|
|
default = ["console_error_panic_hook"]
|
|
dev = []
|
|
|
|
[dependencies]
|
|
itertools = "0.13.0"
|
|
js-sys = "0.3.70"
|
|
lazy_static = "1.5.0"
|
|
nalgebra = "0.33.0"
|
|
readonly = "0.2.12"
|
|
rustc-hash = "2.0.0"
|
|
slab = "0.4.9"
|
|
sycamore = "0.9.0-beta.3"
|
|
|
|
# The `console_error_panic_hook` crate provides better debugging of panics by
|
|
# logging them with `console.error`. This is great for development, but requires
|
|
# all the `std::fmt` and `std::panicking` infrastructure, so isn't great for
|
|
# code size when deploying.
|
|
console_error_panic_hook = { version = "0.1.7", optional = true }
|
|
|
|
[dependencies.web-sys]
|
|
version = "0.3.69"
|
|
features = [
|
|
'DomRect',
|
|
'HtmlCanvasElement',
|
|
'HtmlInputElement',
|
|
'Performance',
|
|
'WebGl2RenderingContext',
|
|
'WebGlBuffer',
|
|
'WebGlProgram',
|
|
'WebGlShader',
|
|
'WebGlUniformLocation',
|
|
'WebGlVertexArrayObject'
|
|
]
|
|
|
|
# the self-dependency specifies features to use for tests and examples
|
|
#
|
|
# https://github.com/rust-lang/cargo/issues/2911#issuecomment-1483256987
|
|
#
|
|
[dev-dependencies]
|
|
dyna3 = { path = ".", default-features = false, features = ["dev"] }
|
|
wasm-bindgen-test = "0.3.34"
|
|
|
|
[profile.release]
|
|
opt-level = "s" # optimize for small code size
|
|
debug = true # include debug symbols
|