Index: src/ch/RuleEditAlreadyExistsDlg.cpp =================================================================== diff -u -N -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/RuleEditAlreadyExistsDlg.cpp (.../RuleEditAlreadyExistsDlg.cpp) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/RuleEditAlreadyExistsDlg.cpp (.../RuleEditAlreadyExistsDlg.cpp) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -60,11 +60,23 @@ DDX_Control(pDX, IDC_RESPONSE_COMBO, m_ctlResponse); } +void RuleEditAlreadyExistsDlg::OnIncludeMaskButton() +{ + m_filterTypesWrapper.StartTracking(true, *this, IDC_INCLUDE_MASK_BUTTON); +} + +void RuleEditAlreadyExistsDlg::OnExcludeMaskButton() +{ + m_filterTypesWrapper.StartTracking(false, *this, IDC_EXCLUDE_MASK_BUTTON); +} + BEGIN_MESSAGE_MAP(RuleEditAlreadyExistsDlg,ictranslate::CLanguageDialog) ON_BN_CLICKED(IDC_INCLUDE_MASK_CHECK, EnableControls) ON_BN_CLICKED(IDC_EXCLUDE_MASK_CHECK, EnableControls) ON_BN_CLICKED(IDC_FILTER_BY_DATE_CHECK, EnableControls) ON_BN_CLICKED(IDC_FILTER_BY_SIZE_CHECK, EnableControls) + ON_BN_CLICKED(IDC_INCLUDE_MASK_BUTTON, OnIncludeMaskButton) + ON_BN_CLICKED(IDC_EXCLUDE_MASK_BUTTON, OnExcludeMaskButton) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// @@ -103,6 +115,8 @@ EFeedbackResult eResult = m_rule.GetResult(); m_comboResponse.SelectComboResult(eResult == eResult_Unknown ? eResult_Overwrite : eResult); + m_filterTypesWrapper.Init(); + UpdateData(FALSE); EnableControls(); @@ -169,6 +183,8 @@ // mask m_ctlIncludeMask.EnableWindow(m_bUseIncludeMask); m_ctlExcludeMask.EnableWindow(m_bUseExcludeMask); + GetDlgItem(IDC_INCLUDE_MASK_BUTTON)->EnableWindow(m_bUseIncludeMask); + GetDlgItem(IDC_EXCLUDE_MASK_BUTTON)->EnableWindow(m_bUseExcludeMask); // size m_ctlSizeCompareType.EnableWindow(m_bUseSizeCompareType); @@ -203,3 +219,16 @@ CLanguageDialog::OnOK(); } + +BOOL RuleEditAlreadyExistsDlg::OnCommand(WPARAM wParam, LPARAM lParam) +{ + if(HIWORD(wParam) == 0) + { + if(LOWORD(wParam) >= ID_POPUP_FILTER_FILE_WILDCARD && LOWORD(wParam) <= ID_POPUP_FILTER_SEPARATOR_CHAR) + { + CComboBox& rCombo = m_filterTypesWrapper.IsTrackingIncludeMask() ? m_ctlIncludeMask : m_ctlExcludeMask; + m_filterTypesWrapper.OnCommand(LOWORD(wParam), rCombo); + } + } + return ictranslate::CLanguageDialog::OnCommand(wParam, lParam); +}