mirror of
https://github.com/ayufan/steam-deck-tools.git
synced 2026-01-20 07:20:27 +01:00
PowerControl: MenuRoot update VisibleChanged and Render() to accept nulls
This commit is contained in:
parent
bbc4cf8200
commit
130a6fb745
|
|
@ -60,10 +60,7 @@ namespace PowerControl
|
|||
rootMenu.Visible = false;
|
||||
rootMenu.Update();
|
||||
rootMenu.CreateMenu(contextMenu.Items);
|
||||
rootMenu.VisibleChanged = delegate ()
|
||||
{
|
||||
updateOSD();
|
||||
};
|
||||
rootMenu.VisibleChanged += delegate { updateOSD(); };
|
||||
contextMenu.Items.Add(new ToolStripSeparator());
|
||||
|
||||
if (startupManager.IsAvailable)
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ namespace PowerControl.Menu
|
|||
White
|
||||
}
|
||||
|
||||
public String Name { get; set; }
|
||||
public String Name { get; set; } = "";
|
||||
public bool Visible { get; set; } = true;
|
||||
public bool Selectable { get; set; }
|
||||
|
||||
|
|
@ -26,7 +26,7 @@ namespace PowerControl.Menu
|
|||
return String.Format("<C{1}>{0}<C>", text, (int)index);
|
||||
}
|
||||
|
||||
public abstract string Render(MenuItem selected);
|
||||
public abstract string Render(MenuItem? selected);
|
||||
|
||||
public abstract void CreateMenu(ToolStripItemCollection collection);
|
||||
public abstract void Update();
|
||||
|
|
|
|||
|
|
@ -198,7 +198,7 @@ namespace PowerControl.Menu
|
|||
return text;
|
||||
}
|
||||
|
||||
public override string Render(MenuItem selected)
|
||||
public override string Render(MenuItem? selected)
|
||||
{
|
||||
string output = "";
|
||||
|
||||
|
|
|
|||
|
|
@ -5,13 +5,15 @@ namespace PowerControl.Menu
|
|||
public class MenuRoot : MenuItem
|
||||
{
|
||||
public IList<MenuItem> Items { get; set; } = new List<MenuItem>();
|
||||
public MenuItem? Selected;
|
||||
public event Action VisibleChanged;
|
||||
|
||||
public MenuItem Selected;
|
||||
public MenuRoot()
|
||||
{
|
||||
VisibleChanged += delegate { };
|
||||
}
|
||||
|
||||
public delegate void VisibleChangedDelegate();
|
||||
public VisibleChangedDelegate? VisibleChanged;
|
||||
|
||||
public MenuItem this[String name]
|
||||
public MenuItem? this[String name]
|
||||
{
|
||||
get
|
||||
{
|
||||
|
|
@ -29,6 +31,7 @@ namespace PowerControl.Menu
|
|||
foreach (var item in Items)
|
||||
item.CreateMenu(collection);
|
||||
}
|
||||
|
||||
public override void Update()
|
||||
{
|
||||
foreach (var item in Items)
|
||||
|
|
@ -39,12 +42,10 @@ namespace PowerControl.Menu
|
|||
{
|
||||
foreach (var item in Items)
|
||||
item.Reset();
|
||||
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
}
|
||||
|
||||
public override string Render(MenuItem parentSelected)
|
||||
public override string Render(MenuItem? parentSelected)
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
|
||||
|
|
@ -71,9 +72,7 @@ namespace PowerControl.Menu
|
|||
|
||||
Visible = true;
|
||||
Update();
|
||||
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -93,8 +92,7 @@ namespace PowerControl.Menu
|
|||
if (item.Visible && item.Selectable)
|
||||
{
|
||||
Selected = item;
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -116,8 +114,7 @@ namespace PowerControl.Menu
|
|||
if (item.Visible && item.Selectable)
|
||||
{
|
||||
Selected = item;
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -131,8 +128,7 @@ namespace PowerControl.Menu
|
|||
if (Selected != null)
|
||||
{
|
||||
Selected.SelectNext();
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -145,8 +141,7 @@ namespace PowerControl.Menu
|
|||
Show();
|
||||
Selected = item;
|
||||
item.SelectNext();
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
}
|
||||
|
||||
public override void SelectPrev()
|
||||
|
|
@ -157,8 +152,7 @@ namespace PowerControl.Menu
|
|||
if (Selected != null)
|
||||
{
|
||||
Selected.SelectPrev();
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -171,8 +165,7 @@ namespace PowerControl.Menu
|
|||
Show();
|
||||
Selected = item;
|
||||
item.SelectPrev();
|
||||
if (VisibleChanged != null)
|
||||
VisibleChanged();
|
||||
VisibleChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -18,7 +18,7 @@ namespace PowerControl.Menu
|
|||
collection.Add(toolStripItem);
|
||||
}
|
||||
|
||||
public override string Render(MenuItem selected)
|
||||
public override string Render(MenuItem? selected)
|
||||
{
|
||||
return Color("---", Colors.Blue);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue