private void SetJoinList(eSignalType SelectedSignalType) { smartObjectJoin_ListBox.Items.Clear(); switch (SelectedSignalType) { case eSignalType.AnalogInput: foreach (var join in selectedSmartGraphic.analogInputSignalNames) { smartObjectJoin_ListBox.Items.Add(join.currentJoin); } break; case eSignalType.AnalogOutput: foreach (var join in selectedSmartGraphic.analogOutputSignalNames) { smartObjectJoin_ListBox.Items.Add(join.currentJoin); } break; case eSignalType.DigitalInput: foreach (var join in selectedSmartGraphic.digitalInputSignalNames) { smartObjectJoin_ListBox.Items.Add(join.currentJoin); } break; case eSignalType.DigitalOutput: foreach (var join in selectedSmartGraphic.digitalOutputSignalNames) { smartObjectJoin_ListBox.Items.Add(join.currentJoin); } break; case eSignalType.SerialInput: foreach (var join in selectedSmartGraphic.serialInputSignalNames) { smartObjectJoin_ListBox.Items.Add(join.currentJoin); } break; case eSignalType.SerialOutput: foreach (var join in selectedSmartGraphic.serialOutputSignalNames) { smartObjectJoin_ListBox.Items.Add(join.currentJoin); } break; default: break; } }
private void AddSignal(string Name, eSignalType SignalType) { switch (SignalType) { case eSignalType.AnalogInput: analogInputSignalNames.Add(new JoinInfo() { currentJoin = Name, oldJoin = "~" }); break; case eSignalType.AnalogOutput: analogOutputSignalNames.Add(new JoinInfo() { currentJoin = Name, oldJoin = "~" }); break; case eSignalType.DigitalInput: digitalInputSignalNames.Add(new JoinInfo() { currentJoin = Name, oldJoin = "~" }); break; case eSignalType.DigitalOutput: digitalOutputSignalNames.Add(new JoinInfo() { currentJoin = Name, oldJoin = "~" }); break; case eSignalType.SerialInput: serialInputSignalNames.Add(new JoinInfo() { currentJoin = Name, oldJoin = "~" }); break; case eSignalType.SerialOutput: serialOutputSignalNames.Add(new JoinInfo() { currentJoin = Name, oldJoin = "~" }); break; default: break; } }
private void inputJoin_Btn_Click(object sender, EventArgs e) { outputJoin_Btn.BackColor = Color.White; inputJoin_Btn.BackColor = Color.Black; if (Analog_Btn.BackColor == Color.White) { selectedSignalType = eSignalType.AnalogInput; } else if (Digital_btn.BackColor == Color.White) { selectedSignalType = eSignalType.DigitalInput; } else if (Serial_Btn.BackColor == Color.White) { selectedSignalType = eSignalType.SerialInput; } SetJoinList(selectedSignalType); }
private void ParseSmartObjectJoins(string SmartGraphicJoinInfo) { char delimitter = (char)13; string data = SmartGraphicJoinInfo; int start, end; bool parseJoins = true; //Flag to control when joins should be parsed or not. Once the ParamCue1 string is found, this flag gets set high //Console.WriteLine("Data is: " + data); try { smartGraphicsSignalInfo = SmartGraphicJoinInfo.Split(delimitter); //Console.WriteLine("Length = " + smartGraphicsSignalInfo.Length); for (int i = 0; i < smartGraphicsSignalInfo.Length; i++) { if (smartGraphicsSignalInfo[i].IndexOf((char)10) > 0) { smartGraphicsSignalInfo[i] = smartGraphicsSignalInfo[i].Remove(smartGraphicsSignalInfo[i].IndexOf((char)10), 1); } if (smartGraphicsSignalInfo[i].Contains("ParamCue")) { Console.WriteLine("ParamCue found at index " + i); parseJoins = false; } else if (smartGraphicsSignalInfo[i].Contains("Cue") && !smartGraphicsSignalInfo[i].Contains("UNUSED") && !smartGraphicsSignalInfo[i].Contains("ParamCue")) { Console.WriteLine("Parse Joins is " + parseJoins); if (parseJoins) { string signalName = ""; string signalInfo = ""; eSignalType signalType = eSignalType.Unassigned; Console.WriteLine("Text to parse = {0}", smartGraphicsSignalInfo[i]); start = smartGraphicsSignalInfo[i].IndexOf('=') + 1; end = smartGraphicsSignalInfo[i].Length; //Console.WriteLine("Start Is: " + start + "& Finish Is " + end); //Grab the Signal Name //Console.WriteLine("trimmed = " + smartGraphicsSignalInfo[i].Trim()); signalName = smartGraphicsSignalInfo[i].Substring(start, end - start); //Check the next signal for its type signalInfo = smartGraphicsSignalInfo[i + 1]; if (signalInfo.Contains("Analog")) { if (analogStartIndex == 0) { analogStartIndex = i; } if (signalInfo.Contains("Input")) { signalType = eSignalType.AnalogInput; } else { signalType = eSignalType.AnalogOutput; } } else if (signalInfo.Contains("Digital")) { if (analogStartIndex == 0) { digitalStartIndex = i; } if (signalInfo.Contains("Input")) { signalType = eSignalType.DigitalInput; } else { signalType = eSignalType.DigitalOutput; } } else if (signalInfo.Contains("Serial")) { if (analogStartIndex == 0) { serialStartIndex = i; } if (signalInfo.Contains("Input")) { signalType = eSignalType.SerialInput; } else { signalType = eSignalType.SerialOutput; } } //Console.WriteLine(string.Format("{0} - {1}", signalName, signalType.ToString())); AddSignal(signalName, signalType); } } else if (smartGraphicsSignalInfo[i].Contains("SmartObjId")) { string smartObjectIDString; start = smartGraphicsSignalInfo[i].IndexOf('=') + 1; end = smartGraphicsSignalInfo[i].Length - 1; smartObjectIDString = smartGraphicsSignalInfo[i].Substring(start, end - start); iD = Convert.ToUInt32(smartObjectIDString); //Console.WriteLine(iD); } } //CompleteBuild(); } catch (Exception e) { throw; } }