00001
00002
00003
00004
00005
00006 #include "stdafx.h"
00007 #include "FdmApp.h"
00008 #include "Dlg_UnpackSettings.h"
00009 #include "FolderBrowser.h"
00010
00011 #ifdef _DEBUG
00012 #define new DEBUG_NEW
00013 #undef THIS_FILE
00014 static char THIS_FILE[] = __FILE__;
00015 #endif
00016
00017 CDlg_UnpackSettings::CDlg_UnpackSettings(CWnd* pParent )
00018 : CDialog(CDlg_UnpackSettings::IDD, pParent)
00019 {
00020
00021
00022
00023 }
00024
00025 void CDlg_UnpackSettings::DoDataExchange(CDataExchange* pDX)
00026 {
00027 CDialog::DoDataExchange(pDX);
00028
00029 DDX_Control(pDX, IDC_BROWSE, m_btnBrowse);
00030
00031 }
00032
00033 BEGIN_MESSAGE_MAP(CDlg_UnpackSettings, CDialog)
00034
00035 ON_BN_CLICKED(IDC_BROWSE, OnBrowse)
00036
00037 END_MESSAGE_MAP()
00038
00039 BOOL CDlg_UnpackSettings::OnInitDialog()
00040 {
00041 CDialog::OnInitDialog();
00042
00043 m_btnBrowse.SetIcon (SICO (IDI_CHOOSEFOLDER));
00044
00045 SetDlgItemText (IDC_DSTFOLDER, m_strDstFolder);
00046
00047 ApplyLanguage ();
00048
00049 return TRUE;
00050 }
00051
00052 void CDlg_UnpackSettings::OnBrowse()
00053 {
00054 CString str = "";
00055 GetDlgItemText (IDC_DSTFOLDER, str);
00056
00057 if (str.GetLength () > 3 && (str [str.GetLength () - 1] == '\\' || str [str.GetLength () - 1] == '/'))
00058 str.GetBuffer (0) [str.GetLength () - 1] = 0;
00059
00060 CFolderBrowser *fb = CFolderBrowser::Create (LS (L_CHOOSEOUTFOLDER), str, NULL, this);
00061 if (fb == NULL)
00062 return;
00063
00064 SetDlgItemText (IDC_DSTFOLDER, fb->GetPath ());
00065 GetDlgItem (IDC_DSTFOLDER)->SetFocus ();
00066 }
00067
00068 void CDlg_UnpackSettings::OnOK()
00069 {
00070 GetDlgItemText (IDC_DSTFOLDER, m_strDstFolder);
00071
00072 CDialog::OnOK();
00073 }
00074
00075 void CDlg_UnpackSettings::ApplyLanguage()
00076 {
00077 fsDlgLngInfo lnginfo [] = {
00078 fsDlgLngInfo (IDOK, L_EXTRACT),
00079 fsDlgLngInfo (IDCANCEL, L_CANCEL),
00080 fsDlgLngInfo (IDC__DSTFOLDER, L_DSTFOLDER, TRUE),
00081 };
00082
00083 _LngMgr.ApplyLanguage (this, lnginfo, sizeof (lnginfo) / sizeof (fsDlgLngInfo), L_EXTRACTARCHIVE);
00084 }