/// <summary>
 /// Callback for the popup window
 /// </summary>
 /// <param name='plan'>
 /// the plan to execute
 /// </param>
 static void ExecuteSelectedPlan(UTAutomationPlan plan)
 {
     plan.Execute ();
 }
 public override IEnumerator Execute(UTContext context)
 {
     return(plan.Execute(context));
 }
    public void OnGUI()
    {
        EditorGUI.BeginChangeCheck ();
        plan = EditorGUILayout.ObjectField (plan, typeof(UTAutomationPlan), false) as UTAutomationPlan;
        if (EditorGUI.EndChangeCheck ()) {
            RefreshInternals ();
        }

        EditorGUILayout.BeginHorizontal ();
        EditorGUILayout.BeginVertical();
        UTNodeEditor.NodeEditor (editorData, editorModel, GUILayout.ExpandHeight(true), GUILayout.ExpandWidth(true));

        #if UTOMATE_DEMO
        if(Event.current.type == EventType.Repaint) {
            var lastRect = GUILayoutUtility.GetLastRect();
            var content = new GUIContent("Demo Version");
            var size = UTEditorResources.DemoVersionLabelStyle.CalcSize(content);
            lastRect.Set(lastRect.xMin + lastRect.width - size.x, lastRect.yMin, size.x, size.y);
            GUI.Label(lastRect, content, UTEditorResources.DemoVersionLabelStyle);
        }
        #endif

        EditorGUILayout.BeginHorizontal();
        GUI.enabled = editorModel.HasPlan;
        if (GUILayout.Button("Layout")) {
            editorModel.RelayoutPlan();
        }
        GUI.enabled = true;
        GUILayout.FlexibleSpace();
        EditorGUILayout.EndHorizontal();
        EditorGUILayout.Space ();
        EditorGUILayout.EndVertical();

        // Inspector
        inspectorWidth = CUResizableContainer.BeginHorizontal (inspectorWidth, minInspectorWidth, 3 * minInspectorWidth, CUResizableContainer.HandlePosition.Before);
        EditorGUILayout.BeginVertical ();

        editorData.inspectorScrollPosition = EditorGUILayout.BeginScrollView (editorData.inspectorScrollPosition);
        // current action.
        if (editorModel.SelectedEntry != null) {
            inspectorRenderer.target = editorModel.SelectedEntry;
            inspectorRenderer.OnInspectorGUI ();
        }
        EditorGUILayout.EndScrollView ();

        GUILayout.FlexibleSpace ();

        // Render plan settings
        if (plan != null) {
            inspectorRenderer.target = plan;
            inspectorRenderer.OnInspectorGUI();
        }
        EditorGUILayout.Space();
        EditorGUILayout.BeginHorizontal ();
        GUILayout.FlexibleSpace();
        GUI.enabled = plan != null;
        if (GUILayout.Button ("Run this plan", EditorStyles.miniButton)) {
            plan.Execute ();
            GUIUtility.ExitGUI ();
        }
        GUI.enabled = true;
        EditorGUILayout.EndHorizontal ();
        EditorGUILayout.Space ();
        EditorGUILayout.EndVertical ();
        CUResizableContainer.EndHorizontal ();
        // Inspector

        EditorGUILayout.EndHorizontal ();

        if (UTomateRunner.Instance.IsRunning) {
            editorModel.HighlightedEntry = UTomateRunner.Instance.CurrentEntry;
            Repaint();
        }
        else {
            editorModel.HighlightedEntry = null;
        }
    }
Ejemplo n.º 4
0
    public void OnGUI()
    {
        EditorGUI.BeginChangeCheck();
        plan = EditorGUILayout.ObjectField(plan, typeof(UTAutomationPlan), false) as UTAutomationPlan;
        if (EditorGUI.EndChangeCheck())
        {
            RefreshInternals();
        }

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.BeginVertical();
        UTNodeEditor.NodeEditor(editorData, editorModel, GUILayout.ExpandHeight(true), GUILayout.ExpandWidth(true));

#if UTOMATE_DEMO
        if (Event.current.type == EventType.Repaint)
        {
            var lastRect = GUILayoutUtility.GetLastRect();
            var content  = new GUIContent("Demo Version");
            var size     = UTEditorResources.DemoVersionLabelStyle.CalcSize(content);
            lastRect.Set(lastRect.xMin + lastRect.width - size.x, lastRect.yMin, size.x, size.y);
            GUI.Label(lastRect, content, UTEditorResources.DemoVersionLabelStyle);
        }
#endif

        EditorGUILayout.BeginHorizontal();
        GUI.enabled = editorModel.HasPlan;
        if (GUILayout.Button("Layout"))
        {
            editorModel.RelayoutPlan();
        }
        GUI.enabled = true;
        GUILayout.FlexibleSpace();
        EditorGUILayout.EndHorizontal();
        EditorGUILayout.Space();
        EditorGUILayout.EndVertical();

        // Inspector
        inspectorWidth = CUResizableContainer.BeginHorizontal(inspectorWidth, minInspectorWidth, 3 * minInspectorWidth, CUResizableContainer.HandlePosition.Before);
        EditorGUILayout.BeginVertical();

        editorData.inspectorScrollPosition = EditorGUILayout.BeginScrollView(editorData.inspectorScrollPosition);
        // current action.
        if (editorModel.SelectedEntry != null)
        {
            inspectorRenderer.target = editorModel.SelectedEntry;
            inspectorRenderer.OnInspectorGUI();
        }
        EditorGUILayout.EndScrollView();

        GUILayout.FlexibleSpace();

        // Render plan settings
        if (plan != null)
        {
            inspectorRenderer.target = plan;
            inspectorRenderer.OnInspectorGUI();
        }
        EditorGUILayout.Space();
        EditorGUILayout.BeginHorizontal();
        GUILayout.FlexibleSpace();
        GUI.enabled = plan != null;
        if (GUILayout.Button("Run this plan", EditorStyles.miniButton))
        {
            plan.Execute();
            GUIUtility.ExitGUI();
        }
        GUI.enabled = true;
        EditorGUILayout.EndHorizontal();
        EditorGUILayout.Space();
        EditorGUILayout.EndVertical();
        CUResizableContainer.EndHorizontal();
        // Inspector

        EditorGUILayout.EndHorizontal();

        if (UTomateRunner.Instance.IsRunning)
        {
            editorModel.HighlightedEntry = UTomateRunner.Instance.CurrentEntry;
            Repaint();
        }
        else
        {
            editorModel.HighlightedEntry = null;
        }
    }
Ejemplo n.º 5
0
 /// <summary>
 /// Callback for the popup window
 /// </summary>
 /// <param name='plan'>
 /// the plan to execute
 /// </param>
 static void ExecuteSelectedPlan(UTAutomationPlan plan)
 {
     plan.Execute();
 }