Creating such an editor can be very complicated. The principle is easy, though. Create a notifier that holds your models, observe that notifier and draw the objects accordingly to the models, then modify the model based on the UI interaction.
Here's a model:
class Box {
Box({
required this.center,
required this.size,
required this.rotation,
required this.color,