示例#1
0
        void SerialPinChanged(object source, SerialPinChangedEventArgs e)
        {
            if (!use_for_keyptt && !use_for_paddles && !use_for_cat_ptt)
            {
                return;
            }

            if (use_for_keyptt)
            {
                switch (e.EventType)
                {
                case SerialPinChange.DsrChanged:

                    if (ptt_on_dtr)
                    {
                        CWInput.KeyerPTT = commPort.DsrHolding;
                    }

                    if (key_on_dtr)
                    {
                        NetworkIO.SetCWX(Convert.ToInt32(commPort.DsrHolding));
                    }
                    break;

                case SerialPinChange.CtsChanged:

                    if (ptt_on_rts)
                    {
                        CWInput.KeyerPTT = commPort.CtsHolding;
                    }

                    if (key_on_rts)
                    {
                        NetworkIO.SetCWX(Convert.ToInt32(commPort.CtsHolding));
                    }
                    break;
                }
            }
            else if (use_for_paddles)
            {
                switch (e.EventType)
                {
                case SerialPinChange.DsrChanged:
                    NetworkIO.SetCWDot(Convert.ToInt32(commPort.DsrHolding));
                    break;

                case SerialPinChange.CtsChanged:
                    NetworkIO.SetCWDash(Convert.ToInt32(commPort.CtsHolding));
                    break;
                }
            }

            if (use_for_cat_ptt)
            {
                switch (e.EventType)
                {
                case SerialPinChange.DsrChanged:

                    if (ptt_on_dtr)
                    {
                        CWInput.CATPTT = commPort.DsrHolding;
                    }
                    break;

                case SerialPinChange.CtsChanged:

                    if (ptt_on_rts)
                    {
                        CWInput.CATPTT = commPort.CtsHolding;
                    }
                    break;
                }
            }
        }