Generic Menu
if (GUILayout.Button("Select GUI Color")){
	GenericMenu menu = new GenericMenu();
	// GUIContent, IsOn, listener, userData
	menu.AddItem(new GUIContent(menuPath), m_Color.Equals(color), OnColorSelected, color);
	...
    menu.AddSeparator(""); // an empty string will create a separator at the top level
    menu.AddSeparator("CMYK/"); // a trailing slash will nest a separator in a submenu
	menu.ShowAsContext();
}
void OnColorSelected(object color){
	m_Color = (Color)color;
}