private void EditButton_Click(object sender, EventArgs e) { ElementListItem listItem = (ElementListItem)((Control)sender).Parent.Parent; bool accepted = elements.Editor.ButtonEditor.EditButton((IWheelButton)listItem.Element, elements); if (accepted) { UpdateButtonList(); } }
private void ActOnElement <T>(object child, Func <T, IWheelElements, bool> action) { ElementListItem item = (ElementListItem)((Button)child).Parent.Parent; bool reload = action((T)item.Element, elements); if (reload) { UpdateWheelsList(); } }
private void DeleteButton_Click(object sender, EventArgs e) { ElementListItem listItem = (ElementListItem)((Control)sender).Parent.Parent; IWheelButton button = (IWheelButton)listItem.Element; var dialog = new ComfirmationDialog($"Are you sure you wish to delete button '{button.Label}'?"); if (dialog.ShowDialog() == DialogResult.OK) { Buttons.Remove(button); UpdateButtonList(); } }
public static ElementListItem[] ToElementList(ElementTypeRef[] src) { if (src == null) { return new ElementListItem[] {} } ; ElementListItem[] ret = new ElementListItem[src.Length]; int n = 0; foreach (ElementTypeRef sr in src) { ret[n++] = new ElementListItem(sr.Name, sr.IsRequired, sr.IsChoice); } return(ret); }
private void UpdateWheelsList() { wheelsLayoutPanel.SuspendDrawing(); wheelsLayoutPanel.Controls.Clear(); for (int i = 0; i < elements.Wheels.Count; i++) { var item = new ElementListItem(elements.Wheels[i]); string prefix = elements.Wheels[i] == elements.StartupWheel ? "[Main] " : ""; item.label1.Text = prefix + elements.Wheels[i].Label; item.deleteButton.Click += DeleteWheel_Click; item.editButton.Click += EditWheel_Click; item.BackColor = Color.LightGray; item.UpClick += Item_UpClick; item.DownClick += Item_DownClick; wheelsLayoutPanel.Controls.Add(item); AdjustWidth(item); } wheelsLayoutPanel.ResumeDrawing(); }
public static ElementListItem[] ToElementList(ElementType[] src) { if (src == null) { return new ElementListItem[] {} } ; ElementListItem[] ret = new ElementListItem[src.Length]; int n = 0; foreach (ElementType et in src) { ret[n++] = new ElementListItem(et.Name, false); } return(ret); } }
private void UpdateButtonList() { buttonsLayoutPanel.SuspendDrawing(); buttonsLayoutPanel.Controls.Clear(); foreach (IWheelButton button in Buttons) { var control = new ElementListItem(button); control.label1.Text = button.Label; control.deleteButton.Click += DeleteButton_Click; control.editButton.Click += EditButton_Click; control.UpClick += Control_UpClick; control.DownClick += Control_DownClick; buttonsLayoutPanel.Controls.Add(control); control.Width = control.Parent.Width - 20; } buttonsLayoutPanel.ResumeDrawing(); }