VOID CFlags::vSetFlagStatus(eCANMONITORFLAG eWhichFlag, INT nValue) { m_omCriticalSec.Lock(); switch( eWhichFlag ) { case LOGTODISPLAY: m_bLogToWindow = nValue; break; case LOGTOFILE: { if (m_bLogEnable != nValue) { theApp.vSetConfigurationModified(); } m_bLogEnable = nValue ; } break; case LOGTOFILE_LIN: { if (m_bLogEnable != nValue) { theApp.vSetConfigurationModified(); } m_bLogEnable = nValue ; } break; case REPLAYMODE: m_wReplayMode = (WORD)nValue ; break; case REPLAYFILESELECTED: m_bReplayFileSelected = nValue; break; case LOGFILTER: if ( m_bLogFilterOn != nValue ) { theApp.vSetConfigurationModified(); } m_bLogFilterOn = nValue ; break; case LOGFILTER_LIN: if ( m_bLogFilterOnLIN != nValue ) { theApp.vSetConfigurationModified(); } m_bLogFilterOnLIN = nValue ; break; case DISPLAYFILTERON : if ( m_bDisplayFilterOn != nValue) { theApp.vSetConfigurationModified(); } m_bDisplayFilterOn = nValue; break; case DISPLAYFILTERONLIN : if ( m_bDisplayFilterOnLin != nValue) { theApp.vSetConfigurationModified(); } m_bDisplayFilterOnLin = nValue; break; case TRANSLATIONMODE : if ( m_bTranslationMode != nValue) { theApp.vSetConfigurationModified(); } m_bTranslationMode = nValue; break; case FILTERUNDEFINEDMSGS : m_bFilterUndefinedMsgs = nValue; break; case RXMSG : m_bRxMsg = nValue; break; case SELECTDATABASEFILE : m_bSelectDatabaseFile = nValue ; break; case DLLLOADED : m_bDllLoaded = nValue; break; case TIMERBUTTON : m_bTimerButtonOn = nValue; break; case MSGHANDLERBUTTON : m_bMsgHandlerOn = nValue; break; case FUNCEDITOR : m_bFunctionEditorOn = nValue; break; case FILTERTXMSGS : m_bFilterTxMsg = nValue; break; case DBOPEN : m_bDbOpen = nValue; break; case DBOPEN_J1939 : m_bDbOpenJ1939 = nValue; break; case HEX : if ( m_bDisplayHexON != nValue) { theApp.vSetConfigurationModified(); } m_bDisplayHexON = nValue; break; case DISPLAYTIMEMODE: if ( static_cast<INT>(m_wDisplayTimeMode) != nValue ) { theApp.vSetConfigurationModified(); } m_wDisplayTimeMode = static_cast<WORD>(nValue); break; case SCROLLING : // Update if there is a change if( m_bScrolling != nValue ) { m_bScrolling = nValue; // Set the modification flag to true theApp.vSetConfigurationModified(); } break; case SENDMESG: m_bMessageSelected = nValue; break; case SENDMESGLIN: m_bMessageSelectedLin = nValue; break; case OVERWRITE: if ( m_bOverwriteEnable != nValue ) { theApp.vSetConfigurationModified(); } m_bOverwriteEnable = nValue; break; case TIME_DELAY_REPLAY_FILE: m_bTimeDelayReplayFile = nValue; break; case PASS_STOP_FILTER: m_bStopFilter = nValue; break; case CONNECTED: m_bConnected = nValue; break; case LIN_CONNECTED: m_bConnectedLin = nValue; break; case KEY_HANDLER_ON: m_bKeyHandlerOn = nValue; break; case ERROR_HANDLER: m_bErrorHandlerOn = nValue; break; case DLL_HANDLER: m_bDLLHandlerOn = nValue; break; case ALL_HANDLER: m_bALLHandler = nValue; break; case CONTROLLER_MODE: m_wControllerMode = static_cast<WORD>(nValue); break; case PARALLEL_PORT_EPP: m_bParallelPortEPP = nValue; break; case LOGHEXON: if (m_bLogHexON != nValue ) { theApp.vSetConfigurationModified(); } m_bLogHexON = nValue; break; case LOGTIMEMODE: if ( static_cast<WORD>(m_wLogTimeMode) != nValue ) { theApp.vSetConfigurationModified(); } m_wLogTimeMode = static_cast<WORD>(nValue); break; case eLOGOVERWRITEMODEON: m_bLogOverWriteON = nValue; break; case eLOGREPLAYMSGTYPE: m_nReplayMsgType = nValue; break; case SEND_SIGNAL_MSG: m_bSendSignalMSg = nValue; break; case ACTIVATED_J1939: m_bActivatedJ1939 = (BOOL) nValue; break; case REPLAYFILTER: m_bReplayFilter = nValue; break; case FLEXRAYSENDMSG: m_bFlexRaySendMsg = nValue; break; case ADRESSCLAIM_J1939: m_bJAddressClaimed = nValue; break; default: ASSERT(FALSE); // Invalid flag enum value } m_omCriticalSec.Unlock(); }