protected override void OnEnable()
        {
            base.OnEnable();

            m_parentDockPanel = GetComponentInParent <DockPanel>();

            SetComponentsActive(true);

            IRuntimeSceneComponent scene = IOCContainer.Resolve <IRuntimeSceneComponent>();

            scene.CameraPosition     = new Vector3(0.5f, 0.5f, -1) * ManualUVRenderer.Scale;
            scene.Pivot              = new Vector3(0.5f, 0.5f, 0) * ManualUVRenderer.Scale;
            scene.IsSelectionVisible = false;
            scene.IsOrthographic     = true;
            scene.CanRotate          = false;
            scene.CanFreeMove        = false;
            scene.CanSelect          = false;
            scene.CanSelectAll       = false;
            // scene.ChangeOrthographicSizeOnly = true;

            if (scene.Selection != m_uvEditor.PivotPointSelection)
            {
                scene.Selection = m_uvEditor.PivotPointSelection;
                m_uvEditor.PivotPointSelection.activeObject = null;
            }

            IRTEAppearance appearance = IOC.Resolve <IRTEAppearance>();

            Camera.backgroundColor = appearance.Colors.Secondary;
            Camera.cullingMask     = 0;
            Camera.clearFlags      = CameraClearFlags.SolidColor;

            EnableRaycasts();
            Editor.StartCoroutine(CoSetAlpha());
        }
Example #2
0
        private void OnEnableValueChanged(bool value)
        {
            if (value)
            {
                foreach (RuntimeWindow window in m_editor.Windows)
                {
                    if (window.WindowType == RuntimeWindowType.Scene)
                    {
                        IRuntimeSceneComponent scene = window.IOCContainer.Resolve <IRuntimeSceneComponent>();
                        if (scene != null)
                        {
                            scene.CanSelect               = false;
                            scene.CanSelectAll            = false;
                            scene.IsPositionHandleEnabled = false;
                            scene.IsRotationHandleEnabled = false;
                            scene.IsScaleHandleEnabled    = false;
                            scene.IsBoxSelectionEnabled   = false;
                        }
                    }
                }
                m_wm.WindowCreated += OnWindowCreated;
                Projector.gameObject.SetActive(true);
            }
            else
            {
                EnableStandardTools();

                if (m_wm != null)
                {
                    m_wm.WindowCreated -= OnWindowCreated;
                }

                Projector.gameObject.SetActive(false);
            }
        }
 private void ApplySettings(IRuntimeSceneComponent sceneComponent)
 {
     sceneComponent.IsGridVisible     = IsGridVisible;
     sceneComponent.IsGridEnabled     = IsGridEnabled;
     sceneComponent.SizeOfGrid        = GridSize;
     sceneComponent.ZoomSpeed         = ZoomSpeed;
     sceneComponent.ConstantZoomSpeed = ConstantZoomSpeed;
 }
 protected override void OnSceneDeactivated(IRuntimeSceneComponent sceneComponent)
 {
     base.OnSceneDeactivated(sceneComponent);
     if (m_selectionComponentState != null)
     {
         AllowSelection();
     }
 }
Example #5
0
        private void OnWindowCreated(Transform obj)
        {
            RuntimeWindow window = obj.GetComponent <RuntimeWindow>();

            if (window != null && window.WindowType == RuntimeWindowType.Scene)
            {
                IRuntimeSceneComponent scene = window.IOCContainer.Resolve <IRuntimeSceneComponent>();
                scene.IsBoxSelectionEnabled = false;
            }
        }
        protected override void OnSceneActivated(IRuntimeSceneComponent sceneComponent)
        {
            base.OnSceneActivated(sceneComponent);
            m_selectionComponentState = sceneComponent.Window.IOCContainer.Resolve <ISelectionComponentState>();

            if (Current != MeasurementToolType.None)
            {
                DisallowSelection();
            }
        }
        protected override void OnPointerEnterOverride(PointerEventData eventData)
        {
            base.OnPointerEnterOverride(eventData);

            //Box Selection disappearing fix
            IRuntimeSceneComponent scene = IOCContainer.Resolve <IRuntimeSceneComponent>();
            Canvas canvas = scene.BoxSelection.GetComponentInParent <Canvas>();

            canvas.enabled = false;
            canvas.enabled = true;
        }
        protected override void OnSceneActivated(IRuntimeSceneComponent sceneComponent)
        {
            base.OnSceneActivated(sceneComponent);
            m_scene = sceneComponent;
            m_selectionComponentState = sceneComponent.Window.IOCContainer.Resolve <ISelectionComponentState>();

            if (enabled)
            {
                Enable(true);
            }

            m_input = m_scene.Window.Editor.Input;
        }
        protected override void OnSceneDeactivated(IRuntimeSceneComponent sceneComponent)
        {
            base.OnSceneDeactivated(sceneComponent);

            if (m_selectionComponentState != null)
            {
                Enable(false);
                m_selectionComponentState = null;
            }

            m_scene = null;
            m_input = null;
        }
 private void ApplySettings(IRuntimeSceneComponent sceneComponent)
 {
     sceneComponent.IsGridVisible           = IsGridVisible;
     sceneComponent.IsGridEnabled           = IsGridEnabled;
     sceneComponent.SizeOfGrid              = GridSize;
     sceneComponent.GridZTest               = GridZTest;
     sceneComponent.FreeRotationSmoothSpeed = FreeRotationSmoothSpeed;
     sceneComponent.RotationInvertX         = RotationInvertX;
     sceneComponent.RotationInvertY         = RotationInvertY;
     sceneComponent.FreeMovementSmoothSpeed = FreeMovementSmoothSpeed;
     sceneComponent.ZoomSpeed               = ZoomSpeed;
     sceneComponent.ConstantZoomSpeed       = ConstantZoomSpeed;
     sceneComponent.RectTool.Metric         = SystemOfMeasurement == SystemOfMeasurement.Metric;
 }
        private void OnWindowCreated(Transform windowTransform)
        {
            RuntimeWindow window = windowTransform.GetComponent <RuntimeWindow>();

            if (window != null && window.WindowType == RuntimeWindowType.Scene)
            {
                IRuntimeSceneComponent sceneComponent = window.IOCContainer.Resolve <IRuntimeSceneComponent>();
                if (sceneComponent != null)
                {
                    m_sceneComponents.Add(windowTransform, sceneComponent);
                    ApplySettings(sceneComponent);
                }
            }
        }
        protected virtual void Awake()
        {
            m_window = GetComponent <RuntimeWindow>();

            m_editor = IOC.Resolve <IRTE>();
            m_editor.Object.Started             += OnObjectStarted;
            m_editor.Selection.SelectionChanged += OnSelectionChanged;

            m_sceneComponent = m_window.IOCContainer.Resolve <IRuntimeSceneComponent>();

            foreach (ExposeToEditor obj in m_editor.Object.Get(false))
            {
                TryCreateWireframe(obj);
            }
        }
        private void OnActiveWindowChanged(RuntimeWindow deactivatedWindow)
        {
            if (m_sceneComponent != null)
            {
                OnSceneDeactivated(m_sceneComponent);
            }

            if (m_editor.ActiveWindow != null)
            {
                m_sceneComponent = m_editor.ActiveWindow.IOCContainer.Resolve <IRuntimeSceneComponent>();
                if (m_sceneComponent != null)
                {
                    OnSceneActivated(m_sceneComponent);
                }
            }
        }
Example #14
0
        private void Disable()
        {
            if (m_sceneComponent != null)
            {
                m_sceneComponent.PositionHandle.BeforeDrag.RemoveListener(OnBeforeDrag);
                m_sceneComponent.PositionHandle.Drop.RemoveListener(OnDrop);
            }

            m_sceneComponent = null;

            if (m_editor != null)
            {
                //m_editor.Selection.activeGameObject = null;
                m_editor.ActiveWindowChanged        -= OnActiveWindowChanged;
                m_editor.Selection.SelectionChanged -= OnSelectionChanged;
            }
        }
Example #15
0
        private void Awake()
        {
            m_window = GetComponent <RuntimeWindow>();

            m_editor = IOC.Resolve <IRTE>();
            m_editor.Object.Started             += OnObjectStarted;
            m_editor.Selection.SelectionChanged += OnSelectionChanged;

            m_sceneComponent = m_window.IOCContainer.Resolve <IRuntimeSceneComponent>();

            foreach (ExposeToEditor obj in m_editor.Object.Get(false))
            {
                PBMesh pbMesh = obj.GetComponent <PBMesh>();
                if (pbMesh != null)
                {
                    CreateWireframeMesh(pbMesh);
                }
            }
        }
        private void OnAfterLayout(IWindowManager obj)
        {
            Transform[] sceneWindows = m_wm.GetWindows(RuntimeWindowType.Scene.ToString());
            for (int i = 0; i < sceneWindows.Length; ++i)
            {
                Transform     windowTransform = sceneWindows[i];
                RuntimeWindow window          = windowTransform.GetComponent <RuntimeWindow>();
                if (window != null)
                {
                    IRuntimeSceneComponent sceneComponent = window.IOCContainer.Resolve <IRuntimeSceneComponent>();
                    if (sceneComponent != null)
                    {
                        m_sceneComponents.Add(windowTransform, sceneComponent);
                    }
                }
            }

            ApplySettings();
        }
Example #17
0
        private void OnDisable()
        {
            if (m_sceneComponent != null)
            {
                m_sceneComponent.PositionHandle.BeforeDrag.RemoveListener(OnBeforeDrag);
                m_sceneComponent.PositionHandle.Drop.RemoveListener(OnDrop);
            }

            m_sceneComponent = null;

            if (m_editor != null)
            {
                m_editor.ActiveWindowChanged        -= OnActiveWindowChanged;
                m_editor.Selection.SelectionChanged -= OnSelectionChanged;
                m_targetHandles = null;
            }

            DestroyHandles();

            m_editor.Undo.Restore();
        }
Example #18
0
 private void EnableStandardTools()
 {
     if (m_editor != null)
     {
         foreach (RuntimeWindow window in m_editor.Windows)
         {
             if (window.WindowType == RuntimeWindowType.Scene)
             {
                 IRuntimeSceneComponent scene = window.IOCContainer.Resolve <IRuntimeSceneComponent>();
                 if (scene != null)
                 {
                     scene.CanSelect               = true;
                     scene.CanSelectAll            = true;
                     scene.IsPositionHandleEnabled = true;
                     scene.IsRotationHandleEnabled = true;
                     scene.IsScaleHandleEnabled    = true;
                     scene.IsBoxSelectionEnabled   = true;
                 }
             }
         }
     }
 }
Example #19
0
        private void OnActiveWindowChanged(RuntimeWindow window)
        {
            if (m_editor.ActiveWindow == null)
            {
                return;
            }

            if (m_editor.ActiveWindow.WindowType == RuntimeWindowType.Scene)
            {
                if (m_sceneComponent != null)
                {
                    m_sceneComponent.PositionHandle.BeforeDrag.RemoveListener(OnBeforeDrag);
                    m_sceneComponent.PositionHandle.Drop.RemoveListener(OnDrop);
                }

                m_sceneComponent = m_editor.ActiveWindow.IOCContainer.Resolve <IRuntimeSceneComponent>();
                if (m_sceneComponent != null)
                {
                    m_sceneComponent.PositionHandle.BeforeDrag.AddListener(OnBeforeDrag);
                    m_sceneComponent.PositionHandle.Drop.AddListener(OnDrop);
                }
            }
        }
        private void OnAfterLayout(IWindowManager wm)
        {
            wm.AfterLayout -= OnAfterLayout;

            const int     windowNumber = 0;
            RuntimeWindow window       = wm.GetWindows(RuntimeWindowType.Scene.ToString())[windowNumber].GetComponent <RuntimeWindow>();

            IRuntimeSceneComponent scene = window.IOCContainer.Resolve <IRuntimeSceneComponent>();

            scene.Pivot          = new Vector3(5, 0, 0);
            scene.CameraPosition = Vector3.right * 20;
            scene.IsOrthographic = true;

            scene.PositionHandle.GridSize = 2;
            scene.RotationHandle.GridSize = 5;
            scene.SizeOfGrid = 2;

            scene.IsScaleHandleEnabled  = false;
            scene.IsSceneGizmoEnabled   = true;
            scene.IsBoxSelectionEnabled = false;

            scene.CanSelect    = true;
            scene.CanSelectAll = true;

            scene.CanRotate = true;
            scene.CanPan    = false;
            scene.CanZoom   = true;

            Tab tab = Region.FindTab(window.transform);

            tab.CanClose = false;

            scene.SceneGizmoTransform.anchorMax = new Vector2(1, 0);
            scene.SceneGizmoTransform.anchorMin = new Vector2(1, 0);
            scene.SceneGizmoTransform.pivot     = new Vector2(1, 0);
        }
        public static IRuntimeSelectionComponent GetScenePivot(this IRTE editor)
        {
            if (editor.ActiveWindow != null)
            {
                IRuntimeSceneComponent scenePivot = editor.ActiveWindow.IOCContainer.Resolve <IRuntimeSceneComponent>();
                if (scenePivot != null)
                {
                    return(scenePivot);
                }
            }

            RuntimeWindow sceneWindow = editor.GetWindow(RuntimeWindowType.Scene);

            if (sceneWindow != null)
            {
                IRuntimeSelectionComponent scenePivot = sceneWindow.IOCContainer.Resolve <IRuntimeSelectionComponent>();
                if (scenePivot != null)
                {
                    return(scenePivot);
                }
            }

            return(null);
        }
 protected virtual void OnSceneDeactivated(IRuntimeSceneComponent sceneComponent)
 {
 }
 protected override void OnSceneActivated(IRuntimeSceneComponent sceneComponent)
 {
     base.OnSceneActivated(sceneComponent);
     sceneComponent.SelectionChanging += OnSelectionChanging;
 }
        protected override void OnSceneActivated(IRuntimeSceneComponent sceneComponent)
        {
            base.OnSceneActivated(sceneComponent);

            sceneComponent.PositionHandle.Drag.AddListener(OnDrag);
        }