public override void GenerateCommands(GenerateCommandArgs args) { base.GenerateCommands(args); bool editMode = args.EditMode; string area = args.Area; if (area == "main") { if (!editMode) { baudRateMap = new BaudRateMapCollection(); #if DEBUG #endif baudRateMap.Add("Fastest", 0); baudRateMap.Add(460800); baudRateMap.Add(230400); baudRateMap.Add(115200); baudRateMap.Add(57600); baudRateMap.Add(38400); baudRateMap.Add(33600); baudRateMap.Add(28800); baudRateMap.Add(19200); baudRateMap.Add(14400); baudRateMap.Add(9600); baudRateMap.Add(2400); baudRateMap.Add(1200); baudRateMap.Add(300); var animAuto = new CheckCommand { ID = "animAuto", MenuText = "&Auto Detect", Checked = autoDetectAnimation }; animAuto.CheckedChanged += AutoDetect_CheckedChanged; var animEnabled = new CheckCommand { ID = "animEnabled", MenuText = "&Enabled", Checked = animationEnabled }; animEnabled.CheckedChanged += AnimEnabled_CheckedChanged; var aiView = args.Menu.Items.GetSubmenu("&View"); var aiAnim = aiView.Items.GetSubmenu("&Animate", 600); aiAnim.Items.Add(animEnabled, 500); aiAnim.Items.Add(animAuto, 500); aiAnim.Items.AddSeparator(500); foreach (BaudRateMap brm in baudRateMap) { brm.Command.Checked = (baudRate == brm.Baud); aiAnim.Items.Add(brm.Command, 500); } baudRateMap.BaudChanged += baudRateMap_BaudChanged; } } }
public BaudRateMap(BaudRateMapCollection coll, string desc, long baud) { Command = new RadioCommand { ID = "baud" + baud, MenuText = desc, Tag = this }; if (coll.Count > 0) { Command.Controller = coll[0].Command; } Command.Executed += coll.ActionChecked; Baud = baud; }