示例#1
0
        private void CurrentValue_Validating(object sender, CancelEventArgs e)
        {
            if (initializing || CurrentValue.Text == Language.GetLocalizedText(1351, "Multiple") || dirtyEdit == false)
            {
                return;
            }
            bool failed = false;

            double newValue = UiTools.ParseAndValidateDouble(CurrentValue, propValue, ref failed);

            if (newValue != propValue && !failed)
            {
                if (keys != null)
                {
                    Undo.Push(new UndoTourStopChange(Language.GetLocalizedText(1352, "Key Properties Edit"), Earth3d.MainWindow.TourEdit.Tour));
                    foreach (VisibleKey vk in keys.Values)
                    {
                        Key key = vk.Target.GetKey(vk.ParameterIndex, vk.Time);
                        if (key != null)
                        {
                            key.Value = newValue;
                        }
                    }
                }
                TimeLine.RefreshUi(false);
                RefreshTween();
            }
        }
示例#2
0
        private void keyType_SelectionChanged(object sender, EventArgs e)
        {
            if (initializing)
            {
                return;
            }
            Key.KeyType type = (Key.KeyType)Enum.Parse(typeof(Key.KeyType), keyType.SelectedItem.ToString());

            curveEditor1.CurveType = type;

            if (keys != null)
            {
                Undo.Push(new UndoTourStopChange(Language.GetLocalizedText(1352, "Key Properties Edit"), Earth3d.MainWindow.TourEdit.Tour));
                foreach (VisibleKey vk in keys.Values)
                {
                    Key key = vk.Target.GetKey(vk.ParameterIndex, vk.Time);
                    if (key != null)
                    {
                        key.InFunction = type;
                        key.P1         = curveEditor1.P1;
                        key.P2         = curveEditor1.P2;
                        key.P3         = curveEditor1.P3;
                        key.P4         = curveEditor1.P4;
                    }
                }
                TimeLine.RefreshUi(false);
                RefreshTween();
            }
        }
示例#3
0
 public static void UpdateOverlayList(TourStop tourStop, Selection selection)
 {
     if (master != null)
     {
         master.ItemList.Nodes.Clear();
         if (tourStop != null)
         {
             foreach (Overlay overlay in tourStop.Overlays)
             {
                 TreeNode item = new TreeNode(overlay.Name);
                 item.Tag     = overlay;
                 item.Checked = selection.IsOverlaySelected(overlay);
                 master.ItemList.Nodes.Add(item);
             }
         }
     }
     // Hack to update Keyframer UI
     TimeLine.RefreshUi();
 }
示例#4
0
        private void Time_Validating(object sender, CancelEventArgs e)
        {
            if (initializing || Time.Text == Language.GetLocalizedText(1351, "Multiple") || dirtyEdit == false)
            {
                return;
            }


            double newValue = ParseTime(Time.Text);

            if (newValue == -1)
            {
                Time.BackColor = Color.Red;
            }
            else
            {
                Time.BackColor = UiTools.TextBackground;
            }

            if (newValue != propTime)
            {
                if (keys != null)
                {
                    Undo.Push(new UndoTourStopChange(Language.GetLocalizedText(1352, "Key Properties Edit"), Earth3d.MainWindow.TourEdit.Tour));
                    foreach (VisibleKey vk in keys.Values)
                    {
                        Key key = vk.Target.GetKey(vk.ParameterIndex, vk.Time);
                        if (key != null)
                        {
                            vk.Target.MoveKey(vk.ParameterIndex, vk.Time, newValue);
                        }
                    }
                }
                TimeLine.RefreshUi(false);
                RefreshTween();
            }
        }