No description
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
| rust-toolchain.toml | ||
おさん狐
a data binding library for bevy
Usage
#[derive(Component)]
pub struct DataSource(String);
let data_source = commands.spawn(DataSource(":3")).id();
let binding = ComponentBinding::new(|source: &DataSource, target: &mut Text| {
target.0 = source.0;
});
// spawn using components
let target = commands.spawn((
Text::new("hi! <33"),
BindingTarget(data_source),
binding
))
.id();
// or with commands
commands.spawn(Text::new("hi <33"))
.register_binding(data_source, binding);
// or with a system
let binding_system = BindingSystem::new(|entities: In<BoundEntities>, sources: Query<&DataSource>, Query<&mut Text>| {
todo!()
});
commands.register_binding(
data_source,
target,
binding_system
// type inference helper
.with_source::<DataSource>()
)