|
Derive from this class to create an editor window.
Note: This is an editor class. To use it you have to place your script in Assets/Editor inside your project folder. Editor classes are in the UnityEditor namespace so for C# scripts you need to add "using UnityEditor;" at the beginning of the script.
Create your own custom editor window that can float free or be docked as a tab, just like the native windows in the Unity interface.
Editor windows are typically opened using a menu item. class MyWindow extends EditorWindow { var myString = "Hello World"; var groupEnabled = false; var myBool = true; var myFloat = 1.23; @MenuItem ("Window/My Window") static function Init () { var window = ScriptableObject.CreateInstance.<MyWindow>(); } function OnGUI () { GUILayout.Label ("Base Settings", EditorStyles.boldLabel); myString = EditorGUILayout.TextField ("Text Field", myString); groupEnabled = EditorGUILayout.BeginToggleGroup ("Optional Settings", groupEnabled); myBool = EditorGUILayout.Toggle ("Toggle", myBool); myFloat = EditorGUILayout.Slider ("Slider", myFloat, -3, 3); EditorGUILayout.EndToggleGroup (); } }
using UnityEngine; using UnityEditor; public class MyWindow : EditorWindow { string myString = "Hello World"; bool groupEnabled; bool myBool = true; float myFloat = 1.23f; [MenuItem ("Window/My Window")] static void Init () { MyWindow window = (MyWindow)EditorWindow.GetWindow (typeof (MyWindow)); } void OnGUI () { GUILayout.Label ("Base Settings", EditorStyles.boldLabel); myString = EditorGUILayout.TextField ("Text Field", myString); groupEnabled = EditorGUILayout.BeginToggleGroup ("Optional Settings", groupEnabled); myBool = EditorGUILayout.Toggle ("Toggle", myBool); myFloat = EditorGUILayout.Slider ("Slider", myFloat, -3, 3); EditorGUILayout.EndToggleGroup (); } }
Variables
| wantsMouseMove |
Does the GUI in this editor window want MouseMove events?
|
| autoRepaintOnSceneChange |
Does the window automatically repaint whenever the scene has changed?
|
| minSize |
the minimum size of this window
|
| maxSize |
the maximum size of this window
|
| title |
The title of this window
|
| position |
The position of the window in screen space.
|
Functions
Messages Sent
| OnGUI |
Implement your own editor GUI here.
|
| Update |
Called 100 times per second on all visible windows.
|
| OnInspectorUpdate |
OnInspectorUpdate is called at 10 frames per second to give the inspector a chance to update
|
| OnDestroy |
OnDestroy is called when the EditorWindow is closed.
|
| OnSelectionChange |
Called whenever the selection has changed.
|
| OnFocus |
Called when the window gets keyboard focus.
|
| OnLostFocus |
Called when the window loses keyboard focus.
|
| OnHierarchyChange |
Called whenever the scene hierarchy has changed.
|
| OnProjectChange |
Called whenever the project has changed.
|
Class Variables
| focusedWindow |
The EditorWindow which currently has keyboard focus (Read Only)
|
| mouseOverWindow |
The EditorWindow currently under the mouse cursor (Read Only)
|
Class Functions
| GetWindow |
Returns the first EditorWindow of type t which is currently on the screen.
|
| FocusWindowIfItsOpen |
Focuses the first found EditorWindow of specified type if it is open.
|
| GetWindowWithRect |
Returns the first EditorWindow of type t which is currently on the screen.
|
Inherited members
Inherited Variables
|
name |
The name of the object.
|
|
hideFlags |
Should the object be hidden, saved with the scene or modifiable by the user?
|
Inherited Functions
Inherited Messages Sent
|
OnEnable |
This function is called when the object is loaded
|
|
OnDisable |
This function is called when the scriptable object goes out of scope
|
|
OnDestroy |
This function is called when the scriptable object will be destroyed.
|
Inherited Class Functions
|
CreateInstance |
Creates an instance of a scriptable object with className.
|
|
operator bool |
Does the object exist?
|
|
Instantiate |
Clones the object original and returns the clone.
|
|
Destroy |
Removes a gameobject, component or asset.
|
|
DestroyImmediate |
Destroys the object obj immediately. It is strongly recommended to use Destroy instead.
|
|
FindObjectsOfType |
Returns a list of all active loaded objects of Type type.
|
|
FindObjectOfType |
Returns the first active loaded object of Type type.
|
|
operator == |
Compares if two objects refer to the same
|
|
operator != |
Compares if two objects refer to a different object
|
|
DontDestroyOnLoad |
Makes the object target not be destroyed automatically when loading a new scene.
|
|