Пример #1
0
        /// <summary>
        /// Selects a list of controls, and updates all views to reflect that selection
        /// </summary>
        /// <param name="control"></param>
        private void SelectControls(object source, GUIView view, List<GUIControl> controls)
        {
            mIgnoreSelectionChanges = true;
            {
                NotifyingList<GUIControl> selectedControls = new NotifyingList<GUIControl>(controls);

                // Set the current scene's selected control, as well as the properties and
                // the scene hierarchy
                SceneView sceneView = mDockPanel.ActiveDocument as SceneView;
                if (source != sceneView && sceneView != null && sceneView.ActiveView == view)
                {
                    sceneView.SelectedControls = selectedControls;
                }
                
                if (source != Globals.TimelineView)
                    Globals.TimelineView.SelectedControls = selectedControls;

                if (source != Globals.SceneHierarchyView)
                    Globals.SceneHierarchyView.SelectedControls = selectedControls;

                if (source != Globals.PropertiesView)
                    Globals.PropertiesView.PropertyGrid.SelectedObjects = selectedControls.ToArray();
            }
            mIgnoreSelectionChanges = false;
        }