widget ViewportControls { layout = HBox; [hexpand hfill] new VBox { new Label { text = "zoom"; fontSize = 10; } new FloatInputSpinner zoom; } [hexpand hfill] new VBox { new Label { text = "x offset"; fontSize = 10; } new FloatInputSpinner xoff; } [hexpand hfill] new VBox { new Label { text = "y offset"; fontSize = 10; } new FloatInputSpinner yoff; } [hexpand hfill] new VBox { new Label { text = "z offset"; fontSize = 10; } new FloatInputSpinner zoff; } zoom = prop(zoom.value); x = prop(xoff.value); y = prop(yoff.value); z = prop(zoff.value); }