# SelectionMode

> Determine the selection returned by Selection.GetTransforms.

## Definition

* **Type:** Enum
* **Namespace:** [UnityEditor](/engine/6000.0/script-reference/unityeditor.md)
* **Assembly:** UnityEditor

```csharp
[Flags]
public enum SelectionMode
```

## Remarks

The default transform selection mode is: [SelectionMode.TopLevel](/engine/6000.0/script-reference/unityeditor/selectionmode/toplevel.md) | [SelectionMode.ExcludePrefab](/engine/6000.0/script-reference/unityeditor/selectionmode/excludeprefab.md) | [SelectionMode.Editable](/engine/6000.0/script-reference/unityeditor/selectionmode/editable.md), which returns all parent transforms of objects that can be edited, and aren't prefabs.

## Fields

| Value                                                                                       | Description                                                                                                                                        |
| ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Assets](/engine/6000.0/script-reference/unityeditor/selectionmode/assets.md)               | Uses any selected assets when passed to [Selection.GetTransforms](/engine/6000.0/script-reference/unityeditor/selection/gettransforms.md).         |
| [Deep](/engine/6000.0/script-reference/unityeditor/selectionmode/deep.md)                   | Uses the transform of the selection and all child transforms of the selection.                                                                     |
| [DeepAssets](/engine/6000.0/script-reference/unityeditor/selectionmode/deepassets.md)       | Includes all assets and subfolders if the selection contains folders.                                                                              |
| [Editable](/engine/6000.0/script-reference/unityeditor/selectionmode/editable.md)           | Only include objects that can be edited.                                                                                                           |
| [ExcludePrefab](/engine/6000.0/script-reference/unityeditor/selectionmode/excludeprefab.md) | Excludes any prefabs from the selection.                                                                                                           |
| [TopLevel](/engine/6000.0/script-reference/unityeditor/selectionmode/toplevel.md)           | Only return the topmost selected transform. A selected child of another selected transform will be filtered out.                                   |
| [Unfiltered](/engine/6000.0/script-reference/unityeditor/selectionmode/unfiltered.md)       | Uses everything in the selection when passed to [Selection.GetTransforms](/engine/6000.0/script-reference/unityeditor/selection/gettransforms.md). |
