void SerialPinChanged(object source, SerialPinChangedEventArgs e) { if (!use_for_keyptt && !use_for_paddles) return; if (use_for_keyptt) { switch (e.EventType) { case SerialPinChange.DsrChanged: bool b = commPort.DsrHolding; if (ptt_on_dtr) { CWPTTItem item = new CWPTTItem(b, CWSensorItem.GetCurrentTime()); CWKeyer.PTTEnqueue(item); } if (key_on_dtr) { CWSensorItem item = new CWSensorItem(CWSensorItem.InputType.StraightKey, b); CWKeyer.SensorEnqueue(item); } break; case SerialPinChange.CtsChanged: b = commPort.CtsHolding; if (ptt_on_rts) { CWPTTItem item = new CWPTTItem(b, CWSensorItem.GetCurrentTime()); CWKeyer.PTTEnqueue(item); } if (key_on_rts) { CWSensorItem item = new CWSensorItem(CWSensorItem.InputType.StraightKey, b); CWKeyer.SensorEnqueue(item); } break; } } else if (use_for_paddles) { switch (e.EventType) { case SerialPinChange.DsrChanged: CWSensorItem.InputType type = CWSensorItem.InputType.Dot; if (reverse_paddles) type = CWSensorItem.InputType.Dash; CWSensorItem item = new CWSensorItem(type, commPort.DsrHolding); CWKeyer.SensorEnqueue(item); break; case SerialPinChange.CtsChanged: type = CWSensorItem.InputType.Dash; if (reverse_paddles) type = CWSensorItem.InputType.Dot; item = new CWSensorItem(type, commPort.CtsHolding); CWKeyer.SensorEnqueue(item); break; } } }
private void setptt(bool state) { //console.Keyer.MemoryPTT = state; if (setptt_memory != state) { CWPTTItem item = new CWPTTItem(state, CWSensorItem.GetCurrentTime()); CWKeyer.PTTEnqueue(item); ptt = state; if (state) pttLed.BackColor = System.Drawing.Color.Red; else pttLed.BackColor = System.Drawing.Color.Black; setptt_memory = state; } // if (newptt) Thread.Sleep(200); }