Ejemplo n.º 1
0
            void mnuDelete_Click(object sender, System.EventArgs e)
            {
                AudioStateNode        node   = (AudioStateNode)Owner;
                AudioStateGraphEditor editor = Owner.FindInParents <AudioStateGraphEditor>();

                editor.RemoveNode(node);
            }
Ejemplo n.º 2
0
            void mnuSetAsDefault_Click(object sender, System.EventArgs e)
            {
                AudioStateNode        node   = (AudioStateNode)Owner;
                AudioStateGraphEditor editor = Owner.FindInParents <AudioStateGraphEditor>();

                editor.MakeAsDefaultState(node);
            }
Ejemplo n.º 3
0
            void mnuCreateTransition_Click(object sender, System.EventArgs e)
            {
                AudioStateNode        node   = (AudioStateNode)Owner;
                AudioStateGraphEditor editor = Owner.FindInParents <AudioStateGraphEditor>();

                editor.BeginConnection(node);
            }
Ejemplo n.º 4
0
 protected override void MouseDownEvent(MouseClickEventArgs args)
 {
     if (Start != null && args.Button == MouseButton.Left)
     {
         AudioStateGraphEditor editor = Start.FindInParents <AudioStateGraphEditor>();
         if (editor != null)
         {
             if (args.Ctrl)
             {
                 if (this.IsSelected)
                 {
                     editor.Selection.Remove(this);
                 }
                 else
                 {
                     editor.Selection.Add(this);
                 }
             }
             else if (args.Shift)
             {
                 if (!this.IsSelected)
                 {
                     editor.Selection.Add(this);
                 }
             }
             else
             {
                 editor.Selection.Select(this);
             }
             args.Handled = true;
         }
     }
     base.MouseDownEvent(args);
 }
Ejemplo n.º 5
0
 protected override void MouseDownEvent(MouseClickEventArgs args)
 {
     if (args.Button == MouseButton.Left)
     {
         AudioStateGraphEditor editor = _Node.FindInParents <AudioStateGraphEditor>();
         if (editor != null)
         {
             if (args.Ctrl)
             {
                 if (_Node.IsSelected)
                 {
                     editor.Selection.Remove(_Node);
                 }
                 else
                 {
                     editor.Selection.Add(_Node);
                 }
             }
             else if (args.Shift)
             {
                 if (!_Node.IsSelected)
                 {
                     editor.Selection.Add(_Node);
                 }
             }
             else
             {
                 editor.Selection.Select(_Node);
             }
         }
     }
     base.MouseDownEvent(args);
 }
Ejemplo n.º 6
0
                void _MnuBreak_Click(object sender, System.EventArgs e)
                {
                    AudioConnection       connection = (AudioConnection)Owner;
                    AudioStateGraphEditor editor     = Owner.FindInParents <AudioStateGraphEditor>();

                    editor.Break(connection);
                }
Ejemplo n.º 7
0
        private void CreateUI()
        {
            _Frame = new Skill.Editor.UI.EditorFrame("Frame", this);

            _Frame.Grid.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = new GridLength(1, GridUnitType.Star), MinWidth = 140
            });
            _Frame.Grid.ColumnDefinitions.Add(2, GridUnitType.Pixel);
            _Frame.Grid.ColumnDefinitions.Add(6, GridUnitType.Star);

            _VSplitter = new Skill.Editor.UI.GridSplitter()
            {
                Row = 0, Column = 1, Orientation = Orientation.Vertical
            };
            _Frame.Controls.Add(_VSplitter);

            _TriggerEditor = new AudioTriggerEditor(this)
            {
                Row = 0, Column = 0
            };
            _Frame.Controls.Add(_TriggerEditor);

            _GraphEditor = new AudioStateGraphEditor(this)
            {
                Row = 0, Column = 2
            };
            _Frame.Controls.Add(_GraphEditor);
        }
Ejemplo n.º 8
0
            public GraphContextMenu(AudioStateGraphEditor editor)
            {
                this._Editor = editor;

                Skill.Editor.UI.MenuItem munNew = new Skill.Editor.UI.MenuItem("New State");
                munNew.Click += munNew_Click;
                this.Add(munNew);
            }
Ejemplo n.º 9
0
            protected override void OnDrag(Vector2 delta)
            {
                AudioStateGraphEditor editor = _Node.FindInParents <AudioStateGraphEditor>();

                if (editor != null)
                {
                    editor.ItemDrag(_Node, delta);
                }
            }
Ejemplo n.º 10
0
 protected override void Render()
 {
     if (_Editor == null)
     {
         _Editor = FindInParents <AudioStateGraphEditor>();
     }
     ScaleFactor = _Editor._Panel.ZoomFactor;
     base.Render();
 }
Ejemplo n.º 11
0
            protected override void RefreshData()
            {
                base.RefreshData();

                if (_ClipField == null)
                {
                    foreach (var c in Controls)
                    {
                        if (_ClipField == null && c is Skill.Editor.UI.UntypedObjectField)
                        {
                            if (((Skill.Editor.UI.UntypedObjectField)c).ObjectType == typeof(AudioClip))
                            {
                                _ClipField = (Skill.Editor.UI.UntypedObjectField)c;
                                _ClipField.ObjectChanged += _ClipField_ObjectChanged;
                            }
                        }
                        else if (c is Skill.Editor.UI.FloatField)
                        {
                            Skill.Editor.UI.FloatField ff = (Skill.Editor.UI.FloatField)c;

                            if (ff.Label.text == "Start" || ff.Label.text == "End")
                            {
                                ff.ValueChanged += StartEnd_ValueChanged;
                            }
                        }
                    }
                }

                _BtnPreview.IsPressed = false;
                _BreakPointsEditor.RefreshData();
                _NextStateOptions.Options.Clear();
                AudioStateGraphEditor editor = _Node.FindInParents <AudioStateGraphEditor>();

                AudioStateNode[] states = editor.GetStates();

                Skill.Editor.UI.PopupOption noneOp = new Skill.Editor.UI.PopupOption(-1, " ");
                _NextStateOptions.Options.Add(noneOp);

                Skill.Editor.UI.PopupOption selectedOp = noneOp;
                for (int i = 0; i < states.Length; i++)
                {
                    if (states[i] == _Node)
                    {
                        continue;
                    }
                    Skill.Editor.UI.PopupOption op = new Skill.Editor.UI.PopupOption(i, states[i].StateName);
                    op.UserData = states[i];
                    if (states[i] == _Node.NextState)
                    {
                        selectedOp = op;
                    }
                    _NextStateOptions.Options.Add(op);
                }
                _NextStateOptions.SelectedOption = selectedOp;
            }
Ejemplo n.º 12
0
            void _BtnPreview_Changed(object sender, System.EventArgs e)
            {
                AudioStateGraphEditor editor = _Node.FindInParents <AudioStateGraphEditor>();

                if (editor != null)
                {
                    if (!_BtnPreview.IsPressed)
                    {
                        editor.StartPreview(this, _Node.State.Clip, _Node.State.Begin, _Node.State.End);
                    }
                    else
                    {
                        editor.StopPreview();
                    }
                }
            }
Ejemplo n.º 13
0
                protected override void RefreshData()
                {
                    base.RefreshData();
                    string triggerName = ((AudioConnection)Object).Transition.Trigger;

                    _Triggers.Options.Clear();

                    AudioStateGraphEditor editor = ((AudioConnection)Object).FindInParents <AudioStateGraphEditor>();

                    if (editor._Editor.Controller.Triggers != null)
                    {
                        Skill.Editor.UI.PopupOption selectedOp = null;
                        for (int i = 0; i < editor._Editor.Controller.Triggers.Length; i++)
                        {
                            Skill.Editor.UI.PopupOption op = new Skill.Editor.UI.PopupOption(i, editor._Editor.Controller.Triggers[i]);
                            _Triggers.Options.Add(op);

                            if (editor._Editor.Controller.Triggers[i] == triggerName)
                            {
                                selectedOp = op;
                            }
                        }

                        _Triggers.SelectedOption = selectedOp;
                        if (selectedOp != null)
                        {
                            ((AudioConnection)Object).Transition.Trigger = selectedOp.Content.text;
                        }
                        else
                        {
                            ((AudioConnection)Object).Transition.Trigger = string.Empty;
                        }
                    }
                    else
                    {
                        ((AudioConnection)Object).Transition.Trigger = string.Empty;
                    }
                }
Ejemplo n.º 14
0
 public AudioConnectionHost(AudioStateGraphEditor editor)
 {
     _Editor = editor;
 }