public WheelSide Side = WheelSide.UNASSIGNED; // helps in automatically assigning PWM ports public WheelSetupPanel(RigidNode_Base node, String name, WizardData.WizardWheelType WheelType = WizardData.WizardWheelType.NORMAL) { NodeName = name; // sets the internal name so we can easily work with the panels InitializeComponent(); MinimumSize = new Size(0, 0); // Min size is only used in editor Dock = DockStyle.Top; WheelTypeComboBox.SelectedIndex = ((int)WheelType) - 1; FrictionComboBox.SelectedIndex = 1; this.Node = node; MainGroupBox.Text = name; this.MouseClick += delegate(object sender, MouseEventArgs e) { if (this.Node != null) { StandardAddInServer.Instance.SelectNode(this.Node); } }; BackColor = Color.White; AddInteractEventsToAll(this); }
/// <summary> /// Fills the slot with a new <see cref="WheelSetupPanel"/> and sets its <see cref="WizardData.WizardWheelType"/> properly to <paramref name="wheelType"/> /// </summary> /// <param name="node"></param> /// <param name="wheelType"></param> public void FillSlot(RigidNode_Base node, WizardData.WizardWheelType wheelType = WizardData.WizardWheelType.NORMAL) { wheelSetupPanel = new WheelSetupPanel(node, wheelType); wheelSetupPanel.Dock = DockStyle.Fill; this.SuspendLayout(); while (Controls.Count > 0) { Controls[0].Dispose(); } this.Controls.Add(wheelSetupPanel); wheelSetupPanel.Visible = true; this.ResumeLayout(); wheelSetupPanel._WheelTypeChangedInternal += delegate() { OnWheelTypeChanged(); }; IsFilled = true; }