void CConfigMsgLogDlg::EnablingAdvSettings(BOOL bEnable) { SLOGINFO sLogStruct; GetLoggingBlock(m_nLogIndexSel, sLogStruct); if(sLogStruct.m_sLogAdvStngs.m_bIsLogOnSize == TRUE) { GetDlgItem(IDC_EDIT_FILE_SIZE)->EnableWindow(bEnable); } else { GetDlgItem(IDC_EDIT_FILE_SIZE)->EnableWindow(!bEnable); } if(sLogStruct.m_sLogAdvStngs.m_bIsLogOnTime == BST_CHECKED) { GetDlgItem(IDC_EDIT_HOURS)->EnableWindow(bEnable); GetDlgItem(IDC_EDIT_MINUTES)->EnableWindow(bEnable); } else { GetDlgItem(IDC_EDIT_HOURS)->EnableWindow(!bEnable); GetDlgItem(IDC_EDIT_MINUTES)->EnableWindow(!bEnable); } EnablingMaxNumEdit(); }
void CFrameProcessor_Common::vUpdateLoggingFlag(void) { BYTE* pbCurrFlag = m_bEditingON ? &m_bLogFlagTmp : &m_bExprnFlag_Log; CLEAR_EXPR_FLAG(*pbCurrFlag); USHORT ushLogBlocks = GetLoggingBlockCount(); for (USHORT i = 0; i < ushLogBlocks; i++) { SLOGINFO sLogInfo; GetLoggingBlock(i, sLogInfo); if (sLogInfo.m_bEnabled == FALSE) { continue; } BYTE* pbResFlag = sLogInfo.m_bResetAbsTimeStamp ? &m_bLogFlagTmp : &m_bExprnFlag_Log; switch (sLogInfo.m_eLogTimerMode) { case TIME_MODE_ABSOLUTE: SET_TM_ABS(*pbCurrFlag); SET_TM_ABS_RES(*pbResFlag); break; case TIME_MODE_RELATIVE: SET_TM_REL(*pbCurrFlag); break; case TIME_MODE_SYSTEM: SET_TM_SYS(*pbCurrFlag); break; } switch (sLogInfo.m_eNumFormat) { case HEXADECIMAL: SET_NUM_HEX(*pbCurrFlag); break; case DEC: SET_NUM_DEC(*pbCurrFlag); break; } } }
void CConfigMsgLogDlg::OnBnClickedCbtnLogFilePath(void) { USES_CONVERSION; CString omStrLogFile = ""; (GetDlgItem(IDC_EDIT_LOGFILEPATH))->GetWindowText(omStrLogFile); // Show File Selection Dialog to select Log File CFileDialog omFileDlg(FALSE, BUSMASTER_LOG_FILE_EXTENSION, omStrLogFile, OFN_HIDEREADONLY | OFN_PATHMUSTEXIST | OFN_EXTENSIONDIFFERENT | OFN_OVERWRITEPROMPT, BUSMASTER_LOG_FILTER, nullptr); // Set the caption omFileDlg.m_ofn.lpstrTitle = _(BUSMASTER_LOG_SELECTION_TITLE); const int nSize = _MAX_PATH * _MAX_PATH; //Total 260 Files char* szTempBuf = new char[nSize]; memset(szTempBuf, 0, sizeof(char) * nSize); omFileDlg.m_ofn.lpstrFile = szTempBuf; omFileDlg.m_ofn.nMaxFile = nSize - 1; // Show File open dialog if (omFileDlg.DoModal() == IDOK) { omStrLogFile = omFileDlg.GetPathName(); for (USHORT i = 0; i < GetLoggingBlockCount(); i++) { SLOGINFO sLogObject; GetLoggingBlock(i, sLogObject); if (_tcsicmp(sLogObject.m_sLogFileName, omStrLogFile.GetBuffer(MAX_PATH)) == 0) { CString omBuf; omBuf.Format(_(BUSMASTER_LOG_ALREADYEXISTS), omStrLogFile); MessageBox(omBuf, "BUSMASTER", MB_OK | MB_ICONINFORMATION); return; } } (GetDlgItem(IDC_EDIT_LOGFILEPATH))->SetWindowText(omStrLogFile); m_omListLogFiles.SetItemText(m_nLogIndexSel, 0, omStrLogFile); vUpdate_Datastore_From_GUI((USHORT) m_nLogIndexSel, IDC_EDIT_LOGFILEPATH); vResetAdvLogParameters(); vAddSuffixToLogFileName(SUFFIX_DEFAULT); } delete[]szTempBuf; }
BOOL CConfigMsgLogDlg::FoundInLogList(CString omFullPath, CString omFileName) { BOOL Found = FALSE; USHORT TotalLogBlocks = GetLoggingBlockCount(); for (USHORT i = 0; (i < TotalLogBlocks) && (Found == FALSE); i++) { SLOGINFO sLogObjTmp; // Iterate through the logging list in the GetLoggingBlock(i, sLogObjTmp); // datastore CString omCurrLogFile = sLogObjTmp.m_sLogFileName; // and retrieve // the log file name // Subject to its content type (whether bare log file name or the // full path), the comparison will be carried out. CString omCompareStr = (omCurrLogFile.Find(_T("\\")) != -1) ? omFullPath : omFileName; Found = (omCurrLogFile.CompareNoCase(omCompareStr) == 0); } return Found; }
void CConfigMsgLogDlg::OnBnClickedCbtnLogFilePath(void) { USES_CONVERSION; CString omStrLogFile = ""; (GetDlgItem(IDC_EDIT_LOGFILEPATH))->GetWindowText(omStrLogFile); // Show File Selection Dialog to select Log File CFileDialog omFileDlg(FALSE, BUSMASTER_LOG_FILE_EXTENSION, omStrLogFile, OFN_HIDEREADONLY | OFN_PATHMUSTEXIST | OFN_EXTENSIONDIFFERENT | OFN_OVERWRITEPROMPT, BUSMASTER_LOG_FILTER, NULL); // Set the caption omFileDlg.m_ofn.lpstrTitle = BUSMASTER_LOG_SELECTION_TITLE; // Show File open dialog if (omFileDlg.DoModal() == IDOK) { omStrLogFile = omFileDlg.GetPathName(); for (USHORT i = 0; i < GetLoggingBlockCount(); i++) { SLOGINFO sLogObject; GetLoggingBlock(i, sLogObject); if (_tcsicmp(sLogObject.m_sLogFileName, omStrLogFile.GetBuffer(MAX_PATH)) == 0) { CString omBuf; omBuf.Format(BUSMASTER_LOG_ALREADYEXISTS, omStrLogFile); AfxMessageBox(omBuf, MB_OK | MB_ICONINFORMATION); return; } } (GetDlgItem(IDC_EDIT_LOGFILEPATH))->SetWindowText(omStrLogFile); m_omListLogFiles.SetItemText(m_nLogIndexSel, 0, omStrLogFile); vUpdate_Datastore_From_GUI((USHORT) m_nLogIndexSel, IDC_EDIT_LOGFILEPATH); } }
BOOL CConfigMsgLogDlg::OnInitDialog() { CDialog::OnInitDialog(); m_ChkbEnableLogOnConnect.SetCheck(m_bLogOnConnect == TRUE? BST_CHECKED : BST_UNCHECKED); m_odStartMsgID.vSetConfigData(IDC_EDIT_STARTMSGID); m_odStopMsgID.vSetConfigData(IDC_EDIT_STOPMSGID); m_odStartMsgID.vSetBase(BASE_HEXADECIMAL); m_odStopMsgID.vSetBase(BASE_HEXADECIMAL); m_odStartMsgID.vSetSigned(false); m_odStopMsgID.vSetSigned(false); vCreateFileList(); InitialiseWindow(); USHORT LogBlocks = GetLoggingBlockCount(); if (LogBlocks > 0) { for (USHORT i = 0; i < LogBlocks; i++) { SLOGINFO sLogObject; HANDLE hFind; WIN32_FIND_DATA FindData; CStdioFile omStdiofile; GetLoggingBlock(i, sLogObject); // check for valid log file CString strTempLog = sLogObject.m_sLogFileName; hFind = FindFirstFile(strTempLog, &FindData); if(hFind == INVALID_HANDLE_VALUE )//file not found { DWORD dError = GetLastError(); if(dError == ERROR_FILE_NOT_FOUND)//file not found { BOOL bFileOpen = omStdiofile.Open(strTempLog, CFile::modeCreate | CFile::modeWrite | CFile::typeBinary); if(bFileOpen == TRUE)///file created, add in the list { omStdiofile.Close(); AddNewItem_GUI(sLogObject, i); } else //not a valid file { RemoveLoggingBlock(i--); //remove the old log data LogBlocks = GetLoggingBlockCount(); //refresh the log count } } else //not a valid filepath / file folder is removed { RemoveLoggingBlock(i--); //remove the old log data LogBlocks = GetLoggingBlockCount(); //refresh the log count } } else ///file found add in the list { AddNewItem_GUI(sLogObject, i); } } m_nLogIndexSel = 0; if(m_omListLogFiles.GetItemCount() > 0 )//check for log files exists { m_omListLogFiles.SetItemState(m_nLogIndexSel, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED); } else { vEnableDisableControls(FALSE);//disable controls if no log files exists } } else { vEnableDisableControls(FALSE); } SetWindowText(m_strCurrWndText); if (m_bLogON) { vEnableDisableControls(FALSE); if(m_omListLogFiles.GetItemCount()>0) { vUpdate_GUI_From_Datastore(0); } GetDlgItem(IDC_CBTN_ADDLOG)->EnableWindow(FALSE); GetDlgItem(IDC_CHECK_RESET_TIMESTAMP)->EnableWindow(FALSE); GetDlgItem(IDC_EDIT_NO_OF_FILES)->EnableWindow(FALSE); GetWindowText(m_strCurrWndText); m_strCurrWndText+=_(" - Read Only as Logging is ON"); SetWindowText(m_strCurrWndText); // If Logging is on GetDlgItem(IDOK)->EnableWindow(FALSE); m_unDispUpdateTimerId = SetTimer(600, 600, nullptr); } else { // If Logging is on GetDlgItem(IDOK)->EnableWindow(TRUE); } // Hide or show the Filters button in the dialog based on the protocol GetDlgItem(IDC_LOG_FILTER)->ShowWindow(SW_SHOWNORMAL); /*if (J1939 == m_eCurrBus) { GetDlgItem(IDC_LOG_FILTER)->ShowWindow(0); }*/ return TRUE; }
void CConfigMsgLogDlg::vUpdate_Datastore_From_GUI(USHORT ushIndex, int CtrlID) { if (m_bEditingON == FALSE) { return; } SLOGINFO sLogStruct; GetLoggingBlock(ushIndex, sLogStruct); sLogStruct.m_sLogAdvStngs.m_nConnectionCount = -1; switch (CtrlID) { case IDC_RBTN_DECIMAL: { sLogStruct.m_eNumFormat = DEC; } break; case IDC_RBTN_HEX: { sLogStruct.m_eNumFormat = HEXADECIMAL; } break; case IDC_RBTN_APPEND: { sLogStruct.m_eFileMode = APPEND_MODE; } break; case IDC_RBTN_OVERWRITE: { sLogStruct.m_eFileMode = OVERWRITE_MODE; } break; case IDC_CHECK_RESET_TIMESTAMP: { if(m_ChkbResetTimeStamp.GetCheck()) { sLogStruct.m_bResetAbsTimeStamp = TRUE; } else { sLogStruct.m_bResetAbsTimeStamp = FALSE; } } break; case IDC_COMB_TIMEMODE: { switch (m_omComboTimeMode.GetCurSel()) { case TIME_ABS_INDEX: sLogStruct.m_eLogTimerMode = TIME_MODE_ABSOLUTE; m_ChkbResetTimeStamp.EnableWindow(1); break; case TIME_REL_INDEX: sLogStruct.m_eLogTimerMode = TIME_MODE_RELATIVE; m_ChkbResetTimeStamp.EnableWindow(0); break; case TIME_SYS_INDEX: default: sLogStruct.m_eLogTimerMode = TIME_MODE_SYSTEM; m_ChkbResetTimeStamp.EnableWindow(0); break; } } break; case IDC_COMB_CHANNEL: { sLogStruct.m_ChannelSelected = m_omComboChannel.GetCurSel(); if (sLogStruct.m_ChannelSelected == 0) // First one denotes ALL { sLogStruct.m_ChannelSelected = CAN_CHANNEL_ALL; } } break; case IDC_EDIT_STARTMSGID: { sLogStruct.m_sLogTrigger.m_unStartID = (UINT) m_odStartMsgID.lGetValue(); } break; case IDC_EDIT_STOPMSGID: { sLogStruct.m_sLogTrigger.m_unStopID = (UINT) m_odStopMsgID.lGetValue(); } break; case IDC_CHKB_STARTTRIGGER: case IDC_CHKB_STOPTRIGGER: { sLogStruct.m_sLogTrigger = GetLogTriggerFromGUI(); } break; case IDC_LOGBLOCK_LST: { sLogStruct.m_bEnabled = (m_omListLogFiles.GetCheck(ushIndex) == TRUE); } break; case IDC_EDIT_LOGFILEPATH: { int MaxCount = sizeof(sLogStruct.m_sLogFileName) / sizeof(char); (GetDlgItem(IDC_EDIT_LOGFILEPATH))->GetWindowText( sLogStruct.m_sLogFileName, MaxCount); } break; case IDC_CHKB_ON_TRANSMISSION: { if(m_ChkLogOnMeasurement.GetCheck() == BST_CHECKED) { sLogStruct.m_sLogAdvStngs.m_bIsLogOnMesurement = TRUE; } else if(m_ChkLogOnMeasurement.GetCheck() == BST_UNCHECKED) { sLogStruct.m_sLogAdvStngs.m_bIsLogOnMesurement = FALSE; } } break; case IDC_CHKB_LOG_FILE_SIZE: { if(m_ChkLogOnSize.GetCheck() == BST_CHECKED) { sLogStruct.m_sLogAdvStngs.m_bIsLogOnSize = TRUE; } else if(m_ChkLogOnSize.GetCheck() == BST_UNCHECKED) { sLogStruct.m_sLogAdvStngs.m_bIsLogOnSize = FALSE; } } break; case IDC_CHKB_LOG_ON_TIME: { if(m_ChkLogOnTime.GetCheck() == BST_CHECKED) { sLogStruct.m_sLogAdvStngs.m_bIsLogOnTime = TRUE; } else if(m_ChkLogOnTime.GetCheck() == BST_UNCHECKED) { sLogStruct.m_sLogAdvStngs.m_bIsLogOnTime = FALSE; } } break; case IDC_EDIT_FILE_SIZE: { CString strSize = ""; GetDlgItem(IDC_EDIT_FILE_SIZE)->GetWindowText(strSize); sLogStruct.m_sLogAdvStngs.m_omSizeInMB = strSize; } break; case IDC_EDIT_HOURS: { CString strHrs = ""; GetDlgItem(IDC_EDIT_HOURS)->GetWindowText(strHrs); sLogStruct.m_sLogAdvStngs.m_omLogTimeHrs = strHrs; } break; case IDC_EDIT_MINUTES: { CString strMins = ""; GetDlgItem(IDC_EDIT_MINUTES)->GetWindowText(strMins); sLogStruct.m_sLogAdvStngs.m_omLogTimeMins = strMins; } break; case IDC_EDIT_NO_OF_FILES: { CString strNoOfFiles = ""; GetDlgItem(IDC_EDIT_NO_OF_FILES)->GetWindowText(strNoOfFiles); sLogStruct.m_sLogAdvStngs.m_omMaxNoOfLogFiles = strNoOfFiles; } break; case IDC_EDIT_LOG_COMMENT: { CString strLogComment = ""; GetDlgItem(IDC_EDIT_LOG_COMMENT)->GetWindowText(strLogComment); sLogStruct.m_sLogAdvStngs.m_omLogComment = strLogComment; } break; } sLogStruct.m_bIsUpdated = TRUE; SetLoggingBlock(ushIndex, sLogStruct); }
void CConfigMsgLogDlg::vUpdate_GUI_From_Datastore(USHORT usIndex) { SLOGINFO sLogStruct; SLOGTRIGGER& sTrigger = sLogStruct.m_sLogTrigger; if (GetLoggingBlock(usIndex, sLogStruct) == S_OK) { vEnableDisableControls(!m_bLogON); EnablingAdvSettings(!m_bLogON); } else { vEnableDisableControls(FALSE); EnablingAdvSettings(FALSE); return; } m_omListLogFiles.SetCheck(usIndex, sLogStruct.m_bEnabled); (GetDlgItem(IDC_EDIT_LOGFILEPATH))->SetWindowText(sLogStruct.m_sLogFileName); SetGUIFromTimeMode(sLogStruct.m_eLogTimerMode); SetGUIFromChannel(sLogStruct.m_ChannelSelected); int CheckBox = (DEC == sLogStruct.m_eNumFormat) ? IDC_RBTN_DECIMAL : IDC_RBTN_HEX; CheckRadioButton(IDC_RBTN_DECIMAL, IDC_RBTN_HEX, CheckBox); CheckBox = (APPEND_MODE == sLogStruct.m_eFileMode) ? IDC_RBTN_APPEND : IDC_RBTN_OVERWRITE; CheckRadioButton(IDC_RBTN_APPEND, IDC_RBTN_OVERWRITE, CheckBox); if(sLogStruct.m_eLogTimerMode == TIME_MODE_ABSOLUTE) { m_ChkbResetTimeStamp.EnableWindow(1); } else { m_ChkbResetTimeStamp.EnableWindow(0); } if(sLogStruct.m_bResetAbsTimeStamp == TRUE) { m_ChkbResetTimeStamp.SetCheck(1); } else { m_ChkbResetTimeStamp.SetCheck(0); } if (sTrigger.m_unTriggerType != NONE) { if (sTrigger.m_unTriggerType == BOTH) // Start and stop trigger edit { // control CheckDlgButton(IDC_CHKB_STARTTRIGGER, BST_CHECKED); CheckDlgButton(IDC_CHKB_STOPTRIGGER, BST_CHECKED); m_odStartMsgID.vSetValue((__int64) sTrigger.m_unStartID); m_odStopMsgID.vSetValue((__int64) sTrigger.m_unStopID); } else { if (sTrigger.m_unTriggerType == START) // Start trigger edit control { CheckDlgButton(IDC_CHKB_STARTTRIGGER, BST_CHECKED); m_odStartMsgID.vSetValue((__int64) sTrigger.m_unStartID); } else { vUpdateControl(IDC_CHKB_STARTTRIGGER, CHECKBOX, CActionFlag::ENABLE_CTRL); vUpdateControl(IDC_EDIT_STARTMSGID, EDITCTRL, CActionFlag::CLEAR_CTRL); } if (sTrigger.m_unTriggerType == STOP) // Stop trigger edit control { CheckDlgButton(IDC_CHKB_STOPTRIGGER, BST_CHECKED); m_odStopMsgID.vSetValue((__int64) sTrigger.m_unStopID); } else { vUpdateControl(IDC_CHKB_STOPTRIGGER, CHECKBOX, CActionFlag::ENABLE_CTRL); vUpdateControl(IDC_EDIT_STOPMSGID, EDITCTRL, CActionFlag::CLEAR_CTRL); } } } else { // Start trigger check box control: clear CheckDlgButton(IDC_CHKB_STARTTRIGGER, BST_UNCHECKED); // Stop trigger check box control: clear CheckDlgButton(IDC_CHKB_STOPTRIGGER, BST_UNCHECKED); // Start trigger edit control: clear and disable vEnableDisableControl(IDC_EDIT_STARTMSGID, EDITCTRL, FALSE); // Stop trigger edit control: clear and disable vEnableDisableControl(IDC_EDIT_STOPMSGID, EDITCTRL, FALSE); } // Retaining Advanced Settings if(sLogStruct.m_sLogAdvStngs.m_bIsLogOnMesurement == TRUE) { CheckDlgButton(IDC_CHKB_ON_TRANSMISSION, BST_CHECKED); } else { CheckDlgButton(IDC_CHKB_ON_TRANSMISSION, BST_UNCHECKED); } if(sLogStruct.m_sLogAdvStngs.m_bIsLogOnSize == TRUE) { CheckDlgButton(IDC_CHKB_LOG_FILE_SIZE, BST_CHECKED); } else { CheckDlgButton(IDC_CHKB_LOG_FILE_SIZE, BST_UNCHECKED); } if(sLogStruct.m_sLogAdvStngs.m_bIsLogOnTime == TRUE) { CheckDlgButton(IDC_CHKB_LOG_ON_TIME, BST_CHECKED); } else { CheckDlgButton(IDC_CHKB_LOG_ON_TIME, BST_UNCHECKED); } EnablingMaxNumEdit(); GetDlgItem(IDC_EDIT_FILE_SIZE)->SetWindowText(sLogStruct.m_sLogAdvStngs.m_omSizeInMB); GetDlgItem(IDC_EDIT_HOURS)->SetWindowText(sLogStruct.m_sLogAdvStngs.m_omLogTimeHrs); GetDlgItem(IDC_EDIT_MINUTES)->SetWindowText(sLogStruct.m_sLogAdvStngs.m_omLogTimeMins); GetDlgItem(IDC_EDIT_NO_OF_FILES)->SetWindowText(sLogStruct.m_sLogAdvStngs.m_omMaxNoOfLogFiles); GetDlgItem(IDC_EDIT_LOG_COMMENT)->SetWindowText(sLogStruct.m_sLogAdvStngs.m_omLogComment);//arun }
BOOL CConfigMsgLogDlg::OnInitDialog() { CDialog::OnInitDialog(); m_ChkbEnableLogOnConnect.SetCheck(m_bLogOnConnect == TRUE? BST_CHECKED : BST_UNCHECKED); m_odStartMsgID.vSetConfigData(IDC_EDIT_STARTMSGID); m_odStopMsgID.vSetConfigData(IDC_EDIT_STOPMSGID); m_odStartMsgID.vSetBase(BASE_HEXADECIMAL); m_odStopMsgID.vSetBase(BASE_HEXADECIMAL); m_odStartMsgID.vSetSigned(false); m_odStopMsgID.vSetSigned(false); vCreateFileList(); //Load channel combo box m_omComboChannel.ResetContent(); if (NULL != GetICANDIL()) { LPARAM lParam = 0; if (S_OK == GetICANDIL()->DILC_GetControllerParams(lParam, NULL, NUMBER_HW)) { m_unChannelCount = (UINT)lParam; } } m_omComboChannel.InsertString(0, _("ALL")); for (UINT i = 1; i <= m_unChannelCount; i++) { CString omChannel; omChannel.Format("%d", i); m_omComboChannel.InsertString(i, omChannel.GetBuffer(MAX_PATH)); } m_omComboChannel.SetCurSel(0); USHORT LogBlocks = GetLoggingBlockCount(); if (LogBlocks > 0) { for (USHORT i = 0; i < LogBlocks; i++) { SLOGINFO sLogObject; HANDLE hFind; WIN32_FIND_DATA FindData; CStdioFile omStdiofile; GetLoggingBlock(i, sLogObject); // check for valid log file CString strTempLog = sLogObject.m_sLogFileName; hFind = FindFirstFile(strTempLog, &FindData); if(hFind == INVALID_HANDLE_VALUE )//file not found { DWORD dError = GetLastError(); if(dError == ERROR_FILE_NOT_FOUND)//file not found { BOOL bFileOpen = omStdiofile.Open(strTempLog, CFile::modeCreate | CFile::modeWrite | CFile::typeBinary); if(bFileOpen == TRUE)///file created, add in the list { omStdiofile.Close(); AddNewItem_GUI(sLogObject, i); } else //not a valid file { RemoveLoggingBlock(i--); //remove the old log data LogBlocks = GetLoggingBlockCount(); //refresh the log count } } else //not a valid filepath / file folder is removed { RemoveLoggingBlock(i--); //remove the old log data LogBlocks = GetLoggingBlockCount(); //refresh the log count } } else ///file found add in the list { AddNewItem_GUI(sLogObject, i); } } m_nLogIndexSel = 0; if(m_omListLogFiles.GetItemCount() > 0 )//check for log files exists { m_omListLogFiles.SetItemState(m_nLogIndexSel, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED); } else { vEnableDisableControls(FALSE);//disable controls if no log files exists } } else { vEnableDisableControls(FALSE); } SetWindowText(m_strCurrWndText); if (m_bLogON) { vEnableDisableControls(FALSE); if(m_omListLogFiles.GetItemCount()>0) { vUpdate_GUI_From_Datastore(0); } GetDlgItem(IDC_CBTN_ADDLOG)->EnableWindow(FALSE); GetDlgItem(IDC_CHECK_RESET_TIMESTAMP)->EnableWindow(FALSE); GetWindowText(m_strCurrWndText); m_strCurrWndText+=_(" - Read Only as Logging is ON"); //SetWindowText(m_strCurrWndText); // PTV [1.6.4] // If Logging is on GetDlgItem(IDOK)->EnableWindow(FALSE); // PTV [1.6.4] SetWindowText(""); m_unDispUpdateTimerId = SetTimer(600, 600, NULL); } else { // PTV [1.6.4] // If Logging is on GetDlgItem(IDOK)->EnableWindow(TRUE); // PTV [1.6.4] } // Hide or show the Filters button in the dialog based on the protocol if (CAN == m_eCurrBus) { GetDlgItem(IDC_LOG_FILTER)->ShowWindow(1); } else if (J1939 == m_eCurrBus) { GetDlgItem(IDC_LOG_FILTER)->ShowWindow(0); } return TRUE; }
void CConfigMsgLogDlg::vUpdate_Datastore_From_GUI(USHORT ushIndex, int CtrlID) { if (m_bEditingON == FALSE) { return; } SLOGINFO sLogStruct; GetLoggingBlock(ushIndex, sLogStruct); switch (CtrlID) { case IDC_RBTN_DECIMAL: { sLogStruct.m_eNumFormat = DEC; } break; case IDC_RBTN_HEX: { sLogStruct.m_eNumFormat = HEXADECIMAL; } break; case IDC_RBTN_APPEND: { sLogStruct.m_eFileMode = APPEND_MODE; } break; case IDC_RBTN_OVERWRITE: { sLogStruct.m_eFileMode = OVERWRITE_MODE; } break; case IDC_CHECK_RESET_TIMESTAMP: { if(m_ChkbResetTimeStamp.GetCheck()) { sLogStruct.m_bResetAbsTimeStamp = TRUE; } else { sLogStruct.m_bResetAbsTimeStamp = FALSE; } } break; case IDC_COMB_TIMEMODE: { switch (m_omComboTimeMode.GetCurSel()) { case TIME_ABS_INDEX: sLogStruct.m_eLogTimerMode = TIME_MODE_ABSOLUTE; m_ChkbResetTimeStamp.EnableWindow(1); break; case TIME_REL_INDEX: sLogStruct.m_eLogTimerMode = TIME_MODE_RELATIVE; m_ChkbResetTimeStamp.EnableWindow(0); break; case TIME_SYS_INDEX: default: sLogStruct.m_eLogTimerMode = TIME_MODE_SYSTEM; m_ChkbResetTimeStamp.EnableWindow(0); break; } } break; case IDC_COMB_CHANNEL: { sLogStruct.m_ChannelSelected = m_omComboChannel.GetCurSel(); if (sLogStruct.m_ChannelSelected == 0) // First one denotes ALL { sLogStruct.m_ChannelSelected = CAN_CHANNEL_ALL; } } break; case IDC_EDIT_STARTMSGID: { sLogStruct.m_sLogTrigger.m_unStartID = (UINT) m_odStartMsgID.lGetValue(); } break; case IDC_EDIT_STOPMSGID: { sLogStruct.m_sLogTrigger.m_unStopID = (UINT) m_odStopMsgID.lGetValue(); } break; case IDC_CHKB_STARTTRIGGER: case IDC_CHKB_STOPTRIGGER: { sLogStruct.m_sLogTrigger = GetLogTriggerFromGUI(); } break; case IDC_LOGBLOCK_LST: { sLogStruct.m_bEnabled = m_omListLogFiles.GetCheck(ushIndex); } break; case IDC_EDIT_LOGFILEPATH: { int MaxCount = sizeof(sLogStruct.m_sLogFileName) / sizeof(char); (GetDlgItem(IDC_EDIT_LOGFILEPATH))->GetWindowText( sLogStruct.m_sLogFileName, MaxCount); } break; } sLogStruct.m_bIsUpdated = TRUE; SetLoggingBlock(ushIndex, sLogStruct); }
void CConfigMsgLogDlg::vUpdate_GUI_From_Datastore(USHORT usIndex) { SLOGINFO sLogStruct; SLOGTRIGGER& sTrigger = sLogStruct.m_sLogTrigger; if (GetLoggingBlock(usIndex, sLogStruct) == S_OK) { vEnableDisableControls(!m_bLogON); } else { vEnableDisableControls(FALSE); return; } m_omListLogFiles.SetCheck(usIndex, sLogStruct.m_bEnabled); (GetDlgItem(IDC_EDIT_LOGFILEPATH))->SetWindowText(sLogStruct.m_sLogFileName); SetGUIFromTimeMode(sLogStruct.m_eLogTimerMode); SetGUIFromChannel(sLogStruct.m_ChannelSelected); int CheckBox = (DEC == sLogStruct.m_eNumFormat) ? IDC_RBTN_DECIMAL : IDC_RBTN_HEX; CheckRadioButton(IDC_RBTN_DECIMAL, IDC_RBTN_HEX, CheckBox); CheckBox = (APPEND_MODE == sLogStruct.m_eFileMode) ? IDC_RBTN_APPEND : IDC_RBTN_OVERWRITE; CheckRadioButton(IDC_RBTN_APPEND, IDC_RBTN_OVERWRITE, CheckBox); if(sLogStruct.m_eLogTimerMode == TIME_MODE_ABSOLUTE) { m_ChkbResetTimeStamp.EnableWindow(1); } else { m_ChkbResetTimeStamp.EnableWindow(0); } if(sLogStruct.m_bResetAbsTimeStamp == TRUE) { m_ChkbResetTimeStamp.SetCheck(1); } else { m_ChkbResetTimeStamp.SetCheck(0); } if (sTrigger.m_unTriggerType != NONE) { if (sTrigger.m_unTriggerType == BOTH) // Start and stop trigger edit { // control CheckDlgButton(IDC_CHKB_STARTTRIGGER, BST_CHECKED); CheckDlgButton(IDC_CHKB_STOPTRIGGER, BST_CHECKED); m_odStartMsgID.vSetValue((__int64) sTrigger.m_unStartID); m_odStopMsgID.vSetValue((__int64) sTrigger.m_unStopID); } else { if (sTrigger.m_unTriggerType == START) // Start trigger edit control { CheckDlgButton(IDC_CHKB_STARTTRIGGER, BST_CHECKED); m_odStartMsgID.vSetValue((__int64) sTrigger.m_unStartID); } else { vUpdateControl(IDC_CHKB_STARTTRIGGER, CHECKBOX, CActionFlag::ENABLE_CTRL); vUpdateControl(IDC_EDIT_STARTMSGID, EDITCTRL, CActionFlag::CLEAR_CTRL); } if (sTrigger.m_unTriggerType == STOP) // Stop trigger edit control { CheckDlgButton(IDC_CHKB_STOPTRIGGER, BST_CHECKED); m_odStopMsgID.vSetValue((__int64) sTrigger.m_unStopID); } else { vUpdateControl(IDC_CHKB_STOPTRIGGER, CHECKBOX, CActionFlag::ENABLE_CTRL); vUpdateControl(IDC_EDIT_STOPMSGID, EDITCTRL, CActionFlag::CLEAR_CTRL); } } } else { // Start trigger check box control: clear CheckDlgButton(IDC_CHKB_STARTTRIGGER, BST_UNCHECKED); // Stop trigger check box control: clear CheckDlgButton(IDC_CHKB_STOPTRIGGER, BST_UNCHECKED); // Start trigger edit control: clear and disable vEnableDisableControl(IDC_EDIT_STARTMSGID, EDITCTRL, FALSE); // Stop trigger edit control: clear and disable vEnableDisableControl(IDC_EDIT_STOPMSGID, EDITCTRL, FALSE); } }
// Getter for a logging block by specifying its index in the list HRESULT CFrameProcessor_J1939::FPJ1_GetLoggingBlock(USHORT ushBlk, SLOGINFO& sLogObject) { return GetLoggingBlock(ushBlk, sLogObject); }