示例#1
0
 public static void DeRegisterHierarchyControl(HierarchyControl hc)
 {
     selectionInfo.Remove(hc);
     if (!hc.IsFolder)
     {
         gObjToControlLookup.Remove(hc.myGameObject);
     }
 }
示例#2
0
 public static bool RequestAdditiveSelectDeselect(HierarchyControl hc, GameObject gobj)
 {
     if (EngineManagerViewModel.instance.SelectedGameObjects.Contains(gobj))
     {
         RequestUnSelect(hc, gobj);
         return(false);
     }
     RequestAdditiveSelect(hc, gobj);
     return(true);
 }
示例#3
0
    public static void RequestRangeSelect(MochaEditorControls.HierarchyControl hierarchyControl, GameObject gameObject)
    {
        HierarchyControl source_parent = hierarchyControl.ParentHierarchyControl;

        if (source_parent == null)
        {
            return;
        }

        GameObjectSelectionManager.RequestRangeSelect(gameObject, source_parent.Children);
    }
示例#4
0
 public static void Select(HierarchyControl hc, bool deselectOthers = true)
 {
     if (deselectOthers)
     {
         foreach (var hier in currentlySelected)
         {
             hier.IsSelected = false;
         }
         currentlySelected.Clear();
     }
     Set(hc, true);
 }
示例#5
0
 static void Set(HierarchyControl hc, bool isselected)
 {
     hc.IsSelected = isselected;
     if (isselected)
     {
         currentlySelected.Add(hc);
     }
     else
     {
         currentlySelected.Remove(hc);
     }
 }
示例#6
0
        private void MainThreadInitialization()
        {
            Dte = GetService(typeof(DTE)) as DTE2;
            var solutionExplorerControl = new HierarchyControl(this, _logger);

            _commandProcessor = new CommandProcessor(solutionExplorerControl, _logger);

            _keyDispatcher = new ConditionalKeyDispatcher(
                new SolutionExplorerDispatchCondition(solutionExplorerControl, _logger),
                new KeyDispatcher(_commandProcessor),
                _logger);
        }
示例#7
0
        private async System.Threading.Tasks.Task MainThreadInitializationAsync()
        {
            Dte = await GetServiceAsync(typeof(_DTE)) as DTE2;

            var solutionExplorerControl = new HierarchyControl(this, _logger);

            _commandProcessor = new CommandProcessor(solutionExplorerControl, _logger);

            _keyDispatcher = new ConditionalKeyDispatcher(
                new SolutionExplorerDispatchCondition(solutionExplorerControl, _logger),
                new KeyDispatcher(_commandProcessor),
                _logger);
        }
示例#8
0
 public static void RegisterHierarchyControl(HierarchyControl hc)
 {
     selectionInfo.Add(hc);
     try
     {
         if (!hc.IsFolder)
         {
             gObjToControlLookup.Add(hc.myGameObject, hc);
         }
     }catch (ArgumentException e)
     {
         Logger.Log("Hierarchy Control Error: " + e.Message + " Loaded/Unloaded Faulty - Tell Fuller.");
     }
 }
示例#9
0
        public static void RequestRemoval(GameObject g)
        {
            if (!gObjToControlLookup.ContainsKey(g))
            {
                return;
            }
            HierarchyControl hc = gObjToControlLookup[g];

            if (hc.ParentHierarchyControl != null)
            {
                hc.ParentHierarchyControl.IntermediateSource.Remove(g);
            }
            DeRegisterHierarchyControl(hc);
        }
示例#10
0
 public static void RequestUnSelect(HierarchyControl hc, GameObject gobj)
 {
     GameObjectSelectionManager.RequestUnSelect(gobj);
     HierarchyControlStateManager.UnSelect(hc);
 }
示例#11
0
 public static void RequestAdditiveSelect(HierarchyControl hc, GameObject gobj)
 {
     GameObjectSelectionManager.RequestAdditiveSelect(gobj);
     HierarchyControlStateManager.Select(hc, false);
 }
示例#12
0
 public static void RequestSelect(HierarchyControl hc, GameObject gobj)
 {
     GameObjectSelectionManager.RequestSelect(gobj);
     HierarchyControlStateManager.Select(hc, true);
     hc.BringIntoView();
 }
示例#13
0
 public static void UnSelect(HierarchyControl hc)
 {
     Set(hc, false);
 }