# IRenderPipelineGraphicsSettingsContextMenu2

> Interface for modifying the contextual menu of all IRenderPipelineGraphicsSettings in the Inspector.

## Definition

* **Type:** Interface
* **Namespace:** [UnityEditor.Rendering](/engine/6000.5/script-reference/unityeditor/rendering.md)
* **Assembly:** UnityEditor.CoreModule

```csharp
public interface IRenderPipelineGraphicsSettingsContextMenu2
```

## Remarks

Use this interface to add your own custom commands in the contextual menu of all [IRenderPipelineGraphicsSettings](/engine/6000.5/script-reference/unityengine/rendering/irenderpipelinegraphicssettings.md). The menu added here will appears in each contextual menu in **Edit** > **Project Settings** > **Graphics**.

## Examples

```csharp
using UnityEditor;
using UnityEditor.Rendering;
using UnityEngine.UIElements;

struct DummyMenuForAll : IRenderPipelineGraphicsSettingsContextMenu2
{
    // The lower the priority, the higher the added command appears in the menu
    public int priority => 0;

    public void PopulateContextMenu(IRenderPipelineGraphicsSettings setting, SerializedProperty _, ref GenericMenu menu)
    {
        // Add specific commands that appear when you select the contextual menu button 
        // of all IRenderPipelineGraphicsSettings in Edit > Project Settings > Graphics. 
        menu.AddItem("Log type", false, () => Debug.Log(settings.GetType()));

        // As modifications are not recommended at runtime, check
        // EditorApplication.isPlaying before modifying any data.
        if (EditorApplication.isPlaying)
            menu.AddDisabledItem("Custom Reset", false);
        else
            menu.AddItem("Custom Reset", false, () =>settings.Reset());
    }
}
```

## Properties

| Property                                                                                                                  | Description                                                                              |
| ------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| [priority](/engine/6000.5/script-reference/unityeditor/rendering/irenderpipelinegraphicssettingscontextmenu2/priority.md) | Priority for sorting the added commands in the contextual menu among the other commands. |

## Methods

| Method                                                                                                                                          | Description                                                                                                                                                                      |
| ----------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [PopulateContextMenu](/engine/6000.5/script-reference/unityeditor/rendering/irenderpipelinegraphicssettingscontextmenu2/populatecontextmenu.md) | Populate a context menu with custom methods for all [IRenderPipelineGraphicsSettings](/engine/6000.5/script-reference/unityengine/rendering/irenderpipelinegraphicssettings.md). |
