# OnSelectionChanged(Preset)

> Applies the Preset to each target. If Preset is null, this method reverts the value of each target.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor.Presets](/engine/6000.7/script-reference/unityeditor/presets.md)
* **Assembly:** UnityEditor

> **Warning:**
>
> **Deprecated.** The DefaultPresetSelectorReceiver is deprecated. Please use PresetSelector.ShowSelector(Object\[], Preset, bool) instead.

```csharp
public override void OnSelectionChanged(Preset selection)
```

### Parameters

**** (\[Preset]\(/engine/6000.7/script-reference/unityeditor/presets/preset)):&#x20;

### Examples

```csharp
using UnityEditor;
using UnityEditor.Presets;
using UnityEngine;

public class DefaultPresetSelectorReceiver : PresetSelectorReceiver
{
    Object[] m_Targets;
    Preset[] m_InitialValues;

    public override void OnSelectionChanged(Preset selection)
    {
        if (selection != null)
        {
            foreach (var target in m_Targets)
            {
                selection.ApplyTo(target);
            }
        }
        else
        {
            for (int i = 0; i < m_Targets.Length; i++)
            {
                m_InitialValues[i].ApplyTo(m_Targets[i]);
            }
        }
    }
}
```
