/// <summary> /// Adds a separator to the <see cref="EditorMenu"/>. /// </summary> /// <example> /// <para>Add separator between two logical groups of commands:</para> /// <code language="csharp"><![CDATA[ /// var menu = new EditorMenu(); /// menu.AddCommand("None"); /// menu.AddSeparator(); /// menu.AddCommand("Abc"); /// menu.AddCommand("Def"); /// menu.AddCommand("Ghi"); /// ]]></code> /// /// <para>Add a separator in a sub-menu:</para> /// <code language="csharp"><![CDATA[ /// var menu = new EditorMenu(); /// menu.AddCommand("Sub-menu/None"); /// menu.AddSeparator("Sub-menu/"); /// menu.AddCommand("Sub-menu/Abc"); /// menu.AddCommand("Sub-menu/Def"); /// menu.AddCommand("Sub-menu/Ghi"); /// ]]></code> /// </example> /// <param name="path">Path to the separator.</param> /// <returns> /// Fluid style API to further define the new separator entry. /// </returns> /// <exception cref="System.ArgumentException"> /// If <paramref name="path"/> is an empty string or starts with a slash. /// </exception> /// <seealso cref="AddCommand(string)"/> public virtual EditorMenuSeparatorBinder AddSeparator(string path = "") { var entry = new EditorMenuSeparatorEntry(path); this.entries.Add(entry); return(new EditorMenuSeparatorBinder(entry)); }
/// <summary> /// Adds a separator entry to the <see cref="GenericMenu"/>. /// </summary> /// <param name="genericMenu">Input menu data structure.</param> /// <param name="entry">Menu entry that is currently being added.</param> protected virtual void AddSeparatorEntryToMenu(GenericMenu genericMenu, EditorMenuSeparatorEntry entry) { genericMenu.AddSeparator(entry.Path); }