private void EntityPositionTextBox_TextChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            Vector3 v = FloatUtil.ParseVector3String(EntityPositionTextBox.Text);

            lock (ProjectForm.ProjectSyncRoot)
            {
                if (CurrentEntity.MloParent != null)
                {
                    v = CurrentEntity.MloParent.Position + CurrentEntity.MloParent.Orientation.Multiply(v);
                    CurrentEntity.SetPosition(v);
                    ProjectItemChanged();
                }
                else
                {
                    if (CurrentEntity.Position != v)
                    {
                        CurrentEntity.SetPosition(v);
                        ProjectItemChanged();
                        var wf = ProjectForm.WorldForm;
                        if (wf != null)
                        {
                            wf.BeginInvoke(new Action(() =>
                            {
                                wf.SetWidgetPosition(CurrentEntity.WidgetPosition, true);
                            }));
                        }
                    }
                }
            }
        }