Menu event args -> One class per file

This commit is contained in:
Tig
2024-06-09 08:09:15 -06:00
parent b6a925ea97
commit 0ee46db2f9
4 changed files with 75 additions and 73 deletions

View File

@@ -0,0 +1,31 @@
namespace Terminal.Gui;
/// <summary>An <see cref="EventArgs"/> which allows passing a cancelable menu closing event.</summary>
public class MenuClosingEventArgs : EventArgs
{
/// <summary>Initializes a new instance of <see cref="MenuClosingEventArgs"/>.</summary>
/// <param name="currentMenu">The current <see cref="MenuBarItem"/> parent.</param>
/// <param name="reopen">Whether the current menu will reopen.</param>
/// <param name="isSubMenu">Indicates whether it is a sub-menu.</param>
public MenuClosingEventArgs (MenuBarItem currentMenu, bool reopen, bool isSubMenu)
{
CurrentMenu = currentMenu;
Reopen = reopen;
IsSubMenu = isSubMenu;
}
/// <summary>
/// Flag that allows the cancellation of the event. If set to <see langword="true"/> in the event handler, the
/// event will be canceled.
/// </summary>
public bool Cancel { get; set; }
/// <summary>The current <see cref="MenuBarItem"/> parent.</summary>
public MenuBarItem CurrentMenu { get; }
/// <summary>Indicates whether the current menu is a sub-menu.</summary>
public bool IsSubMenu { get; }
/// <summary>Indicates whether the current menu will reopen.</summary>
public bool Reopen { get; }
}

View File

@@ -1,73 +0,0 @@
namespace Terminal.Gui;
/// <summary>
/// An <see cref="EventArgs"/> which allows passing a cancelable menu opening event or replacing with a new
/// <see cref="MenuBarItem"/>.
/// </summary>
public class MenuOpeningEventArgs : EventArgs
{
/// <summary>Initializes a new instance of <see cref="MenuOpeningEventArgs"/>.</summary>
/// <param name="currentMenu">The current <see cref="MenuBarItem"/> parent.</param>
public MenuOpeningEventArgs (MenuBarItem currentMenu) { CurrentMenu = currentMenu; }
/// <summary>
/// Flag that allows the cancellation of the event. If set to <see langword="true"/> in the event handler, the
/// event will be canceled.
/// </summary>
public bool Cancel { get; set; }
/// <summary>The current <see cref="MenuBarItem"/> parent.</summary>
public MenuBarItem CurrentMenu { get; }
/// <summary>The new <see cref="MenuBarItem"/> to be replaced.</summary>
public MenuBarItem NewMenuBarItem { get; set; }
}
/// <summary>Defines arguments for the <see cref="MenuBar.MenuOpened"/> event</summary>
public class MenuOpenedEventArgs : EventArgs
{
/// <summary>Creates a new instance of the <see cref="MenuOpenedEventArgs"/> class</summary>
/// <param name="parent"></param>
/// <param name="menuItem"></param>
public MenuOpenedEventArgs (MenuBarItem parent, MenuItem menuItem)
{
Parent = parent;
MenuItem = menuItem;
}
/// <summary>Gets the <see cref="MenuItem"/> being opened.</summary>
public MenuItem MenuItem { get; }
/// <summary>The parent of <see cref="MenuItem"/>. Will be null if menu opening is the root.</summary>
public MenuBarItem Parent { get; }
}
/// <summary>An <see cref="EventArgs"/> which allows passing a cancelable menu closing event.</summary>
public class MenuClosingEventArgs : EventArgs
{
/// <summary>Initializes a new instance of <see cref="MenuClosingEventArgs"/>.</summary>
/// <param name="currentMenu">The current <see cref="MenuBarItem"/> parent.</param>
/// <param name="reopen">Whether the current menu will reopen.</param>
/// <param name="isSubMenu">Indicates whether it is a sub-menu.</param>
public MenuClosingEventArgs (MenuBarItem currentMenu, bool reopen, bool isSubMenu)
{
CurrentMenu = currentMenu;
Reopen = reopen;
IsSubMenu = isSubMenu;
}
/// <summary>
/// Flag that allows the cancellation of the event. If set to <see langword="true"/> in the event handler, the
/// event will be canceled.
/// </summary>
public bool Cancel { get; set; }
/// <summary>The current <see cref="MenuBarItem"/> parent.</summary>
public MenuBarItem CurrentMenu { get; }
/// <summary>Indicates whether the current menu is a sub-menu.</summary>
public bool IsSubMenu { get; }
/// <summary>Indicates whether the current menu will reopen.</summary>
public bool Reopen { get; }
}

View File

@@ -0,0 +1,20 @@
namespace Terminal.Gui;
/// <summary>Defines arguments for the <see cref="MenuBar.MenuOpened"/> event</summary>
public class MenuOpenedEventArgs : EventArgs
{
/// <summary>Creates a new instance of the <see cref="MenuOpenedEventArgs"/> class</summary>
/// <param name="parent"></param>
/// <param name="menuItem"></param>
public MenuOpenedEventArgs (MenuBarItem parent, MenuItem menuItem)
{
Parent = parent;
MenuItem = menuItem;
}
/// <summary>Gets the <see cref="MenuItem"/> being opened.</summary>
public MenuItem MenuItem { get; }
/// <summary>The parent of <see cref="MenuItem"/>. Will be null if menu opening is the root.</summary>
public MenuBarItem Parent { get; }
}

View File

@@ -0,0 +1,24 @@
namespace Terminal.Gui;
/// <summary>
/// An <see cref="EventArgs"/> which allows passing a cancelable menu opening event or replacing with a new
/// <see cref="MenuBarItem"/>.
/// </summary>
public class MenuOpeningEventArgs : EventArgs
{
/// <summary>Initializes a new instance of <see cref="MenuOpeningEventArgs"/>.</summary>
/// <param name="currentMenu">The current <see cref="MenuBarItem"/> parent.</param>
public MenuOpeningEventArgs (MenuBarItem currentMenu) { CurrentMenu = currentMenu; }
/// <summary>
/// Flag that allows the cancellation of the event. If set to <see langword="true"/> in the event handler, the
/// event will be canceled.
/// </summary>
public bool Cancel { get; set; }
/// <summary>The current <see cref="MenuBarItem"/> parent.</summary>
public MenuBarItem CurrentMenu { get; }
/// <summary>The new <see cref="MenuBarItem"/> to be replaced.</summary>
public MenuBarItem NewMenuBarItem { get; set; }
}