// SaveRes.cpp : implementation file // #include "stdafx.h" #include "ocrutil.h" #include "SaveRes.h" #include "CharOpts.h" #include "MarkOpts.h" #include "ParaOpts.h" #include "DocOpts.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CSaveResult dialog CSaveResult::CSaveResult(L_HDOC hDoc, CWnd* pParent /*=NULL*/) : CDialog(CSaveResult::IDD, pParent) { //{{AFX_DATA_INIT(CSaveResult) m_csFileName = _T(""); //}}AFX_DATA_INIT memset(&m_ResOpts, 0, sizeof(RESULTOPTIONS)); m_ResOpts.uStructSize = sizeof(RESULTOPTIONS); m_hDoc = hDoc; } void CSaveResult::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CSaveResult) DDX_Control(pDX, IDC_CMB_FORMAT_NAME, m_cmbFmtName); DDX_Control(pDX, IDC_CMB_FORMAT_LEVEL, m_cmbFmtLevel); DDX_Control(pDX, IDOK, m_btnOK); DDX_Text(pDX, IDC_EDIT_RES_FILE_NAME, m_csFileName); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CSaveResult, CDialog) //{{AFX_MSG_MAP(CSaveResult) ON_BN_CLICKED(IDC_BTN_OPT_CHARACTER, OnBtnOptCharacter) ON_BN_CLICKED(IDC_BTN_OPT_DOCUMENT, OnBtnOptDocument) ON_BN_CLICKED(IDC_BTN_OPT_MARK, OnBtnOptMark) ON_BN_CLICKED(IDC_BTN_OPT_PARAGRAPH, OnBtnOptParagraph) ON_BN_CLICKED(IDC_BTN_RES_BROWSE, OnBtnResBrowse) ON_EN_CHANGE(IDC_EDIT_RES_FILE_NAME, OnChangeEditResFileName) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CSaveResult message handlers BOOL CSaveResult::OnInitDialog() { CDialog::OnInitDialog(); m_cmbFmtLevel.AddString(TEXT("Full")); m_cmbFmtLevel.AddString(TEXT("Part")); m_cmbFmtLevel.AddString(TEXT("Drop")); m_cmbFmtLevel.SetItemData(0, FORMAT_LEVEL_FULL); m_cmbFmtLevel.SetItemData(1, FORMAT_LEVEL_PART); m_cmbFmtLevel.SetItemData(2, FORMAT_LEVEL_DROP); m_cmbFmtLevel.SetCurSel(0); SetDlgItemText(IDC_EDIT_RES_FILE_NAME, TEXT("")); m_cmbFmtName.AddString(TEXT("General Word Processor")); m_cmbFmtName.AddString(TEXT("2G Type 2")); m_cmbFmtName.AddString(TEXT("2G Type 3")); m_cmbFmtName.AddString(TEXT("Rec ASCII (Standard)")); m_cmbFmtName.AddString(TEXT("Rec ASCII (StandardEx)")); m_cmbFmtName.AddString(TEXT("Rec ASCII (Formatted)")); m_cmbFmtName.AddString(TEXT("Rich Text Format")); m_cmbFmtName.AddString(TEXT("WordPerfect 8")); m_cmbFmtName.AddString(TEXT("Word 97, 2000, XP")); m_cmbFmtName.AddString(TEXT("Excel 97, 2000")); m_cmbFmtName.AddString(TEXT("HTML 4.0")); m_cmbFmtName.AddString(TEXT("HTML 3.2")); m_cmbFmtName.AddString(TEXT("Adobe PDF")); m_cmbFmtName.AddString(TEXT("Adobe PDF with image substitutes converter")); m_cmbFmtName.AddString(TEXT("Adobe PDF with image on text converter")); m_cmbFmtName.AddString(TEXT("Adobe PDF, image only converter")); m_cmbFmtName.AddString(TEXT("RTF Word 6.0/95 converter")); m_cmbFmtName.AddString(TEXT("RTF Word 97 converter")); m_cmbFmtName.AddString(TEXT("RTF Word 2000 converter")); m_cmbFmtName.AddString(TEXT("Publisher 98 converter")); m_cmbFmtName.AddString(TEXT("PowerPoint 97 converter")); m_cmbFmtName.AddString(TEXT("WordPad converter")); m_cmbFmtName.AddString(TEXT("Standard Text converter")); m_cmbFmtName.AddString(TEXT("Smart Text converter")); m_cmbFmtName.AddString(TEXT("Stripped Text converter")); m_cmbFmtName.AddString(TEXT("Plain Text converter")); m_cmbFmtName.AddString(TEXT("Comma Delimited Text converter")); m_cmbFmtName.AddString(TEXT("Tab Delimited converter")); m_cmbFmtName.AddString(TEXT("XML")); m_cmbFmtName.SetItemData(0, DOC_GENERAL_WORD_PROCESSOR); m_cmbFmtName.SetItemData(1, DOC_2G_TYPE_2); m_cmbFmtName.SetItemData(2, DOC_2G_TYPE_3); m_cmbFmtName.SetItemData(3, DOC_REC_ASCII_STANDARD); m_cmbFmtName.SetItemData(4, DOC_REC_ASCII_STANDARDEX); m_cmbFmtName.SetItemData(5, DOC_REC_ASCII_FORMATTED); m_cmbFmtName.SetItemData(6, DOC_RTF); m_cmbFmtName.SetItemData(7, DOC_WORDPERFECT_8); m_cmbFmtName.SetItemData(8, DOC_WORD_97_2000_XP); m_cmbFmtName.SetItemData(9, DOC_EXCEL_97_2000); m_cmbFmtName.SetItemData(10, DOC_HTML_4_0); m_cmbFmtName.SetItemData(11, DOC_HTML_3_2); m_cmbFmtName.SetItemData(12, DOC_PDF); m_cmbFmtName.SetItemData(13, DOC_PDF_IMAGE_SUBSTITUTES); m_cmbFmtName.SetItemData(14, DOC_PDF_IMAGE_ON_TEXT); m_cmbFmtName.SetItemData(15, DOC_PDF_IMAGEONLY); m_cmbFmtName.SetItemData(16, DOC_RTF_WORD_6_95); m_cmbFmtName.SetItemData(17, DOC_RTF_WORD_97); m_cmbFmtName.SetItemData(18, DOC_RTF_WORD_2000); m_cmbFmtName.SetItemData(19, DOC_PUB_98_RTF); m_cmbFmtName.SetItemData(20, DOC_PPT_97_RTF); m_cmbFmtName.SetItemData(21, DOC_WORDPAD_RTF); m_cmbFmtName.SetItemData(22, DOC_TEXT_STANDARD); m_cmbFmtName.SetItemData(23, DOC_TEXT_SMART); m_cmbFmtName.SetItemData(24, DOC_TEXT_STRIPPED); m_cmbFmtName.SetItemData(25, DOC_TEXT_PLAIN); m_cmbFmtName.SetItemData(26, DOC_TEXT_COMMA_DELIMITED); m_cmbFmtName.SetItemData(27, DOC_TEXT_TAB_DELIMITED); m_cmbFmtName.SetItemData(28, DOC_XML); m_cmbFmtName.SetCurSel(0); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CSaveResult::OnBtnOptCharacter() { CCharacterOptions charOpts(&m_ResOpts.CharOptions); charOpts.DoModal(); } void CSaveResult::OnBtnOptDocument() { CDocOptions docOptsDlg(&m_ResOpts.DocOptions); docOptsDlg.DoModal(); } void CSaveResult::OnBtnOptMark() { CMarkOptions markOptsDlg(&m_ResOpts.MarkOptions); markOptsDlg.DoModal(); } void CSaveResult::OnBtnOptParagraph() { CParagraphOptions pargOptsDlg(&m_ResOpts.ParagOptions); pargOptsDlg.DoModal(); } void CSaveResult::OnBtnResBrowse() { CFileDialog FileDlg(FALSE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, TEXT("All Files (*.*)|*.*|")); if (FileDlg.DoModal() == IDOK) SetDlgItemText(IDC_EDIT_RES_FILE_NAME, FileDlg.GetPathName()); } void CSaveResult::OnChangeEditResFileName() { CString csText; GetDlgItemText(IDC_EDIT_RES_FILE_NAME, csText); m_btnOK.EnableWindow(!csText.IsEmpty()); } void CSaveResult::OnOK() { UpdateData(); m_ResOpts.FormatLevel = (FORMATLEVEL)m_cmbFmtLevel.GetItemData(m_cmbFmtLevel.GetCurSel()); m_ResOpts.Format = (FORMAT_TYPE)m_cmbFmtName.GetItemData(m_cmbFmtName.GetCurSel()); L_INT nRet = L_DocSetRecognitionResultOptions(m_hDoc, &m_ResOpts); CDialog::OnOK(); }