コード例 #1
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;
 }
コード例 #2
0
        //Add to object and to children visually
        public void Virtual_AddChild(HierarchyControl child)
        {
            if (child.GetDataContext() == null)
            {
                return;
            }
            GameObject child_obj = child.GetDataContext();

            Virtual_AddChild(child_obj);
        }
コード例 #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
        void RecomputePanelColor()
        {
            int depth             = 0;
            HierarchyControl iter = this;

            while (iter != null)
            {
                iter = iter.ParentHierarchyControl;
                depth++;
            }
            byte c = (byte)Math.Abs(0 + (float)depth * 10.0f);

            PanelColor = new SolidColorBrush(Color.FromArgb(c, (byte)0, (byte)0, (byte)0));
        }
コード例 #5
0
        //Detach the object visually
        public void Virtual_DetachChild(HierarchyControl child)
        {
            if (child.GetDataContext() == null)
            {
                return;
            }
            if (Children == null)
            {
                Children = new ObservableCollection <GameObject>();
            }
            GameObject child_obj = child.GetDataContext();

            IntermediateSource.Add(child_obj);
            EditorSubsystemManaged.getInstance().QueueAction(new Action(() =>
            {
                child_obj.transform.SetParent(null);
            }));
        }
コード例 #6
0
 public static void RequestSelect(HierarchyControl hc, GameObject gobj)
 {
     GameObjectSelectionManager.RequestSelect(gobj);
     HierarchyControlStateManager.Select(hc, true);
     hc.BringIntoView();
 }
コード例 #7
0
 public static void RequestAdditiveSelect(HierarchyControl hc, GameObject gobj)
 {
     GameObjectSelectionManager.RequestAdditiveSelect(gobj);
     HierarchyControlStateManager.Select(hc, false);
 }
コード例 #8
0
 static void Set(HierarchyControl hc, bool isselected)
 {
     hc.IsSelected = isselected;
     if (isselected)
         currentlySelected.Add(hc);
     else
         currentlySelected.Remove(hc);
 }
コード例 #9
0
 public static void UnSelect(HierarchyControl hc)
 {
     Set(hc, false);
 }
コード例 #10
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);
 }
コード例 #11
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.");
     }
 }
コード例 #12
0
 public static void DeRegisterHierarchyControl(HierarchyControl hc)
 {
     selectionInfo.Remove(hc);
     if (!hc.IsFolder)
         gObjToControlLookup.Remove(hc.myGameObject);
 }
コード例 #13
0
 public static void RequestUnSelect(HierarchyControl hc, GameObject gobj)
 {
     GameObjectSelectionManager.RequestUnSelect(gobj);
     HierarchyControlStateManager.UnSelect(hc);
 }
コード例 #14
0
 //Detach the object visually
 public void Virtual_DetachChild(HierarchyControl child)
 {
     if (child.GetDataContext() == null)
         return;
     if (Children == null)
         Children = new ObservableCollection<GameObject>();
     GameObject child_obj = child.GetDataContext();
     IntermediateSource.Add(child_obj);
     EditorSubsystemManaged.getInstance().QueueAction(new Action(() =>
     {
         child_obj.transform.SetParent(null);
     }));
 }
コード例 #15
0
 //Add to object and to children visually
 public void Virtual_AddChild(HierarchyControl child)
 {
     if (child.GetDataContext() == null)
         return;
     GameObject child_obj = child.GetDataContext();
     Virtual_AddChild(child_obj);
 }
コード例 #16
0
        private static object IsSelectedCoerceCallback(DependencyObject d, object baseValue)
        {
            HierarchyControl hc = d as HierarchyControl;

            return(baseValue);
        }