public VMTool() { _form = new VMForm(); _form.ToolSelected += VMToolSelected; _form.DeselectAll += DeselectAll; _form.Reset += Reset; _form.SelectError += SelectError; _form.FixAllErrors += FixAllErrors; _form.FixError += FixError; _tools = new List<VMSubTool>(); AddTool(new StandardTool(this)); AddTool(new ScaleTool(this)); AddTool(new EditFaceTool(this)); _currentTool = _tools.FirstOrDefault(); }
public void AddTool(VMSubTool tool) { var rdo = new RadioButton { Text = tool.GetName(), AutoSize = false, Size = new Size(110, 17) }; rdo.Click += (sender, e) => SelectTool(tool); radioLayoutPanel.Controls.Add(rdo); if (!_tools.Any()) { rdo.Checked = true; SelectTool(tool); } _tools.Add(tool); }
private void VMToolSelected(object sender, VMSubTool tool) { if (_currentTool == tool) return; _form.SetSelectedTool(tool); if (_currentTool != null) _currentTool.ToolDeselected(false); _currentTool = tool; if (_currentTool != null) _currentTool.ToolSelected(false); }
private void AddTool(VMSubTool tool) { _form.AddTool(tool); _tools.Add(tool); }
public void SelectTool(VMSubTool tool) { ControlPanel.Text = tool.GetName(); ControlPanel.Controls.Clear(); if (tool.Control != null) { ControlPanel.Controls.Add(tool.Control); tool.Control.Dock = DockStyle.Fill; } OnToolSelected(tool); }
protected virtual void OnToolSelected(VMSubTool tool) { if (ToolSelected != null) { ToolSelected(this, tool); } }
public void SetSelectedTool(VMSubTool tool) { foreach (RadioButton rb in radioLayoutPanel.Controls) { if (rb.Text == tool.GetName()) { if (!rb.Checked) rb.Checked = true; return; } } }