public void Create_Controls(int width = 0) { Width = width > 0 ? width : Width; mainGRBO.Controls.Clear(); int yGap = 2; int width_padded = mainGRBO.Width - 2 * Padding_X; int ySize = (mainGRBO.Height - 2 * Padding_Y - 2 * yGap) / 3; int y = Padding_Y; propertyLayers[0] = new xyzLayer("Position", Transform.Position); propertyLayers[0].Draw(mainGRBO, Padding_X, y, width_padded, ySize); propertyLayers[0].Value_Changed += _position_Value_Changed; y += ySize + yGap; propertyLayers[1] = new xyzLayer("Rotation", Transform.Rotation); propertyLayers[1].Draw(mainGRBO, Padding_X, y, width_padded, ySize); propertyLayers[1].Value_Changed += _rotation_Value_Changed; y += ySize + yGap; propertyLayers[2] = new xyzLayer("Scale", Transform.Scale); propertyLayers[2].Draw(mainGRBO, Padding_X, y, width_padded, ySize); propertyLayers[2].Value_Changed += _scale_Value_Changed; }
private void _scale_Value_Changed(object sender, EventArgs e) { xyzLayer _sender = (xyzLayer)sender; for (int i = 0; i < _sender.xyzTEBO.Length; i++) { if (float.TryParse(_sender.xyzTEBO[i].Text, out float parsed)) { Transform.Scale.Values[i] = float.Parse(_sender.xyzTEBO[i].Text); } else if (_sender.xyzTEBO[i].Text != "") { _sender.xyzTEBO[i].Text = Transform.Position.Values[i].ToString(); } } }