けいごのなんとか

Unityユーザーとしてのブログ。ギリギリ路線走ってます。

EditorWindowのメニューに項目を追加する - IHasCustomMenu

f:id:anchan828:20130410152609p:plain

要するに「EditorWindowのMenuで使われるGenericMenuが取得できる」ということ。

「✓」もつくよ!

f:id:anchan828:20130410152904p:plain

using UnityEngine;
using UnityEditor;

public class HasMenu : EditorWindow, IHasCustomMenu
{
    private bool on;
    
    public void AddItemsToMenu (GenericMenu menu)
    {
        menu.AddItem (new GUIContent ("hogee"), false, () => {
            Debug.Log ("Hogeee");
        });
        
        menu.AddSeparator ("");
        
        menu.AddItem (new GUIContent ("fugaa"), on, () => {
            on = !on;
            Debug.Log ("Fugaaa");
        });
    }
    
    [MenuItem("Window/HasMenu")]
    static void Open ()
    {
        GetWindow<HasMenu> ();
    }
}