Files
EF3-Interface/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/FileUtilitiesDlg.cpp
T
TAO Cheng 5a8e27e70d Merge
2013-07-22 14:34:50 +08:00

154 lines
4.6 KiB
C++

// FileUtilitiesDlg.cpp : implementation file
//
#include "stdafx.h"
#include "Mv_Util.h"
#include "Mv_File_Utilities.h"
#include "FileUtilitiesDlg.h"
#include "afxdialogex.h"
// CFileUtilitiesDlg dialog
IMPLEMENT_DYNAMIC(CFileUtilitiesDlg, CDialogEx)
CFileUtilitiesDlg::CFileUtilitiesDlg(CWnd* pParent /*=NULL*/)
: CDialogEx(CFileUtilitiesDlg::IDD, pParent)
{
}
CFileUtilitiesDlg::~CFileUtilitiesDlg()
{
}
void CFileUtilitiesDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CFileUtilitiesDlg, CDialogEx)
ON_BN_CLICKED(IDOK, &CFileUtilitiesDlg::OnBnClickedOk)
ON_BN_CLICKED(IDC_BUTTON_BROWSE, &CFileUtilitiesDlg::OnBnClickedButtonBrowse)
ON_BN_CLICKED(IDCANCEL, &CFileUtilitiesDlg::OnBnClickedCancel)
ON_BN_CLICKED(IDC_RADIO_OUT_EXTRACT, &CFileUtilitiesDlg::OnBnClickedRadioExtract)
ON_BN_CLICKED(IDC_RADIO_DUMP_BINARY, &CFileUtilitiesDlg::OnBnClickedRadioDumpBinary)
ON_BN_CLICKED(IDC_RADIO_HEX_ASCII2BIN, &CFileUtilitiesDlg::OnBnClickedRadioHexAscii2bin)
ON_BN_CLICKED(IDC_RADIO_DEDUPE, &CFileUtilitiesDlg::OnBnClickedRadioDedupe)
END_MESSAGE_MAP()
//==============================================================================
void CFileUtilitiesDlg::OnBnClickedOk()
{
char _criteria[256];
CString _extractString;
CMv_File_Utilities *m_FileUtilities = new CMv_File_Utilities();
if (((CButton *)GetDlgItem(IDC_RADIO_2BIN))->GetCheck())
{
}
else
if (((CButton *)GetDlgItem(IDC_RADIO_DEDUPE))->GetCheck())
{
m_FileUtilities->DedupeFunction(&m_csInputFile);
}
else
if (((CButton *)GetDlgItem(IDC_RADIO_DUMP_BINARY))->GetCheck())
{
m_FileUtilities->DumpBin(&m_csInputFile);
}
else
if (((CButton *)GetDlgItem(IDC_RADIO_DUMP_PRS))->GetCheck())
{
m_FileUtilities->DumpPrs(&m_csInputFile);
}
else
if (((CButton *)GetDlgItem(IDC_RADIO_OUT_EXTRACT))->GetCheck())
{
GetDlgItem(IDC_EDIT_CRITERIA)->GetWindowText(_extractString);
if (_extractString.GetLength() == 0)
{
strcpy(_criteria, "Poll");
// MessageBox(_T("Null Criteria, operation exit."), _T("Warning Message"), MB_OK);
}
else
{
size_t sConverted;
wcstombs_s(&sConverted, _criteria, _extractString.GetLength()+1, _extractString, _TRUNCATE);
}
}
else
{
m_FileUtilities->ExtractCommand(&m_csInputFile, (char *)_criteria, ((CButton *)GetDlgItem(IDC_CHECK_NEGATE))->GetCheck());
};
MessageBox(_T("Done."), _T("Message"), MB_OK);
delete m_FileUtilities;
m_FileUtilities = NULL;
}
//==============================================================================
void CFileUtilitiesDlg::OnBnClickedButtonBrowse()
{
CString strFilters;
CString strExt;
strFilters = _T("All Files (*.*)|*.*||");
strExt = _T("*");
CString m_csLogFile = _T("");
CString strMsg;
CFileDialog fileDlg(TRUE, strExt, (LPCTSTR) m_csLogFile, OFN_FILEMUSTEXIST| OFN_HIDEREADONLY, strFilters, this);
if ( fileDlg.DoModal ()==IDOK )
{
m_csInputFile = fileDlg.GetPathName();
GetDlgItem(IDC_EDIT_INPUT_FILE)->SetWindowText(m_csInputFile);
};
}
//==============================================================================
//===========================================================================
BOOL CFileUtilitiesDlg::OnInitDialog()
{
((CButton *)GetDlgItem(IDC_RADIO_DEDUPE))->SetCheck(0);
((CButton *)GetDlgItem(IDC_RADIO_HEX_ASCII2BIN))->SetCheck(0);
((CButton *)GetDlgItem(IDC_RADIO_DUMP_BINARY))->SetCheck(0);
((CButton *)GetDlgItem(IDC_RADIO_OUT_EXTRACT))->SetCheck(0);
((CButton *)GetDlgItem(IDC_RADIO_DUMP_PRS))->SetCheck(1);
((CButton *)GetDlgItem(IDC_EDIT_CRITERIA))->EnableWindow(false);
((CButton *)GetDlgItem(IDC_CHECK_NEGATE))->EnableWindow(false);
return TRUE;
};
void CFileUtilitiesDlg::OnBnClickedCancel()
{
CDialogEx::OnCancel();
}
void CFileUtilitiesDlg::OnBnClickedRadioExtract()
{
((CButton *)GetDlgItem(IDC_EDIT_CRITERIA))->EnableWindow(true);
((CButton *)GetDlgItem(IDC_CHECK_NEGATE))->EnableWindow(true);
}
void CFileUtilitiesDlg::OnBnClickedRadioDumpBinary()
{
((CButton *)GetDlgItem(IDC_EDIT_CRITERIA))->EnableWindow(false);
((CButton *)GetDlgItem(IDC_CHECK_NEGATE))->EnableWindow(false);
}
void CFileUtilitiesDlg::OnBnClickedRadioHexAscii2bin()
{
((CButton *)GetDlgItem(IDC_EDIT_CRITERIA))->EnableWindow(false);
((CButton *)GetDlgItem(IDC_CHECK_NEGATE))->EnableWindow(false);
}
void CFileUtilitiesDlg::OnBnClickedRadioDedupe()
{
((CButton *)GetDlgItem(IDC_EDIT_CRITERIA))->EnableWindow(false);
((CButton *)GetDlgItem(IDC_CHECK_NEGATE))->EnableWindow(false);
}