public MasterPreviewView(string assetName, PreviewManager previewManager, AbstractMaterialGraph graph) { this.clippingOptions = ClippingOptions.ClipAndCacheContents; m_PreviewManager = previewManager; m_Graph = graph; AddStyleSheetPath("Styles/MasterPreviewView"); m_PreviewRenderHandle = previewManager.masterRenderData; var topContainer = new VisualElement() { name = "top" }; { var title = new Label(assetName.Split('/').Last()) { name = "title" }; topContainer.Add(title); } Add(topContainer); var middleContainer = new VisualElement {name = "middle"}; { m_PreviewTextureView = CreatePreview(Texture2D.blackTexture); m_PreviewScrollPosition = new Vector2(0f, 0f); middleContainer.Add(m_PreviewTextureView); middleContainer.AddManipulator(new Scrollable(OnScroll)); } m_PreviewRenderHandle.onPreviewChanged += OnPreviewChanged; Add(middleContainer); }
public MasterPreviewView(PreviewManager previewManager, GraphData graph) { cacheAsBitmap = true; style.overflow = Overflow.Hidden; m_PreviewManager = previewManager; m_Graph = graph; styleSheets.Add(Resources.Load <StyleSheet>("Styles/MasterPreviewView")); m_PreviewRenderHandle = previewManager.masterRenderData; if (m_PreviewRenderHandle != null) { m_PreviewRenderHandle.onPreviewChanged += OnPreviewChanged; } var topContainer = new VisualElement() { name = "top" }; { m_Title = new Label() { name = "title" }; m_Title.text = "Main Preview"; // Add preview collapse button on top of preview m_CollapsePreviewContainer = new VisualElement { name = "collapse-container" }; m_CollapsePreviewContainer.AddToClassList("collapse-container"); topContainer.Add(m_Title); topContainer.Add(m_CollapsePreviewContainer); } Add(topContainer); m_Preview = new VisualElement { name = "middle" }; { m_PreviewTextureView = CreatePreview(Texture2D.blackTexture); m_PreviewScrollPosition = new Vector2(0f, 0f); preview.Add(m_PreviewTextureView); preview.AddManipulator(new Scrollable(OnScroll)); } Add(preview); m_PreviewResizeBorderFrame = new ResizeBorderFrame(previewTextureView, this) { name = "resizeBorderFrame" }; m_PreviewResizeBorderFrame.maintainAspectRatio = true; Add(m_PreviewResizeBorderFrame); m_ExpandedPreviewSize = new Vector2(256f, 256f); m_RecalculateLayout = false; previewTextureView.RegisterCallback <GeometryChangedEvent>(OnGeometryChanged); }
public void Dispose() { if (m_PreviewRenderHandle != null) { m_PreviewRenderHandle.onPreviewChanged -= OnPreviewChanged; m_PreviewRenderHandle = null; } }
public MasterPreviewView(PreviewManager previewManager, AbstractMaterialGraph graph) { this.clippingOptions = ClippingOptions.ClipAndCacheContents; m_PreviewManager = previewManager; m_Graph = graph; AddStyleSheetPath("Styles/MasterPreviewView"); m_PreviewRenderHandle = previewManager.masterRenderData; var topContainer = new VisualElement() { name = "top" }; { m_Title = new Label() { name = "title" }; m_Title.text = "Main Preview"; // Add preview collapse button on top of preview m_CollapsePreviewContainer = new VisualElement { name = "collapse-container" }; m_CollapsePreviewContainer.AddToClassList("collapse-container"); topContainer.Add(m_Title); topContainer.Add(m_CollapsePreviewContainer); } Add(topContainer); m_Preview = new VisualElement { name = "middle" }; { m_PreviewTextureView = CreatePreview(Texture2D.blackTexture); m_PreviewScrollPosition = new Vector2(0f, 0f); preview.Add(m_PreviewTextureView); preview.AddManipulator(new Scrollable(OnScroll)); } m_PreviewRenderHandle.onPreviewChanged += OnPreviewChanged; Add(preview); m_PreviewResizeBorderFrame = new ResizeBorderFrame(previewTextureView, this) { name = "resizeBorderFrame" }; m_PreviewResizeBorderFrame.maintainAspectRatio = true; Add(m_PreviewResizeBorderFrame); m_ExpandedPreviewSize = new Vector2(256f, 256f); m_RecalculateLayout = false; previewTextureView.RegisterCallback <GeometryChangedEvent>(OnGeometryChanged); }
public MasterPreviewView(string assetName, PreviewManager previewManager, AbstractMaterialGraph graph) { m_Graph = graph; AddStyleSheetPath("Styles/MaterialGraph"); m_PreviewRenderHandle = previewManager.masterRenderData; m_PreviewRenderHandle.onPreviewChanged += OnPreviewChanged; var topContainer = new VisualElement() { name = "top" }; { var title = new Label(assetName + " master node preview") { name = "title" }; topContainer.Add(title); } Add(topContainer); var middleContainer = new VisualElement { name = "middle" }; { m_PreviewTextureView = new PreviewTextureView { name = "preview", image = Texture2D.blackTexture }; m_PreviewTextureView.AddManipulator(new Draggable(OnMouseDragPreviwMesh, true)); middleContainer.Add(m_PreviewTextureView); m_PreviewScrollPosition = new Vector2(0f, 0f); middleContainer.Add(m_PreviewTextureView); } Add(middleContainer); var bottomContainer = new VisualElement() { name = "bottom" }; { m_PreviewMeshPicker = new ObjectField { name = "picker", objectType = typeof(Mesh) }; m_PreviewMeshPicker.OnValueChanged(OnPreviewMeshChanged); bottomContainer.Add(m_PreviewMeshPicker); } Add(bottomContainer); }
public MasterPreviewView(string assetName, PreviewManager previewManager, AbstractMaterialGraph graph) { this.clippingOptions = ClippingOptions.ClipAndCacheContents; m_Graph = graph; AddStyleSheetPath("Styles/MasterPreviewView"); m_PreviewRenderHandle = previewManager.masterRenderData; m_PreviewRenderHandle.onPreviewChanged += OnPreviewChanged; var topContainer = new VisualElement() { name = "top" }; { var title = new Label(assetName.Split('/').Last()) { name = "title" }; topContainer.Add(title); } Add(topContainer); var middleContainer = new VisualElement { name = "middle" }; { m_PreviewTextureView = new PreviewTextureView { name = "preview", image = Texture2D.blackTexture }; m_PreviewTextureView.AddManipulator(new Draggable(OnMouseDragPreviewMesh, true)); m_PreviewTextureView.AddManipulator((IManipulator)Activator.CreateInstance(s_ContextualMenuManipulator, (Action <ContextualMenuPopulateEvent>)BuildContextualMenu)); middleContainer.Add(m_PreviewTextureView); m_PreviewScrollPosition = new Vector2(0f, 0f); middleContainer.Add(m_PreviewTextureView); middleContainer.AddManipulator(new Scrollable(OnScroll)); } Add(middleContainer); }
public GraphInspectorView(string assetName, PreviewManager previewManager, AbstractMaterialGraph graph) { m_Graph = graph; AddStyleSheetPath("Styles/MaterialGraph"); var topContainer = new VisualElement { name = "top" }; { var headerContainer = new VisualElement { name = "header" }; { var title = new Label(assetName) { name = "title" }; title.AddManipulator(new Clickable(() => { if (onShowInProjectClick != null) { onShowInProjectClick(); } })); headerContainer.Add(title); headerContainer.Add(new Button(() => { if (onUpdateAssetClick != null) { onUpdateAssetClick(); } }) { name = "save", text = "Save" }); } topContainer.Add(headerContainer); var propertiesContainer = new VisualElement { name = "properties" }; { var header = new VisualElement { name = "header" }; { var title = new Label("Properties") { name = "title" }; header.Add(title); var addPropertyButton = new Button(OnAddProperty) { text = "Add", name = "addButton" }; header.Add(addPropertyButton); } propertiesContainer.Add(header); m_PropertyItems = new VisualContainer { name = "items" }; propertiesContainer.Add(m_PropertyItems); } topContainer.Add(propertiesContainer); } Add(topContainer); var bottomContainer = new VisualElement { name = "bottom" }; { m_PreviewTextureView = new PreviewTextureView { name = "preview", image = Texture2D.blackTexture }; m_PreviewTextureView.AddManipulator(new Draggable(OnMouseDrag, true)); bottomContainer.Add(m_PreviewTextureView); m_PreviewScrollPosition = new Vector2(0f, 0f); m_PreviewMeshPicker = new ObjectField { objectType = typeof(Mesh) }; m_PreviewMeshPicker.OnValueChanged(OnPreviewMeshChanged); bottomContainer.Add(m_PreviewMeshPicker); } Add(bottomContainer); m_PreviewRenderHandle = previewManager.masterRenderData; m_PreviewRenderHandle.onPreviewChanged += OnPreviewChanged; m_PreviewMeshPicker.SetValueAndNotify(m_Graph.previewData.serializedMesh.mesh); foreach (var property in m_Graph.properties) { m_PropertyItems.Add(new ShaderPropertyView(m_Graph, property)); } Add(new ResizeSideHandle(this, ResizeHandleAnchor.TopLeft, new string[] { "resize", "diagonal", "top-left" })); Add(new ResizeSideHandle(this, ResizeHandleAnchor.Top, new string[] { "resize", "vertical", "top" })); Add(new ResizeSideHandle(this, ResizeHandleAnchor.TopRight, new string[] { "resize", "diagonal", "top-right" })); Add(new ResizeSideHandle(this, ResizeHandleAnchor.Right, new string[] { "resize", "horizontal", "right" })); Add(new ResizeSideHandle(this, ResizeHandleAnchor.BottomRight, new string[] { "resize", "diagonal", "bottom-right" })); Add(new ResizeSideHandle(this, ResizeHandleAnchor.Bottom, new string[] { "resize", "vertical", "bottom" })); Add(new ResizeSideHandle(this, ResizeHandleAnchor.BottomLeft, new string[] { "resize", "diagonal", "bottom-left" })); Add(new ResizeSideHandle(this, ResizeHandleAnchor.Left, new string[] { "resize", "horizontal", "left" })); }