コード例 #1
0
 private void OnEnable()
 {
     creator = (HandleTest)target;
     if (Path[0] == null)
     {
         creator.CreatePath();
     }
     handleMode   = AnchorModes.POSITION;
     Tools.hidden = true;
     SceneView.onSceneGUIDelegate += CustomOnSceneGUI;
 }
コード例 #2
0
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI();

        EditorGUI.BeginChangeCheck();
        if (GUILayout.Button("Create New"))
        {
            Undo.RecordObject(creator, "Create New");
            creator.CreatePath();
            currentPathIndex = 0;
            SceneView.RepaintAll();
        }

        bool isClosed = GUILayout.Toggle(Path[currentPathIndex].IsClosed, "Closed");

        if (isClosed != Path[currentPathIndex].IsClosed)
        {
            Undo.RecordObject(creator, "Toggle Closed");
            Path[currentPathIndex].IsClosed = isClosed;
        }

        bool autoSetControlPoints = GUILayout.Toggle(Path[currentPathIndex].AutoSetControlPoints, "Auto Set Control Points");

        if (autoSetControlPoints != Path[currentPathIndex].AutoSetControlPoints)
        {
            Undo.RecordObject(creator, "Toggle Auto Set Controls");
            Path[currentPathIndex].AutoSetControlPoints = autoSetControlPoints;
        }

        bool transformToggle = GUILayout.Toggle(hideTransformTools, "Hide Transform Tools");

        if (transformToggle != hideTransformTools)
        {
            Undo.RecordObject(creator, "Toggle Transform Tools");
            hideTransformTools = transformToggle;
            Tools.hidden       = hideTransformTools;
        }

        bool flatControlToggle = GUILayout.Toggle(FlatControls, "Flat Control Mode");

        if (flatControlToggle != FlatControls)
        {
            Undo.RecordObject(creator, "Toggle Flat Controls");
            FlatControls = flatControlToggle;
        }

        if (EditorGUI.EndChangeCheck())
        {
            SceneView.RepaintAll();
        }
    }