Example #1
0
        private void txtBox_Validating(object sender, System.ComponentModel.CancelEventArgs e)
        {
            var    box = (TextBox)sender;
            Single s   = 0;

            if (Single.TryParse(box.Text, NumberStyles.Number, FlummeryApplication.Culture, out s))
            {
                box.Text = s.ToString();
                box.Tag  = s;
            }
            else
            {
                box.Text = box.Tag.ToString();
            }

            switch (box.Name.Substring(0, box.Name.Length - 1).Replace("txt", ""))
            {
            case "Position":
                bone.SetPosition(txtPositionX.Text.ToSingle(), txtPositionY.Text.ToSingle(), txtPositionZ.Text.ToSingle(), rdoAbsolute.Checked);
                break;

            case "Rotation":
                bone.SetRotation(txtRotationX.Text.ToSingle(), txtRotationY.Text.ToSingle(), txtRotationZ.Text.ToSingle(), rdoAbsolute.Checked);
                break;

            case "Scale":
                Single divisor = (rdoAbsolute.Checked ? 1.0f : 100.0f);
                bone.SetScale(txtScaleX.Text.ToSingle() / divisor, txtScaleY.Text.ToSingle() / divisor, txtScaleZ.Text.ToSingle() / divisor, rdoAbsolute.Checked);
                break;
            }

            SceneManager.Current.Change(ChangeType.Transform, SceneManager.Current.SelectedBoneIndex);

            resetWidget();
        }