示例#1
0
 private void ProjectManager_ElementPropertyChanged(object sender, ElementValueChangedEventArgs e)
 {
     if (e.Element is PartProperties &&
         (e.PropertyName == nameof(PartProperties.ID) || e.PropertyName == nameof(PartProperties.Description))
         )
     {
         UpdateWindowTitle();
     }
 }
示例#2
0
 private void ClonePattern_PropertyChanged(object sender, ElementValueChangedEventArgs e)
 {
     if (e.PropertyName == nameof(LinearPattern.Direction) ||
         e.PropertyName == nameof(CircularPattern.Axis) ||
         e.PropertyName == nameof(CircularPattern.Origin))
     {
         InitTranform();
     }
 }
示例#3
0
        protected override void OnElementPropertyChanged(ElementValueChangedEventArgs e)
        {
            base.OnElementPropertyChanged(e);

            if (e.PropertyName == nameof(PartBoxCollision.Size) ||
                e.PropertyName == nameof(PartSphereCollision.Radius))
            {
                UpdateScaleTransform();
            }
        }
示例#4
0
        private void Element_PropertyChanged(object sender, ElementValueChangedEventArgs e)
        {
            if (e.PropertyName == nameof(IPhysicalElement.Transform))
            {
                if (!IsApplyingTransform)
                {
                    SetTransformFromElement();
                }
            }

            OnElementPropertyChanged(e);
        }
示例#5
0
 protected override void OnElementPropertyChanged(ElementValueChangedEventArgs e)
 {
     base.OnElementPropertyChanged(e);
     if (e.PropertyName == nameof(PartBone.Bounding))
     {
         UpdateBoundingBox();
     }
     else if (e.PropertyName == nameof(PartBone.TargetBoneID))
     {
         IsLengthDirty = true;
     }
 }
示例#6
0
 protected override void OnElementPropertyChanged(ElementValueChangedEventArgs e)
 {
     base.OnElementPropertyChanged(e);
     if (e.PropertyName == nameof(PartElement.Name))
     {
         if (InvokeRequired)
         {
             BeginInvoke((Action)(() => RefreshElementName(e.Element)));
         }
         else
         {
             RefreshElementName(e.Element);
         }
     }
 }
示例#7
0
        protected override void OnElementPropertyChanged(ElementValueChangedEventArgs e)
        {
            base.OnElementPropertyChanged(e);

            if (e.PropertyName == nameof(PartElement.Name))
            {
                if (ProjectManager.IsExecutingBatchChanges)
                {
                    return;
                }
                BeginInvokeOnce(() => RefreshElementName(e.Element), nameof(RefreshElementName));
                //ExecuteOnThread(() => RefreshElementName(e.Element));
            }
            else if (e.PropertyName == nameof(PartProperties.Flexible) && e.Element is PartProperties)
            {
                BeginInvokeOnce(() => RebuildNavigation(true), nameof(RebuildNavigation));
                //ExecuteOnThread(() => RebuildNavigation(true));
            }
        }
示例#8
0
        private void SelectedElement_PropertyChanged(object sender, ElementValueChangedEventArgs e)
        {
            if (InvokeRequired)
            {
                BeginInvoke((Action)(() =>
                {
                    SelectedElement_PropertyChanged(sender, e);
                }));
                return;
            }

            using (FlagManager.UseFlag(nameof(SelectedElement_PropertyChanged)))
            {
                if (e.PropertyName == nameof(PartConnection.SubType) && SelectedElement != null)
                {
                    SetSubTypeComboValue(SelectedElement.SubType);
                }

                if (e.PropertyName == nameof(BallConnector.FlexAttributes) && SelectedElement != null)
                {
                    FillFlexValues();
                }

                foreach (Control ctrl in GetAllEditControl())
                {
                    var binding = ctrl.DataBindings[0];

                    if (binding.DataSource == e.Element &&
                        binding.BindingMemberInfo.BindingMember == e.PropertyName)
                    {
                        binding.ReadValue();
                        break;
                    }
                }

                if (e.PropertyName == nameof(SliderConnector.Spring))
                {
                    UpdateSliderSpringValue();
                }
            }
        }
示例#9
0
 private void SelectedElement_PropertyChanged(object sender, ElementValueChangedEventArgs e)
 {
     ExecuteOnThread(() =>
     {
         using (FlagManager.UseFlag("UpdatePropertyValue"))
         {
             if (e.PropertyName == nameof(PartElement.Name))
             {
                 NameTextBox.Text = e.Element.Name;
             }
             if (e.PropertyName == nameof(PartSphereCollision.Radius))
             {
                 CollisionRadiusBox.Value = (e.Element as PartSphereCollision).Radius;
             }
             else if (e.PropertyName == nameof(PartBoxCollision.Size) && e.Element is PartBoxCollision boxColl)
             {
                 CollisionSizeEditor.Value = boxColl.Size * 2d;
             }
         }
     });
 }
示例#10
0
 protected virtual void OnElementPropertyChanged(ElementValueChangedEventArgs e)
 {
 }
示例#11
0
 public PropertyChangeAction(ElementValueChangedEventArgs data)
 {
     Data = data;
 }
示例#12
0
 private void ProjectManager_ElementPropertyChanged(object sender, ElementValueChangedEventArgs e)
 {
     OnElementPropertyChanged(e);
 }
示例#13
0
 private void Project_ElementPropertyChanged(object sender, ElementValueChangedEventArgs e)
 {
     ElementPropertyChanged?.Invoke(this, e);
     UndoRedoManager.ProcessElementPropertyChanged(e);
 }