public static StaticButtonAsset CreateButton(FloatRectangle position, ButtonBasics bb, float fontMargin = 0) { var buttonAsset = new StaticButtonAsset(position, bb.Text, (args) => { Debug.WriteLine(bb.Text + " clicked"); }, fontMargin: fontMargin); if (bb.Symbol != null) { buttonAsset.Symbol.Value = bb.Symbol; } //if (bb.Text == "---") //{ // buttonAsset. //} if (bb.ClickAction != null) { buttonAsset.Clicked.Action = bb.ClickAction; } else { buttonAsset.Clicked.Action = (args) => { Debug.WriteLine(bb.Text + " autoclicked"); }; } buttonAsset.Enabled.Value = bb.Enabled; if (bb.OverrideBgColor != null) { buttonAsset.Normal.Value.BackgroundColor = bb.OverrideBgColor.Value; } return(buttonAsset); }
public static List <StaticButtonAsset> CreateButtonHorizontalStack(Vector2 position, float width, float height, float margin, List <ButtonBasics> buttonBasics, float fontMargin = 0) { List <StaticButtonAsset> result = new List <StaticButtonAsset>(); Vector2 currentPos = position + new Vector2(margin, 0); foreach (ButtonBasics bb in buttonBasics) { var buttonAsset = new StaticButtonAsset(new FloatRectangle(currentPos.X, currentPos.Y, width - margin, height), bb.Text, fontMargin: fontMargin); buttonAsset.Clicked.Action = bb.ClickAction; buttonAsset.Enabled.Value = bb.Enabled; result.Add(buttonAsset); currentPos = new Vector2(currentPos.X + width + margin * 2, currentPos.Y); } return(result); }
//public void Update(_ButtonAsset source) //{ // this.Position = source.Position; // this.Symbol = source.Symbol; // this.ClickAction = source.ClickAction; // this.Enabled = source.Enabled; // this.Normal = source.Normal; // this.Hover = source.Hover; // this.Disabled = source.Disabled; // this.Pressing = source.Pressing; //} public static List <StaticButtonAsset> CreateButtonStack(Vector2 position, float width, float height, float margin, List <ButtonBasics> buttonBasics, float fontMargin = 0) { List <StaticButtonAsset> result = new List <StaticButtonAsset>(); Vector2 currentPos = position; foreach (ButtonBasics bb in buttonBasics) { var txt = bb.Text; var theight = height; if (bb.Text == "---") { txt = "-------------------------"; theight = theight / 4; } var buttonAsset = new StaticButtonAsset(new FloatRectangle(currentPos.X, currentPos.Y, width, theight), txt, (args) => { Debug.WriteLine(bb.Text + " clicked"); }, fontMargin: fontMargin); if (bb.Symbol != null) { buttonAsset.Symbol.Value = bb.Symbol; } //if (bb.Text == "---") //{ // buttonAsset. //} if (bb.ClickAction != null) { buttonAsset.Clicked.Action = bb.ClickAction; } else { buttonAsset.Clicked.Action = (args) => { Debug.WriteLine(bb.Text + " autoclicked"); }; } buttonAsset.Enabled.Value = bb.Enabled; result.Add(buttonAsset); currentPos = new Vector2(currentPos.X, currentPos.Y + theight + margin); } return(result); }