sowbug / groove

A digital audio workstation (DAW) engine.
Other
12 stars 0 forks source link

Think about Displays trait as a requirement for Things/Entities #149

Open sowbug opened 9 months ago

sowbug commented 9 months ago

There are Things that are required to implement Displays, but aren't actually supposed to be called that way. Either these aren't real Things, or the trait shouldn't be a requirement of a Thing.

Things do need a trait for getting drawn, because we otherwise can't keep track of which widget corresponds to each type. So I don't think we can just drop the requirement.

Maybe there are two kinds of Things: ones that are always going to be created by EntityFactory, so that we'll never know their concrete type, and others that happen to implement various traits that Things also implement.

sowbug commented 9 months ago

Per notes from 4e78ffc47f0d5e90d23031286ee81741743c5b0b, I'm deferring this. It might be a YAGNI situation.