www.pudn.com > doc2pdf-0_7_1.rar > Doc2pdfDirectoryDlg.cpp


// Doc2pdfDirectoryDlg.cpp : implementation file 
// 
 
#include "stdafx.h" 
#include "doc2pdf.h" 
#include "Doc2pdfDirectoryDlg.h" 
#include "doc2pdf_reg.h" 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
// CDoc2pdfDirectoryDlg dialog 
 
void CDoc2pdfDirectoryDlg::DoModal(const CString& id) 
{ 
	m_Id = id; 
 
	CDialog::DoModal(); 
} 
 
 
CDoc2pdfDirectoryDlg::CDoc2pdfDirectoryDlg(CWnd* pParent /*=NULL*/) 
	: CDialog(CDoc2pdfDirectoryDlg::IDD, pParent) 
{ 
	//{{AFX_DATA_INIT(CDoc2pdfDirectoryDlg) 
		// NOTE: the ClassWizard will add member initialization here 
	//}}AFX_DATA_INIT 
} 
 
 
void CDoc2pdfDirectoryDlg::DoDataExchange(CDataExchange* pDX) 
{ 
	CDialog::DoDataExchange(pDX); 
	//{{AFX_DATA_MAP(CDoc2pdfMailboxDlg) 
	DDX_Control(pDX, IDC_SOURCEDIR_EDIT, m_SourcedirEdit); 
	DDX_Control(pDX, IDC_DESTDIR_EDIT, m_DestdirEdit); 
	//}}AFX_DATA_MAP 
} 
 
 
BEGIN_MESSAGE_MAP(CDoc2pdfDirectoryDlg, CDialog) 
	//{{AFX_MSG_MAP(CDoc2pdfDirectoryDlg) 
	//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// CDoc2pdfDirectoryDlg message handlers 
 
void CDoc2pdfDirectoryDlg::OnOK()  
{ 
	// TODO: Add extra validation here 
	Doc2pdfRegistry		reg; 
	Doc2pdfDirectoryInfo	dirinfo; 
	CString				str; 
	CString				tmpstr; 
	CFile				file; 
	 
 
	m_SourcedirEdit.GetWindowText(str); 
	if(str.GetLength() == 0) 
	{ 
		MessageBox("You must enter the Source directory","Input Error",MB_ICONINFORMATION); 
		return; 
	} 
 
	if(str.Right(1) != "\\") 
	{ 
		str += "\\"; 
	} 
	tmpstr = str + "doc2pdf.tst"; 
	if(file.Open(tmpstr,CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite) == 0) 
	{ 
		MessageBox("Could not find source directory","Input Error", MB_ICONINFORMATION); 
		return; 
	}	 
	file.Close(); 
	file.Remove(tmpstr); 
	dirinfo.m_Sourcedir = str; 
	 
	m_DestdirEdit.GetWindowText(str); 
	if(str.GetLength() == 0) 
	{ 
		MessageBox("You must enter the Destination directory","Input Error",MB_ICONINFORMATION); 
		return; 
	} 
	if(str.Right(1) != "\\") 
	{ 
		str += "\\"; 
	} 
	tmpstr = str + "doc2pdf.tst"; 
	if(file.Open(tmpstr,CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite) == 0) 
	{ 
		MessageBox("Could not find destination directory","Input Error", MB_ICONINFORMATION); 
		return; 
	} 
	file.Close(); 
	file.Remove(tmpstr); 
	dirinfo.m_Destdir = str; 
 
	if(m_Id.GetLength() == 0) 
	{ 
 
		m_Id = dirinfo.m_Sourcedir; 
	} 
	else{ 
		reg.RemoveDirectoryInfo( m_Id ); 
		m_Id = dirinfo.m_Sourcedir; 
	} 
 
	reg.SetDirectoryInfo(m_Id,dirinfo); 
 
	CDialog::OnOK(); 
} 
 
BOOL CDoc2pdfDirectoryDlg::OnInitDialog()  
{ 
	Doc2pdfRegistry		reg; 
	Doc2pdfDirectoryInfo	dirinfo; 
	 
	CDialog::OnInitDialog(); 
	 
	if(m_Id.GetLength() != 0) 
	{ 
		reg.GetDirectoryInfo(m_Id,dirinfo); 
		m_SourcedirEdit.SetWindowText(dirinfo.m_Sourcedir); 
		m_DestdirEdit.SetWindowText(dirinfo.m_Destdir); 
	}		 
	 
	return TRUE;  // return TRUE unless you set the focus to a control 
	              // EXCEPTION: OCX Property Pages should return FALSE 
}