示例#1
0
        private void OnGUI()
        {
            var currentEvent = Event.current;
            var scrollOffset = new Rect(0f, 0f, root.position.width, root.position.height);

            scrollViewPos = GUI.BeginScrollView(scrollOffset, scrollViewPos, windowRect, true, true);
            BeginWindows();
            rootNode.OnDraw(0, currentEvent);
            anyState.OnDraw(1, currentEvent);
            for (int i = 0; i < nodeList.Count; i++)
            {
                nodeList [i].OnDraw(i + 2, currentEvent);
            }
            graphName = GUI.TextField(new Rect(root.position.width - 320f, root.position.height - 60f, 200f, 30f), graphName);
            if (GUI.Button(new Rect(root.position.width - 110f, root.position.height - 70f, 100f, 50f), "Generate JSON"))
            {
                GenerateJson("GenerateJson");
            }
            EndWindows();
            GUI.EndScrollView();
            if (currentEvent.type == EventType.ContextClick)
            {
                GenericMenu menu = new GenericMenu();
                menu.AddItem(new GUIContent("Create New State"), false, CreateNewNode, "CreateNewState");
                menu.AddSeparator("");
                menu.AddItem(new GUIContent("Generate JSON"), false, GenerateJson, "GenerateJson");
                menu.ShowAsContext();
                currentEvent.Use();
            }
        }
        private void OnGUI()
        {
            var currentEvent = Event.current;

            BeginWindows();
            rootNode.OnDraw(0, currentEvent);
            anyState.OnDraw(1, currentEvent);
            for (int i = 0; i < nodeList.Count; i++)
            {
                nodeList [i].OnDraw(i + 2, currentEvent);
            }
            var size = this.position;

            graphName = GUI.TextField(new Rect(size.width - 320f, size.height - 50f, 200f, 30f), graphName);
            if (GUI.Button(new Rect(size.width - 110f, size.height - 60f, 100f, 50f), "Generate JSON"))
            {
                GenerateJson("GenerateJson");
            }
            EndWindows();
            if (currentEvent.type == EventType.ContextClick)
            {
                GenericMenu menu = new GenericMenu();
                menu.AddItem(new GUIContent("Create New State"), false, CreateNewNode, "CreateNewState");
                menu.AddSeparator("");
                menu.AddItem(new GUIContent("Generate JSON"), false, GenerateJson, "GenerateJson");
                menu.ShowAsContext();
                currentEvent.Use();
            }
        }