Dim WorkEventMask As Integer Sub Form_Load () Remove_Items_From_SysMenu EventDlg Initialize CenterDialog EventDlg End Sub Sub Initialize () WorkEventMask = CommEventMask Clear_To_Send_Check.Value = Abs((WorkEventMask And EV_CTS) = EV_CTS) Data_Set_Ready_Check.Value = Abs((WorkEventMask And EV_DSR) = EV_DSR) Receive_Line_Detect_Check.Value = Abs((WorkEventMask And EV_RLSD) = EV_RLSD) Characters_Received_Check.Value = Abs((WorkEventMask And EV_RXCHAR) = EV_RXCHAR) Event_Character_Received_Check.Value = Abs((WorkEventMask And EV_RXFLAG) = EV_RXFLAG) Last_Character_Sent_Check.Value = Abs((WorkEventMask And EV_TXEMPTY) = EV_TXEMPTY) Break_Detected_Check.Value = Abs((WorkEventMask And EV_BREAK) = EV_BREAK) Ring_Indicator_Check.Value = Abs((WorkEventMask And EV_RING) = EV_RING) Line_Status_Error_Check.Value = Abs((WorkEventMask And EV_ERR) = EV_ERR) Printer_Error_Check.Value = Abs((WorkEventMask And EV_PERR) = EV_PERR) End Sub Sub Reset_Command_Click () Initialize End Sub Sub OK_Command_Click () If CommDeviceNum > 0 And CommHandle > -1 Then If WorkEventMask = CommEventMask Then Unload EventDlg Exit Sub End If UpdateCaption " DIALOG: Change Active Settings (Yes), Post-Pone (No), Return to Dialog (Cancel)", 0 Result% = MsgBox("Port Already Active!" + Chr$(13) + "Activate settings Now?", 3 + 16 + 256, "Terminal Sampler II - Port Active") Select Case Result% Case 6 UpdateCaption " Changing Port Settings LIVE!", 0 CommEventMask = WorkEventMask PostEventMask = WorkEventMask ApiErr% = SetCommEventMask(CommHandle, CommEventMask) Unload EventDlg Case 7 UpdateCaption " Settings Post-Poned until next CONNECT", 0 PostEventMask = WorkEventMask Unload EventDlg Case Else UpdateCaption " DIALOG: " + caption, 0 End Select Else CommEventMask = WorkEventMask PostEventMask = WorkEventMask Unload EventDlg End If End Sub Sub Cancel_Command_Click () Unload EventDlg End Sub Sub Break_Detected_Check_Click () If Break_Detected_Check.Value Then WorkEventMask = WorkEventMask Or EV_BREAK Else WorkEventMask = WorkEventMask And (EV_ALL - EV_BREAK) End If End Sub Sub Characters_Received_Check_Click () If Characters_Received_Check.Value Then WorkEventMask = WorkEventMask Or EV_RXCHAR Else WorkEventMask = WorkEventMask And (EV_ALL - EV_RXCHAR) End If End Sub Sub Clear_To_Send_Check_Click () If Clear_To_Send_Check.Value Then WorkEventMask = WorkEventMask Or EV_CTS Else WorkEventMask = WorkEventMask And (EV_ALL - EV_CTS) End If End Sub Sub Data_Set_Ready_Check_Click () If Data_Set_Ready_Check.Value Then WorkEventMask = WorkEventMask Or EV_DSR Else WorkEventMask = WorkEventMask And (EV_ALL - EV_DSR) End If End Sub Sub Event_Character_Received_Check_Click () If Event_Character_Received_Check.Value Then WorkEventMask = WorkEventMask Or EV_RXFLAG Else WorkEventMask = WorkEventMask And (EV_ALL - EV_RXFLAG) End If End Sub Sub Last_Character_Sent_Check_Click () If Last_Character_Sent_Check.Value Then WorkEventMask = WorkEventMask Or EV_TXEMPTY Else WorkEventMask = WorkEventMask And (EV_ALL - EV_TXEMPTY) End If End Sub Sub Line_Status_Error_Check_Click () If Line_Status_Error_Check.Value Then WorkEventMask = WorkEventMask Or EV_ERR Else WorkEventMask = WorkEventMask And (EV_ALL - EV_ERR) End If End Sub Sub Printer_Error_Check_Click () If Printer_Error_Check.Value Then WorkEventMask = WorkEventMask Or EV_PERR Else WorkEventMask = WorkEventMask And (EV_ALL - EV_PERR) End If End Sub Sub Receive_Line_Detect_Check_Click () If Receive_Line_Detect_Check.Value Then WorkEventMask = WorkEventMask Or EV_RLSD Else WorkEventMask = WorkEventMask And (EV_ALL - EV_RLSD) End If End Sub Sub Ring_Indicator_Check_Click () If Ring_Indicator_Check.Value Then WorkEventMask = WorkEventMask Or EV_RING Else WorkEventMask = WorkEventMask And (EV_ALL - EV_RING) End If End Sub Sub Form_Paint () UpdateCaption " DIALOG: " + caption, 0 End Sub