-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMenuSettingsProvider.cs
More file actions
36 lines (31 loc) · 899 Bytes
/
Copy pathMenuSettingsProvider.cs
File metadata and controls
36 lines (31 loc) · 899 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using UnityEditor;
using UnityEngine;
namespace ScriptableObjectMenu
{
internal sealed class MenuSettingsProvider : AssetSettingsProvider
{
/// <summary>
/// The Editor's Project Settings window path.
/// </summary>
private const string PROJECT_SETTINGS_PATH = "Project/Scriptable Object Menu";
/// <summary>
/// The menu settings instance.
/// </summary>
private readonly MenuSettings m_Settings;
[SettingsProvider]
private static SettingsProvider Create () => new MenuSettingsProvider(MenuSettings.instance);
private MenuSettingsProvider (MenuSettings settings) :
base(PROJECT_SETTINGS_PATH, () => Editor.CreateEditor(settings),
GetSearchKeywordsFromSerializedObject(new SerializedObject(settings)))
{
m_Settings = settings;
}
public sealed override void OnTitleBarGUI ()
{
if (GUILayout.Button("Reset"))
{
m_Settings.Reset();
}
}
}
}