00001
00002
00003
00004
00005
00006 #include "stdafx.h"
00007 #include "FdmApp.h"
00008 #include "SiteManager_PasswordsPage.h"
00009
00010 #ifdef _DEBUG
00011 #define new DEBUG_NEW
00012 #undef THIS_FILE
00013 static char THIS_FILE[] = __FILE__;
00014 #endif
00015
00016 IMPLEMENT_DYNCREATE(CSiteManager_PasswordsPage, CPropertyPage)
00017
00018 CSiteManager_PasswordsPage::CSiteManager_PasswordsPage() : CPropertyPage(CSiteManager_PasswordsPage::IDD)
00019 {
00020 m_psp.dwFlags |= PSP_USETITLE;
00021 m_psp.pszTitle = LS (L_PASSWORDS);
00022 }
00023
00024 CSiteManager_PasswordsPage::~CSiteManager_PasswordsPage()
00025 {
00026 }
00027
00028 void CSiteManager_PasswordsPage::DoDataExchange(CDataExchange* pDX)
00029 {
00030 CPropertyPage::DoDataExchange(pDX);
00031
00032
00033
00034 }
00035
00036 BEGIN_MESSAGE_MAP(CSiteManager_PasswordsPage, CPropertyPage)
00037
00038 ON_BN_CLICKED(IDC_USE, OnUse)
00039 ON_BN_CLICKED(IDC_DELALL, OnDelall)
00040 ON_BN_CLICKED(IDC_ASK, OnAsk)
00041 ON_BN_CLICKED(IDC_DONTASK, OnDontask)
00042 ON_BN_CLICKED(IDC_AUTODEL, OnAutodel)
00043
00044 END_MESSAGE_MAP()
00045
00046 BOOL CSiteManager_PasswordsPage::OnInitDialog()
00047 {
00048 CPropertyPage::OnInitDialog();
00049
00050 CheckDlgButton (IDC_USE, _App.SM_KeepPasswords () ? BST_CHECKED : BST_UNCHECKED);
00051 CheckRadioButton (IDC_ASK, IDC_DONTASK, _App.SM_PwdsManualAddition () ? IDC_DONTASK : IDC_ASK);
00052 CheckDlgButton (IDC_AUTODEL, _App.SM_DontSavePwdsToDisk () ? BST_CHECKED : BST_UNCHECKED);
00053
00054 ApplyLanguage ();
00055 UpdateEnabled ();
00056
00057 return TRUE;
00058 }
00059
00060 void CSiteManager_PasswordsPage::OnUse()
00061 {
00062 UpdateEnabled ();
00063 SetModified ();
00064 }
00065
00066 void CSiteManager_PasswordsPage::OnDelall()
00067 {
00068 if (IDYES == MessageBox (LS (L_AREYOUSURE), LS (L_CONFIRMATION), MB_OK|MB_YESNO))
00069 _SitesMgr.DeleteAllPasswords ();
00070 }
00071
00072 void CSiteManager_PasswordsPage::UpdateEnabled()
00073 {
00074 BOOL b = IsDlgButtonChecked (IDC_USE) == BST_CHECKED;
00075 GetDlgItem (IDC_ASK)->EnableWindow (b);
00076 GetDlgItem (IDC_DONTASK)->EnableWindow (b);
00077 GetDlgItem (IDC_AUTODEL)->EnableWindow (b);
00078 }
00079
00080 BOOL CSiteManager_PasswordsPage::OnApply()
00081 {
00082 if (IsDlgButtonChecked (IDC_USE) == BST_CHECKED)
00083 {
00084 _App.SM_PwdsManualAddition (IsDlgButtonChecked (IDC_ASK) == BST_UNCHECKED);
00085 _App.SM_DontSavePwdsToDisk (IsDlgButtonChecked (IDC_AUTODEL) == BST_CHECKED);
00086 _App.SM_KeepPasswords (TRUE);
00087 }
00088 else
00089 {
00090 _App.SM_KeepPasswords (FALSE);
00091 }
00092
00093 return CPropertyPage::OnApply();
00094 }
00095
00096 void CSiteManager_PasswordsPage::OnAsk()
00097 {
00098 SetModified ();
00099 }
00100
00101 void CSiteManager_PasswordsPage::OnDontask()
00102 {
00103 SetModified ();
00104 }
00105
00106 void CSiteManager_PasswordsPage::OnAutodel()
00107 {
00108 SetModified ();
00109 }
00110
00111 void CSiteManager_PasswordsPage::ApplyLanguage()
00112 {
00113 fsDlgLngInfo lnginfo [] = {
00114 fsDlgLngInfo (IDC_USE, L_USESMTOSTOREPWDS),
00115 fsDlgLngInfo (IDC_ASK, L_ASKMETOSAVEPWDS),
00116 fsDlgLngInfo (IDC_DONTASK, L_DONTASKMETOSAVEPWDS),
00117 fsDlgLngInfo (IDC_AUTODEL, L_DELPWDSBEFOREEXIT),
00118 fsDlgLngInfo (IDC_DELALL, L_DELETEALLPWDS),
00119 };
00120
00121 _LngMgr.ApplyLanguage (this, lnginfo, sizeof (lnginfo) / sizeof (fsDlgLngInfo), 0);
00122 }