Exemplo n.º 1
0
 public TrackTreeViewContextMenu(TrackTreeView view)
 {
     _View = view;
     Skill.Editor.UI.MenuItem addItem = new Skill.Editor.UI.MenuItem("Add New Group");
     addItem.Click += AddItem_Click;
     Add(addItem);
 }
Exemplo n.º 2
0
            public TrackItemContextMenu(TrackTreeView view)
            {
                _View = view;

                _DeleteItem     = new Skill.Editor.UI.MenuItem("Delete");
                _EditCurvesItem = new Skill.Editor.UI.MenuItem("Edit Curves");

                Add(_DeleteItem);
                Add(_EditCurvesItem);

                _DeleteItem.Click     += _DeleteItem_Click;
                _EditCurvesItem.Click += _EditCurvesItem_Click;
            }
Exemplo n.º 3
0
            public TrackGroupContextMenu(TrackTreeView view)
            {
                _View = view;

                Skill.Editor.UI.MenuItem newTrack = new Skill.Editor.UI.MenuItem("New Track");
                var names  = System.Enum.GetNames(typeof(TrackType));
                var values = System.Enum.GetValues(typeof(TrackType));
                int index  = 0;

                foreach (var value in values)
                {
                    Skill.Editor.UI.MenuItem item = new Skill.Editor.UI.MenuItem(names[index])
                    {
                        UserData = value
                    };
                    item.Click += AddTrack_Click;
                    newTrack.Add(item);
                    index++;
                }


                Skill.Editor.UI.MenuItem addGroup = new Skill.Editor.UI.MenuItem("Add New Group");
                addGroup.Click += TrackGroupAdd_Click;

                Skill.Editor.UI.MenuItem deleteItem = new Skill.Editor.UI.MenuItem("Delete");
                deleteItem.Click += TrackGroupDelete_Click;

                Skill.Editor.UI.MenuItem propertiesItem = new Skill.Editor.UI.MenuItem("Properties");
                propertiesItem.Click += TrackGroupProperties_Click;

                Add(newTrack);
                AddSeparator();
                Add(addGroup);
                Add(deleteItem);
                AddSeparator();
                Add(propertiesItem);
            }
Exemplo n.º 4
0
        private void CreateUI()
        {
            _RefreshStyles = true;
            _Frame         = new EditorFrame("Frame", this)
            {
                Location = Skill.Framework.UI.FrameLocation.Fill
            };

            Skill.Framework.UI.DockPanel dockPanel = new Skill.Framework.UI.DockPanel()
            {
                LastChildFill = true
            };
            _Frame.Controls.Add(dockPanel);

            CreateMenuBar();
            CreateToolbar();

            dockPanel.Controls.Add(_MenuBar);      // add menu at top of window
            dockPanel.Controls.Add(_ToolbarPanel); // add toolbar at top of window under menu

            // grid for CurveEditor and Timeline
            _MainGrid = new Skill.Framework.UI.Grid();
            _MainGrid.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(1, GridUnitType.Star), MinHeight = 30
            });                                                     // _TimeLine

            _MainGrid.ColumnDefinitions.Add(1, GridUnitType.Star);  // _CurveTreeView, _TracksGrid
            _MainGrid.ColumnDefinitions.Add(4, GridUnitType.Pixel); // splitter
            _MainGrid.ColumnDefinitions.Add(2, GridUnitType.Star);  // _TimeLine  and _CurveEditor

            _CurveEditor = new Curve.CurveEditor()
            {
                Row = 0, Column = 2
            };
            _CurveEditor.TimeLine.TimeBar.ShowTimePosition = true;
            _CurveEditor.TimeLine.View.ShowTimePosition    = true;
            //_CurveEditor.TimeLine.MinTime = -0.1f;
            _MainGrid.Controls.Add(_CurveEditor);


            _CurveTrackTreeView = new CurveTrackTreeView(_CurveEditor)
            {
                Row = 0, Column = 0, Margin = new Thickness(0, 0, 0, 0)
            };
            _MainGrid.Controls.Add(_CurveTrackTreeView);

            _TimeLine = new TimeLine(new TrackBarView()
            {
                SideView = true
            })
            {
                Row = 0, Column = 2
            };
            _TimeLine.TimePositionChanged += _TimeLine_TimePositionChanged;

            _TracksTreeView = new TrackTreeView(this)
            {
                Row = 0, Column = 0, Margin = new Thickness(0, 0, 0, 0)
            };
            _MainGrid.Controls.Add(_TracksTreeView);

            // add splitter between (_TimeLine and _CurveEditor) and (_CurveTreeView, _TracksTreeView and _PropertyGrid)
            _VSplitter = new Skill.Editor.UI.GridSplitter()
            {
                Orientation = Orientation.Vertical, Row = 0, Column = 1, RowSpan = 3
            };
            _MainGrid.Controls.Add(_VSplitter);

            _MainGrid.Controls.Add(_TimeLine);

            // fill remaining area with mainGrid
            dockPanel.Controls.Add(_MainGrid);

            _CurveEditor.TimeLine.TimePositionChanged += CurveEditorTimeLine_PositionChanged;

            _CurveEditor.TimeLine.TimeBar.SnapTime = 0.001;
            _TimeLine.TimeBar.SnapTime             = 0.001;

            _TimeLine.View.VerticalScrollChanged           += View_VerticalScrollChanged;
            _TracksTreeView.TreeView.ScrollPositionChanged += TreeView_ScrollPositionChanged;

            SetLayout(0);
        }