Exemple #1
0
        public override void Unload()
        {
            m_WorldManager = null;

            m_WorldChangeTracker.Dispose();
            m_WorldChangeTracker = null;
        }
        public EntityInspectorElement(Session session, NativeList <Entity> targets)
        {
            m_Session       = session;
            m_Targets       = targets;
            m_Components    = new List <IComponentDataElement>();
            m_WorldManager  = m_Session.GetManager <IWorldManagerInternal>();
            m_ChangeManager = m_Session.GetManager <IChangeManager>();

            var entityManager = m_Session.GetManager <IWorldManager>().EntityManager;

            var firstTarget = m_Targets[0];
            var container   = new EntityContainer(entityManager, firstTarget);

            var visitor = new InspectorVisitor <Entity>(m_Session, m_Targets);

            visitor.AddAdapter(new EntityContainerAdapter(visitor));
            visitor.AddAdapter(new PrimitivesAdapter <Entity>(visitor));

            visitor.Context.PushParent(this);

            StronglyTypedVisit(visitor, ref container);

            m_EntityHeader = this.Q <EntityHeaderElement>();
            m_Components   = Children().OfType <IComponentDataElement>().ToList();
            OrderComponentsFromComponentOrder();
        }
Exemple #3
0
        public override void Unload()
        {
            m_Undo.UndoRedoBatchStarted -= HandleUndoRedoBatchStarted;
            m_Undo.UndoRedoBatchEnded   -= HandleUndoRedoBatchEnded;
            m_TransferMap.Dispose();
            Session.GetManager <IChangeManager>().UnregisterChangeCallback(HandleChanges);

            m_WorldManager = null;
            UnityEditor.Undo.postprocessModifications -= HandleInvertedChanges;
            EditorApplication.hierarchyChanged        -= HandleHierarchyChanges;
        }
Exemple #4
0
        public override void Load()
        {
            m_WorldManager = Session.GetManager <IWorldManagerInternal>();

            if (null == m_WorldManager)
            {
                throw new ArgumentNullException(nameof(m_WorldManager));
            }

            m_WorldChangeTracker = new WorldChangeTracker(m_WorldManager.World, Allocator.Persistent);
        }
Exemple #5
0
        public override void Load()
        {
            m_BindingsContext            = new BindingContext(Session);
            m_Undo                       = Session.GetManager <IEditorUndoManager>();
            m_Undo.UndoRedoBatchStarted += HandleUndoRedoBatchStarted;
            m_Undo.UndoRedoBatchEnded   += HandleUndoRedoBatchEnded;

            m_WorldManager     = Session.GetManager <IWorldManagerInternal>();
            m_ArchetypeManager = Session.GetManager <IArchetypeManager>();
            m_SceneManager     = Session.GetManager <IEditorSceneManagerInternal>();
            m_ComponentCache   = Session.GetManager <UnityComponentCacheManager>();
            Session.GetManager <IChangeManager>().RegisterChangeCallback(HandleChanges, int.MaxValue);
            UnityEditor.Undo.postprocessModifications += HandleInvertedChanges;
            EditorApplication.hierarchyChanged        += HandleHierarchyChanges;
            m_TransferMap = new NativeHashMap <EntityGuid, EntityGuid>(1024, Allocator.Persistent);
        }
Exemple #6
0
 public override void Load()
 {
     m_WorldManager = Session.GetManager <IWorldManagerInternal>();
 }