mirror of
https://github.com/gui-cs/Terminal.Gui.git
synced 2026-01-01 00:46:39 +01:00
@@ -159,6 +159,11 @@ namespace Terminal.Gui {
|
||||
/// <value>The main loop.</value>
|
||||
public static MainLoop MainLoop { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Disable or enable the mouse in this <see cref="Application"/>
|
||||
/// </summary>
|
||||
public static bool IsMouseDisabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// This event is raised on each iteration of the <see cref="MainLoop"/>
|
||||
/// </summary>
|
||||
@@ -523,6 +528,10 @@ namespace Terminal.Gui {
|
||||
|
||||
static void ProcessMouseEvent (MouseEvent me)
|
||||
{
|
||||
if (IsMouseDisabled) {
|
||||
return;
|
||||
}
|
||||
|
||||
var view = FindDeepestView (Current, me.X, me.Y, out int rx, out int ry);
|
||||
|
||||
if (view != null && view.WantContinuousButtonPressed)
|
||||
|
||||
@@ -312,9 +312,26 @@ namespace UICatalog {
|
||||
menuItems.Add (new MenuItem [] { null });
|
||||
menuItems.Add (CreateSizeStyle ());
|
||||
menuItems.Add (CreateAlwaysSetPosition ());
|
||||
menuItems.Add (CreateDisabledEnabledMouse ());
|
||||
return menuItems;
|
||||
}
|
||||
|
||||
private static MenuItem [] CreateDisabledEnabledMouse ()
|
||||
{
|
||||
List<MenuItem> menuItems = new List<MenuItem> ();
|
||||
var item = new MenuItem ();
|
||||
item.Title = "_Disable/Enable Mouse";
|
||||
item.Shortcut = Key.CtrlMask | Key.AltMask | (Key)item.Title.ToString ().Substring (1, 1) [0];
|
||||
item.CheckType |= MenuItemCheckStyle.Checked;
|
||||
item.Checked = Application.IsMouseDisabled;
|
||||
item.Action += () => {
|
||||
item.Checked = Application.IsMouseDisabled = !item.Checked;
|
||||
};
|
||||
menuItems.Add (item);
|
||||
|
||||
return menuItems.ToArray ();
|
||||
}
|
||||
|
||||
static MenuItem [] CreateAlwaysSetPosition ()
|
||||
{
|
||||
List<MenuItem> menuItems = new List<MenuItem> ();
|
||||
|
||||
Reference in New Issue
Block a user