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;
            }
        }
Exemplo n.º 2
0
        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);
 }
Exemplo n.º 4
0
        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;
            }
        }