private void OnWindowDestoryed(Transform windowTransform) { RuntimeWindow window = windowTransform.GetComponent <RuntimeWindow>(); if (window != null && window.WindowType == RuntimeWindowType.Scene) { m_sceneComponents.Remove(windowTransform); } }
private void Start() { #if USE_RTE m_editor = IOC.Resolve <IRTE>(); m_window = GetComponentInParent <RuntimeWindow>(); #endif m_timelineControl = GetComponent <TimelineControl>(); }
public override void ActivateWindow(RuntimeWindow window) { base.ActivateWindow(window); if (window != null) { m_wm.ActivateWindow(window.transform); } }
private void DestroyToolbar() { Transform[] scenes = m_wm.GetWindows(RuntimeWindowType.Scene.ToString()); for (int i = 0; i < scenes.Length; ++i) { RuntimeWindow window = scenes[i].GetComponent <RuntimeWindow>(); DestroyToolbar(scenes[i], window); } }
private void OnWindowCreated(Transform window) { RuntimeWindow runtimeWindow = window.GetComponentInChildren <RuntimeWindow>(true); if (runtimeWindow.WindowType == RuntimeWindowType.Hierarchy) { runtimeWindow.gameObject.AddComponent <HierarchyViewOverrideExample>(); } }
protected virtual void Awake() { m_localization = IOC.Resolve <ILocalization>(); m_hierarchyView = GetComponent <HierarchyView>(); if (!m_hierarchyView.TreeViewPrefab) { Debug.LogError("Set TreeViewPrefab field"); return; } m_project = IOC.Resolve <IProject>(); m_editor = IOC.Resolve <IRuntimeEditor>(); m_filterInput = m_hierarchyView.FilterInput; if (m_filterInput != null) { m_filterInput.onValueChanged.AddListener(OnFiltering); } Transform parent = m_hierarchyView.TreePanel != null ? m_hierarchyView.TreePanel : transform; m_treeView = Instantiate(m_hierarchyView.TreeViewPrefab, parent).GetComponent <VirtualizingTreeView>(); m_treeView.name = "HierarchyTreeView"; m_treeView.CanSelectAll = false; m_treeView.SelectOnPointerUp = true; RectTransform rt = (RectTransform)m_treeView.transform; rt.Stretch(); m_treeView.ItemDataBinding += OnItemDataBinding; m_treeView.SelectionChanged += OnSelectionChanged; m_treeView.ItemsRemoving += OnItemRemoving; m_treeView.ItemsRemoved += OnItemsRemoved; m_treeView.ItemExpanding += OnItemExpanding; m_treeView.ItemBeginDrag += OnItemBeginDrag; m_treeView.ItemBeginDrop += OnItemBeginDrop; m_treeView.ItemDrag += OnItemDrag; m_treeView.ItemDrop += OnItemDrop; m_treeView.ItemEndDrag += OnItemEndDrag; m_treeView.ItemDragEnter += OnItemDragEnter; m_treeView.ItemDragExit += OnItemDragExit; m_treeView.ItemDoubleClick += OnItemDoubleClicked; m_treeView.ItemClick += OnItemClick; m_treeView.ItemBeginEdit += OnItemBeginEdit; m_treeView.ItemEndEdit += OnItemEndEdit; m_treeView.PointerEnter += OnTreeViewPointerEnter; m_treeView.PointerExit += OnTreeViewPointerExit; m_window = GetComponent <RuntimeWindow>(); m_window.DragEnterEvent += OnDragEnter; m_window.DragLeaveEvent += OnDragLeave; m_window.DragEvent += OnDrag; m_window.DropEvent += OnDrop; }
private void OnAfterLayout(IWindowManager wm) { Transform window = wm.GetWindow(RuntimeWindowType.Hierarchy.ToString()); if (window != null) { RuntimeWindow runtimeWindow = window.GetComponentInChildren <RuntimeWindow>(true); runtimeWindow.gameObject.AddComponent <HierarchyViewOverrideExample>(); } }
private void OnWindowCreated(Transform windowTransform) { RuntimeWindow window = windowTransform.GetComponent <RuntimeWindow>(); if (window != null && window.WindowType == RuntimeWindowType.Scene) { SubscribeSelectionChangingEvent(false, window); SubscribeSelectionChangingEvent(true, window); } }
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 OnActiveWindowChanged(RuntimeWindow deactivatedWindow) { if (Editor.ActiveWindow != null && Editor.ActiveWindow.WindowType == RuntimeWindowType.Scene) { Window = Editor.ActiveWindow; SceneCamera = Window.Camera; } base.OnActiveWindowChanged(deactivatedWindow); }
private void Awake() { m_editor = IOC.Resolve <IRTE>(); m_editor.ActiveWindowChanged += OnActiveWindowChanged; m_window = GetComponent <RuntimeWindow>(); if (m_window == null) { Debug.LogError("Unable to find window"); } }
protected virtual void Activate() { foreach (Transform windowTranform in m_windowToHandle.Keys) { RuntimeWindow window = windowTranform.GetComponentInChildren <RuntimeWindow>(); IRuntimeSelectionComponent selectionComponent = window.IOCContainer.Resolve <IRuntimeSelectionComponent>(); selectionComponent.CustomHandle = m_windowToHandle[windowTranform]; } SetCurrentTool(RuntimeTool.Custom); }
protected virtual void SetCullingMask(RuntimeWindow window) { window.Camera.cullingMask = (1 << LayerMask.NameToLayer("UI")) | (1 << m_editor.CameraLayerSettings.AllScenesLayer) | (1 << m_editor.CameraLayerSettings.ExtraLayer); window.Camera.backgroundColor = Color.white; window.Camera.clearFlags = CameraClearFlags.SolidColor; if (m_sceneComponent != null && m_sceneComponent.SceneGizmo != null) { m_sceneComponent.SceneGizmo.TextColor = Color.black; } }
protected virtual void Start() { m_project = IOC.Resolve <IProject>(); m_window = GetComponent <RuntimeWindow>(); m_window.DragEnterEvent += OnDragEnter; m_window.DragLeaveEvent += OnDragLeave; m_window.DragEvent += OnDrag; m_window.DropEvent += OnDrop; }
protected virtual T CreateHandle(RuntimeWindow scene) { GameObject go = new GameObject(typeof(T).Name); go.transform.SetParent(transform, false); go.gameObject.SetActive(false); T handle = go.AddComponent <T>(); handle.Window = scene; return(handle); }
protected virtual void ResetCullingMask(RuntimeWindow window) { CameraLayerSettings settings = m_editor.CameraLayerSettings; window.Camera.cullingMask = ~((1 << m_editor.CameraLayerSettings.ExtraLayer) | ((1 << settings.MaxGraphicsLayers) - 1) << settings.RuntimeGraphicsLayer); window.Camera.clearFlags = CameraClearFlags.Skybox; if (m_sceneComponent != null && m_sceneComponent.SceneGizmo != null) { m_sceneComponent.SceneGizmo.TextColor = Color.white; } }
private void Editor_ActiveWindowChanged(RuntimeWindow deactivatedWindow) { if (m_component != null) { if (m_isActive) { SceneComponent.UpdateCursorState(false, false, false); m_pan = false; m_rotate = false; } m_isActive = m_component.IsWindowActive; } }
private void OnActiveWindowChanged(RuntimeWindow deactivatedWindow) { if (m_selectionComponent != null) { m_selectionComponent.SelectionChanging -= OnSelectionChanging; } if (m_editor.ActiveWindow != null && m_editor.ActiveWindow.WindowType == RuntimeWindowType.Scene) { m_selectionComponent = m_editor.ActiveWindow.IOCContainer.Resolve <IRuntimeSelectionComponent>(); m_selectionComponent.SelectionChanging += OnSelectionChanging; } }
protected virtual void OnWindowRegistered(RuntimeWindow window) { if (window.WindowType == RuntimeWindowType.Scene) { List <Component> gizmos = m_gizmos != null?m_gizmos.ToList() : new List <Component>(); TryCreateGizmos(GetComponentDescriptor(), gizmos, window); if (gizmos.Count > 0) { m_gizmos = gizmos.ToArray(); } } }
private void SetCanSelect(bool value) { Transform[] windows = m_wm.GetWindows(RuntimeWindowType.Scene.ToString()); for (int i = 0; i < windows.Length; ++i) { RuntimeWindow window = windows[i].GetComponent <RuntimeWindow>(); IRuntimeSelectionComponent selectionComponent = window.IOCContainer.Resolve <IRuntimeSelectionComponent>(); if (selectionComponent != null) { selectionComponent.CanSelect = value; selectionComponent.CanSelectAll = value; } } }
private void LateUpdate() { if (m_activeTerrain == null) { gameObject.SetActive(false); return; } Transform terrainTransform = m_activeTerrain.transform; if (terrainTransform.position != gameObject.transform.position || terrainTransform.rotation != gameObject.transform.rotation || terrainTransform.localScale != gameObject.transform.localScale) { gameObject.transform.position = terrainTransform.position; gameObject.transform.rotation = terrainTransform.rotation; gameObject.transform.localScale = terrainTransform.localScale; } if (m_editor.ActiveWindow != null) { RuntimeWindow window = m_editor.ActiveWindow; if (window.WindowType == RuntimeWindowType.Scene) { RaycastHit hit; if (Physics.Raycast(window.Pointer, out hit)) { TryHitTerrainHandle(hit); } } } if (m_state.Interpolation != m_prevInterpolation) { m_prevInterpolation = m_state.Interpolation; InitLerpGrid(); } if (m_isDragging) { if (m_targetHandles != null && m_targetHandles.Length == 1) { for (int i = 0; i < m_targetHandles.Length; ++i) { UpdateTerrain(m_targetHandles[i]); } } } }
private void DestroyToolbar(Transform windowTransform, RuntimeWindow window) { if (window != null && window.WindowType == RuntimeWindowType.Scene) { if (m_sceneViewToolbarPrefab != null) { ProBuilderToolbar toolbar = windowTransform.GetComponentInChildren <ProBuilderToolbar>(); if (toolbar != null) { Destroy(toolbar.gameObject); } } } }
protected override void OnEditorExist() { base.OnEditorExist(); m_wm = IOC.Resolve <IWindowManager>(); Subscribe(); if (m_wm == null) { RuntimeWindow scene = IOC.Resolve <IRTE>().GetWindow(RuntimeWindowType.Scene); if (scene != null) { CreateHandle(scene); } } }
private void CreateToolbar(Transform windowTransform, RuntimeWindow window) { if (m_useSceneViewToolbar) { if (window != null && window.WindowType == RuntimeWindowType.Scene) { if (m_sceneViewToolbarPrefab != null) { RectTransform rt = (RectTransform)Instantiate(m_sceneViewToolbarPrefab, windowTransform, false).transform; rt.Stretch(); } } } }
private void LateUpdate() { if (!IsEnabled) { return; } Transform terrainTransform = Terrain.transform; if (terrainTransform.position != gameObject.transform.position || terrainTransform.rotation != gameObject.transform.rotation || terrainTransform.localScale != gameObject.transform.localScale) { gameObject.transform.position = terrainTransform.position; gameObject.transform.rotation = terrainTransform.rotation; gameObject.transform.localScale = terrainTransform.localScale; } if (m_editor.ActiveWindow != null) { RuntimeWindow window = m_editor.ActiveWindow; if (window.WindowType == RuntimeWindowType.Scene) { RaycastHit hit; if (Physics.Raycast(window.Pointer, out hit)) { TryHitTerrainHandle(hit); } } } if (m_state.Interpolation != m_prevInterpolation) { m_prevInterpolation = m_state.Interpolation; InitLerpGrid(); } if (m_isDragging) { if (m_selectedHandles != null && m_selectedHandles.Length == 1) { for (int i = 0; i < m_selectedHandles.Length; ++i) { int hid = m_selectedHandles[i]; GameObject handle = m_keyToHandle[hid]; UpdateTerrain(hid, handle.transform.localPosition, GetInterpolatedHeights, SetTerrainHeights); } } } }
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); } } }
private void OnRegionDepthChanged(Region region, int depth) { RuntimeWindow[] windows = region.GetComponentsInChildren <RuntimeWindow>(true); for (int i = 0; i < windows.Length; ++i) { RuntimeWindow window = windows[i]; window.SetCameraDepth(10 + depth * 5); window.Depth = (region.IsModal() ? 2048 + depth : depth) * 5; if (window.GetComponentsInChildren <RuntimeWindow>().Length > 1) { window.Depth -= 1; } } }
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 window) { if (m_editor.ActiveWindow != null && m_editor.ActiveWindow.WindowType == RuntimeWindowType.Scene) { m_updateRenderers = true; m_activeWindow = m_editor.ActiveWindow; m_selectionComponent = m_activeWindow.IOCContainer.Resolve <IRuntimeSelectionComponent>(); } else { m_activeWindow = null; m_selectionComponent = null; m_renderers = null; } }
private void OnActiveWindowChanged(RuntimeWindow window) { UnsubscribeFromEvents(); if (m_rte.ActiveWindow != null && m_rte.ActiveWindow.WindowType == RuntimeWindowType.Scene) { m_selectionComponent = m_rte.ActiveWindow.IOCContainer.Resolve <IRuntimeSelectionComponent>(); } else { m_selectionComponent = null; } SubscribeToEvents(); }