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()); }
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(); } }
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); } } }
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; } }
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(); }
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(); }
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; } } } } }
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); }