public override void UpdateView(Rect editorRect, Rect percentageRect, Event e, NodeGraph nodeGraph) { base.UpdateView(editorRect, percentageRect, e, nodeGraph); if(currentTimelineView == null) currentTimelineView = new NodeTimelineView(); if (currentNodeGraph != null) { viewTitle = currentNodeGraph.graphName; currentNodeGraph.isInsidePropertyView = isInsidePropertyView; currentNodeGraph.zoom = _zoom; currentNodeGraph.panX = panX; currentNodeGraph.panY = panY; currentNodeGraph.typesOfNodes = typesOfNodes; } else{ viewTitle = "No Graph Loaded."; } workSpaceRect = new Rect(panX + (editorRect.x / _zoom), panY, 10000, 10000); EditorZoomArea.Begin(_zoom, _zoomArea); GUI.BeginGroup(workSpaceRect); GUI.Box(new Rect(0, 0, 10000, 10000), viewTitle, viewSkin.GetStyle("bg_view")); //Draw a Grid DrawUtilities.DrawGrid(new Rect(0, 0, 10000, 10000), WorkPreferences.gridSpacingDark, WorkPreferences.gridColorOuter); DrawUtilities.DrawGrid(new Rect(0, 0, 10000, 10000), WorkPreferences.gridSpacingLight, WorkPreferences.gridColorInner); GUILayout.BeginArea(new Rect(0, 0, 10000, 10000)); if (currentNodeGraph != null) { currentNodeGraph.UpdateGraphGUI(e, viewRect, new Rect(0, 0, 10000, 10000), viewSkin); } DrawStepOutOfNode(viewRect); GUILayout.EndArea(); currentTimelineView.UpdateView(new Rect(panX, -panY + (viewRect.height / _zoom) - (50f / _zoom), 10000, 50f / _zoom), new Rect(0f, 1f, 1f, 1f), e, currentNodeGraph); currentTimelineView.ProcessEvents(e); EditorZoomArea.End(); GUI.EndGroup(); }
public NodeWorkView() : base("Node View") { currentTimelineView = new NodeTimelineView(); typesOfNodes = XMLUtilities.getNodeTypes(); }