Name | Description |
---|---|
label | Optional label in front of the field. |
selectedIndex | The index of the option the field shows. |
displayedOptions | An array with the options shown in the popup. |
style | Optional GUIStyle. |
options |
An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the style. See Also: GUILayout.Width, GUILayout.Height, GUILayout.MinWidth, GUILayout.MaxWidth, GUILayout.MinHeight, GUILayout.MaxHeight, GUILayout.ExpandWidth, GUILayout.ExpandHeight |
int - The index of the option that has been selected by the user.
Make a generic popup selection field.
Takes the currently selected index as a parameter and returns the index selected by the user.
Create a primitive depending on the option selected.
// Creates an instance of a primitive depending on the option selected by the user.
class EditorGUILayoutPopup extends EditorWindow {
var options : String[] = ["Cube", "Sphere", "Plane"];
var index : int = 0;
@MenuItem("Examples/Editor GUILayout Popup usage")
static function Init() {
var window = GetWindow(EditorGUILayoutPopup);
window.Show();
}
function OnGUI() {
index = EditorGUILayout.Popup(index, options);
if(GUILayout.Button("Create"))
InstantiatePrimitive();
}
function InstantiatePrimitive() {
switch (index) {
case 0:
var cube : GameObject = GameObject.CreatePrimitive(PrimitiveType.Cube);
cube.transform.position = Vector3.zero;
break;
case 1:
var sphere : GameObject = GameObject.CreatePrimitive(PrimitiveType.Sphere);
sphere.transform.position = Vector3.zero;
break;
case 2:
var plane : GameObject = GameObject.CreatePrimitive(PrimitiveType.Plane);
plane.transform.position = Vector3.zero;
break;
default:
Debug.LogError("Unrecognized Option");
break;
}
}
}