Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

EditorWindow.ShowPopup

ShowPopup(): void;
void ShowPopup();
def ShowPopup() as void

Description

Used for popup style windows.

On mac this means light shadow and no titlebar


Delete specific components from the selected objects.

	// Create a simple popup window that lets you delete a specific 
	// Component from the GameObjects you have selected
	//
	// Warning: There is no undo in this action.
	
	class ShowPopupEx extends EditorWindow {
		var className = "Rigidbody";
		@MenuItem("Example/Delete Components in Selection")
		static function Init() {
			var window = new ShowPopupEx();
			window.position = Rect(Screen.width/2,Screen.height/2, 250, 50);
			window.ShowPopup();
		}
		
		// Disable the menu if we dont have anything selected
		@MenuItem("Example/Delete Components in Selection", true)
		static function ValidateDeleteComponentsInSelectionOfType() {
			return Selection.GetFiltered(
				GameObject, 
				SelectionMode.Editable | SelectionMode.Deep) != null;
		}
		
		function OnGUI() {
			className = EditorGUILayout.TextField("Component:",className);
			if(GUILayout.Button("Delete!")) {
				var destroyedCount = 0;
			
				for (var obj in Selection.GetFiltered(
				GameObject, 
				SelectionMode.Editable | SelectionMode.Deep)) {
					var component = obj.GetComponent(className);
					if (component) {
						DestroyImmediate(component);
						destroyedCount++;
					}
				}
				this.Close();
				EditorUtility.DisplayDialog("Deletion Report", 
					String.Format("Deleted {0} components of type \"{1}\"", destroyedCount, className), 
					"Close");	
			}
		}
		
	}