Index: src/ch/FilterDlg.cpp =================================================================== diff -u -r31be0106a2d78fd0ddcb735f5351658abe56dc48 -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/FilterDlg.cpp (.../FilterDlg.cpp) (revision 31be0106a2d78fd0ddcb735f5351658abe56dc48) +++ src/ch/FilterDlg.cpp (.../FilterDlg.cpp) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -190,21 +190,8 @@ m_iHidden=m_ffFilter.GetHidden(); m_iSystem=m_ffFilter.GetSystem(); m_iDirectory=m_ffFilter.GetDirectory(); - - HMENU hMenu = GetResManager().LoadMenu(MAKEINTRESOURCE(IDR_FILTER_TYPE_MENU)); - m_menuFilterType.Attach(hMenu); - CMenu* pPopup = m_menuFilterType.GetSubMenu(0); - for(int iIndex = 0; iIndex < pPopup->GetMenuItemCount(); ++iIndex) - { - int iCmd = pPopup->GetMenuItemID(iIndex); - if(iCmd > 0) - { - CString strText; - pPopup->GetMenuString(iIndex, strText, MF_BYPOSITION); - m_mapFilterEntries.insert({ iCmd, (PCTSTR)strText }); - } - } + m_filterTypesWrapper.Init(); UpdateData(FALSE); @@ -408,27 +395,8 @@ { if(LOWORD(wParam) >= ID_POPUP_FILTER_FILE_WILDCARD && LOWORD(wParam) <= ID_POPUP_FILTER_SEPARATOR_CHAR) { - CComboBox& rCombo = m_bTracksIncludeButton ? m_ctlIncludeMask : m_ctlExcludeMask; - - auto iterFnd = m_mapFilterEntries.find(LOWORD(wParam)); - if(iterFnd != m_mapFilterEntries.end()) - { - string::TString strEntry = iterFnd->second.c_str(); - string::TStringArray arrStrings; - strEntry.Split(L"\t", arrStrings); - - if(arrStrings.GetCount() > 1) - { - CString strText; - rCombo.GetWindowText(strText); - - CString strParsed = arrStrings.GetAt(0).c_str(); - if(!strText.IsEmpty() && strText.Right(1) != L";" && strParsed != L";") - strText += L";"; - - rCombo.SetWindowText(strText + strParsed); - } - } + CComboBox& rCombo = m_filterTypesWrapper.IsTrackingIncludeMask() ? m_ctlIncludeMask : m_ctlExcludeMask; + m_filterTypesWrapper.OnCommand(LOWORD(wParam), rCombo); } } return ictranslate::CLanguageDialog::OnCommand(wParam, lParam); @@ -487,24 +455,12 @@ void CFilterDlg::OnIncludeMaskButton() { - m_bTracksIncludeButton = true; - - // set point in which to set menu - CRect rect; - GetDlgItem(IDC_INCLUDE_MASK_BUTTON)->GetWindowRect(&rect); - - m_menuFilterType.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, rect.right + 1, rect.top, this); + m_filterTypesWrapper.StartTracking(true, *this, IDC_INCLUDE_MASK_BUTTON); } void CFilterDlg::OnExcludeMaskButton() { - m_bTracksIncludeButton = false; - - // set point in which to set menu - CRect rect; - GetDlgItem(IDC_EXCLUDE_MASK_BUTTON)->GetWindowRect(&rect); - - m_menuFilterType.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, rect.right + 1, rect.top, this); + m_filterTypesWrapper.StartTracking(false, *this, IDC_EXCLUDE_MASK_BUTTON); } void CFilterDlg::OnDatetimechangeTime1Datetimepicker(NMHDR* /*pNMHDR*/, LRESULT* pResult) Index: src/ch/FilterDlg.h =================================================================== diff -u -r31be0106a2d78fd0ddcb735f5351658abe56dc48 -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/FilterDlg.h (.../FilterDlg.h) (revision 31be0106a2d78fd0ddcb735f5351658abe56dc48) +++ src/ch/FilterDlg.h (.../FilterDlg.h) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -19,6 +19,7 @@ #pragma once #include "../libchengine/TFileFilter.h" +#include "FilterTypesMenuWrapper.h" ///////////////////////////////////////////////////////////////////////////// // CFilterDlg dialog @@ -80,9 +81,7 @@ CMFCButton m_btnIncludeMask; CMFCButton m_btnExcludeMask; - bool m_bTracksIncludeButton = false; - CMenu m_menuFilterType; - std::map m_mapFilterEntries; + FilterTypesMenuWrapper m_filterTypesWrapper; int m_iArchive; BOOL m_bAttributes; Index: src/ch/FilterTypesMenuWrapper.cpp =================================================================== diff -u --- src/ch/FilterTypesMenuWrapper.cpp (revision 0) +++ src/ch/FilterTypesMenuWrapper.cpp (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -0,0 +1,55 @@ +#include "stdafx.h" +#include "FilterTypesMenuWrapper.h" +#include "ch.h" +#include "resource.h" +#include "../libstring/TStringArray.h" + +void FilterTypesMenuWrapper::Init() +{ + HMENU hMenu = GetResManager().LoadMenu(MAKEINTRESOURCE(IDR_FILTER_TYPE_MENU)); + m_menuFilterType.Attach(hMenu); + + CMenu* pPopup = m_menuFilterType.GetSubMenu(0); + for(int iIndex = 0; iIndex < pPopup->GetMenuItemCount(); ++iIndex) + { + int iCmd = pPopup->GetMenuItemID(iIndex); + if(iCmd > 0) + { + CString strText; + pPopup->GetMenuString(iIndex, strText, MF_BYPOSITION); + m_mapFilterEntries.insert({ iCmd, (PCTSTR)strText }); + } + } +} + +void FilterTypesMenuWrapper::StartTracking(bool bIncludeMask, CWnd& rParent, int iBtnID) +{ + m_bTracksIncludeButton = bIncludeMask; + CRect rect; + rParent.GetDlgItem(iBtnID)->GetWindowRect(&rect); + + m_menuFilterType.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, rect.right + 1, rect.top, &rParent); +} + +void FilterTypesMenuWrapper::OnCommand(int iCommandID, CComboBox& rCombo) +{ + auto iterFnd = m_mapFilterEntries.find(iCommandID); + if(iterFnd != m_mapFilterEntries.end()) + { + string::TString strEntry = iterFnd->second.c_str(); + string::TStringArray arrStrings; + strEntry.Split(L"\t", arrStrings); + + if(arrStrings.GetCount() > 1) + { + CString strText; + rCombo.GetWindowText(strText); + + CString strParsed = arrStrings.GetAt(0).c_str(); + if(!strText.IsEmpty() && strText.Right(1) != L";" && strParsed != L";") + strText += L";"; + + rCombo.SetWindowText(strText + strParsed); + } + } +} Index: src/ch/FilterTypesMenuWrapper.h =================================================================== diff -u --- src/ch/FilterTypesMenuWrapper.h (revision 0) +++ src/ch/FilterTypesMenuWrapper.h (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -0,0 +1,36 @@ +// ============================================================================ +// Copyright (C) 2001-2020 by Jozef Starosczyk +// ixen {at} copyhandler [dot] com +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU Library General Public License +// (version 2) as published by the Free Software Foundation; +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU Library General Public +// License along with this program; if not, write to the +// Free Software Foundation, Inc., +// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +// ============================================================================ +#pragma once + +class FilterTypesMenuWrapper +{ +public: + void Init(); + + void StartTracking(bool bIncludeMask, CWnd& rParent, int iBtnID); + bool IsTrackingIncludeMask() const { return m_bTracksIncludeButton; } + + void OnCommand(int iCommandID, CComboBox& rCombo); + +private: + bool m_bTracksIncludeButton = false; + CMenu m_menuFilterType; + std::map m_mapFilterEntries; +}; + Index: src/ch/RuleEditAlreadyExistsDlg.cpp =================================================================== diff -u -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); +} Index: src/ch/RuleEditAlreadyExistsDlg.h =================================================================== diff -u -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/RuleEditAlreadyExistsDlg.h (.../RuleEditAlreadyExistsDlg.h) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/RuleEditAlreadyExistsDlg.h (.../RuleEditAlreadyExistsDlg.h) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -20,6 +20,7 @@ #include "../libchengine/FeedbackAlreadyExistsRule.h" #include "ComboDataWrapper.h" +#include "FilterTypesMenuWrapper.h" ///////////////////////////////////////////////////////////////////////////// // FeedbackRuleEditorDlg dialog @@ -37,13 +38,17 @@ void EnableControls(); BOOL OnInitDialog() override; + BOOL OnCommand(WPARAM wParam, LPARAM lParam) override; void FillCompareCombos(); void FillResponseCombo(); void OnOK() override; void DoDataExchange(CDataExchange* pDX) override; + afx_msg void OnIncludeMaskButton(); + afx_msg void OnExcludeMaskButton(); + DECLARE_MESSAGE_MAP() private: @@ -66,4 +71,6 @@ ComboDataWrapper m_comboResponse; ComboDataWrapper m_comboDateCompare; ComboDataWrapper m_comboSizeCompare; + + FilterTypesMenuWrapper m_filterTypesWrapper; }; Index: src/ch/RuleEditErrorDlg.cpp =================================================================== diff -u -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/RuleEditErrorDlg.cpp (.../RuleEditErrorDlg.cpp) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/RuleEditErrorDlg.cpp (.../RuleEditErrorDlg.cpp) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -56,11 +56,23 @@ DDX_Control(pDX, IDC_RESPONSE_COMBO, m_ctlResponse); } +void RuleEditErrorDlg::OnIncludeMaskButton() +{ + m_filterTypesWrapper.StartTracking(true, *this, IDC_INCLUDE_MASK_BUTTON); +} + +void RuleEditErrorDlg::OnExcludeMaskButton() +{ + m_filterTypesWrapper.StartTracking(false, *this, IDC_EXCLUDE_MASK_BUTTON); +} + BEGIN_MESSAGE_MAP(RuleEditErrorDlg,ictranslate::CLanguageDialog) ON_BN_CLICKED(IDC_INCLUDE_MASK_CHECK, EnableControls) ON_BN_CLICKED(IDC_EXCLUDE_MASK_CHECK, EnableControls) ON_BN_CLICKED(IDC_FILTER_BY_OPERATION_CHECK, EnableControls) ON_BN_CLICKED(IDC_FILTER_BY_SYSTEMERROR_CHECK, EnableControls) + ON_BN_CLICKED(IDC_INCLUDE_MASK_BUTTON, OnIncludeMaskButton) + ON_BN_CLICKED(IDC_EXCLUDE_MASK_BUTTON, OnExcludeMaskButton) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// @@ -106,6 +118,8 @@ EFeedbackResult eResult = m_rule.GetResult(); m_comboResponse.SelectComboResult(eResult == eResult_Unknown ? eResult_Skip : eResult); + m_filterTypesWrapper.Init(); + UpdateData(FALSE); EnableControls(); @@ -162,6 +176,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_ctlSystemError.EnableWindow(m_bUseSystemError); @@ -200,3 +216,16 @@ CLanguageDialog::OnOK(); } + +BOOL RuleEditErrorDlg::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); +} Index: src/ch/RuleEditErrorDlg.h =================================================================== diff -u -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/RuleEditErrorDlg.h (.../RuleEditErrorDlg.h) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/RuleEditErrorDlg.h (.../RuleEditErrorDlg.h) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -20,6 +20,7 @@ #include "../libchengine/FeedbackErrorRule.h" #include "ComboDataWrapper.h" +#include "FilterTypesMenuWrapper.h" ///////////////////////////////////////////////////////////////////////////// // FeedbackRuleEditorDlg dialog @@ -43,7 +44,11 @@ void FillResponseCombo(); void OnOK() override; void DoDataExchange(CDataExchange* pDX) override; + BOOL OnCommand(WPARAM wParam, LPARAM lParam) override; + afx_msg void OnIncludeMaskButton(); + afx_msg void OnExcludeMaskButton(); + DECLARE_MESSAGE_MAP() private: @@ -65,4 +70,6 @@ ComboDataWrapper m_comboResponse; ComboDataWrapper m_comboOperationType; + + FilterTypesMenuWrapper m_filterTypesWrapper; }; Index: src/ch/RuleEditNotEnoughSpaceDlg.cpp =================================================================== diff -u -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/RuleEditNotEnoughSpaceDlg.cpp (.../RuleEditNotEnoughSpaceDlg.cpp) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/RuleEditNotEnoughSpaceDlg.cpp (.../RuleEditNotEnoughSpaceDlg.cpp) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -52,6 +52,8 @@ BEGIN_MESSAGE_MAP(RuleEditNotEnoughSpaceDlg,ictranslate::CLanguageDialog) ON_BN_CLICKED(IDC_INCLUDE_MASK_CHECK, EnableControls) ON_BN_CLICKED(IDC_EXCLUDE_MASK_CHECK, EnableControls) + ON_BN_CLICKED(IDC_INCLUDE_MASK_BUTTON, OnIncludeMaskButton) + ON_BN_CLICKED(IDC_EXCLUDE_MASK_BUTTON, OnExcludeMaskButton) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// @@ -82,6 +84,8 @@ EFeedbackResult eResult = m_rule.GetResult(); m_comboResponse.SelectComboResult(eResult == eResult_Unknown ? eResult_Ignore : eResult); + m_filterTypesWrapper.Init(); + UpdateData(FALSE); EnableControls(); @@ -107,6 +111,16 @@ } } +void RuleEditNotEnoughSpaceDlg::OnIncludeMaskButton() +{ + m_filterTypesWrapper.StartTracking(true, *this, IDC_INCLUDE_MASK_BUTTON); +} + +void RuleEditNotEnoughSpaceDlg::OnExcludeMaskButton() +{ + m_filterTypesWrapper.StartTracking(false, *this, IDC_EXCLUDE_MASK_BUTTON); +} + void RuleEditNotEnoughSpaceDlg::OnLanguageChanged() { // combo result @@ -121,6 +135,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); } void RuleEditNotEnoughSpaceDlg::OnOK() @@ -141,3 +157,16 @@ CLanguageDialog::OnOK(); } + +BOOL RuleEditNotEnoughSpaceDlg::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); +} Index: src/ch/RuleEditNotEnoughSpaceDlg.h =================================================================== diff -u -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/RuleEditNotEnoughSpaceDlg.h (.../RuleEditNotEnoughSpaceDlg.h) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/RuleEditNotEnoughSpaceDlg.h (.../RuleEditNotEnoughSpaceDlg.h) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -20,6 +20,7 @@ #include "../libchengine/FeedbackNotEnoughSpaceRule.h" #include "ComboDataWrapper.h" +#include "FilterTypesMenuWrapper.h" ///////////////////////////////////////////////////////////////////////////// // FeedbackRuleEditorDlg dialog @@ -39,9 +40,13 @@ BOOL OnInitDialog() override; void OnOK() override; void DoDataExchange(CDataExchange* pDX) override; + BOOL OnCommand(WPARAM wParam, LPARAM lParam) override; void FillResponseCombo(); + afx_msg void OnIncludeMaskButton(); + afx_msg void OnExcludeMaskButton(); + DECLARE_MESSAGE_MAP() private: @@ -58,4 +63,6 @@ CStringArray m_astrAddExcludeMask; ComboDataWrapper m_comboResponse; + + FilterTypesMenuWrapper m_filterTypesWrapper; }; Index: src/ch/ch.rc =================================================================== diff -u -r31be0106a2d78fd0ddcb735f5351658abe56dc48 -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/ch.rc (.../ch.rc) (revision 31be0106a2d78fd0ddcb735f5351658abe56dc48) +++ src/ch/ch.rc (.../ch.rc) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -450,11 +450,10 @@ CAPTION "File already exists rule editor" FONT 8, "Tahoma", 0, 0, 0x1 BEGIN - CONTROL "Include mask (separate by vertical lines ie. *.jpg|*.gif)",IDC_INCLUDE_MASK_CHECK, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,23,277,10 - COMBOBOX IDC_INCLUDE_MASK_COMBO,15,35,269,98,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP - CONTROL "Exclude mask",IDC_EXCLUDE_MASK_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,51,277,10 - COMBOBOX IDC_EXCLUDE_MASK_COMBO,15,64,269,170,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + CONTROL "Include files matching:",IDC_INCLUDE_MASK_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,23,277,10 + COMBOBOX IDC_INCLUDE_MASK_COMBO,15,35,250,98,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + CONTROL "Exclude files matching:",IDC_EXCLUDE_MASK_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,51,277,10 + COMBOBOX IDC_EXCLUDE_MASK_COMBO,15,64,250,170,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP CONTROL "Filtering by size",IDC_FILTER_BY_SIZE_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,82,277,10 COMBOBOX IDC_FILTER_BY_SIZE_COMBO,122,95,50,135,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP CONTROL "Filtering by modification date",IDC_FILTER_BY_DATE_CHECK, @@ -470,6 +469,8 @@ LTEXT "size of destination file",IDC_DST_SIZE_STATIC,176,96,103,8 RTEXT "Date of source file",IDC_SOURCE_DATE_STATIC,15,129,103,8 LTEXT "date of destination file",IDC_DST_DATE_STATIC,176,129,103,8 + CONTROL "...",IDC_INCLUDE_MASK_BUTTON,"MfcButton",WS_TABSTOP,267,34,17,12 + CONTROL "...",IDC_EXCLUDE_MASK_BUTTON,"MfcButton",WS_TABSTOP,267,63,17,12 END IDD_RULE_EDIT_ERROR_DIALOG DIALOGEX 0, 0, 291, 219 @@ -479,9 +480,9 @@ BEGIN CONTROL "Include mask (separate by vertical lines ie. *.jpg|*.gif)",IDC_INCLUDE_MASK_CHECK, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,23,277,10 - COMBOBOX IDC_INCLUDE_MASK_COMBO,15,35,269,98,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_INCLUDE_MASK_COMBO,15,35,250,98,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP CONTROL "Exclude mask",IDC_EXCLUDE_MASK_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,51,277,10 - COMBOBOX IDC_EXCLUDE_MASK_COMBO,15,64,269,170,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_EXCLUDE_MASK_COMBO,15,64,250,170,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP CONTROL "Filtering by operation",IDC_FILTER_BY_OPERATION_CHECK, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,82,277,10 COMBOBOX IDC_FILTER_BY_OPERATION_COMBO,15,96,269,135,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP @@ -494,6 +495,8 @@ LTEXT "...then respond with:",IDC_RESPONSE_STATIC,7,155,277,8 COMBOBOX IDC_RESPONSE_COMBO,15,168,269,133,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP EDITTEXT IDC_FILTER_BY_SYSTEMERROR_EDIT,15,126,269,14,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "...",IDC_INCLUDE_MASK_BUTTON,"MfcButton",WS_TABSTOP,267,34,17,12 + CONTROL "...",IDC_EXCLUDE_MASK_BUTTON,"MfcButton",WS_TABSTOP,267,63,17,12 END IDD_RULE_EDIT_NOTENOUGHSPACE_DIALOG DIALOGEX 0, 0, 291, 157 @@ -503,15 +506,17 @@ BEGIN CONTROL "Include mask (separate by vertical lines ie. *.jpg|*.gif)",IDC_INCLUDE_MASK_CHECK, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,23,277,10 - COMBOBOX IDC_INCLUDE_MASK_COMBO,15,35,269,98,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_INCLUDE_MASK_COMBO,15,35,250,98,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP CONTROL "Exclude mask",IDC_EXCLUDE_MASK_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,51,277,10 - COMBOBOX IDC_EXCLUDE_MASK_COMBO,15,64,269,170,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_EXCLUDE_MASK_COMBO,15,64,250,170,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP DEFPUSHBUTTON "&OK",IDOK,179,135,50,14 PUSHBUTTON "&Cancel",IDCANCEL,234,135,50,14 CONTROL "",IDC_BOTTOM_BAR_STATIC,"Static",SS_ETCHEDHORZ,7,128,274,1 LTEXT "When all of the following conditions are met...:",IDC_HEADER_STATIC,7,7,277,8 LTEXT "...then respond with:",IDC_RESPONSE_STATIC,7,92,277,8 COMBOBOX IDC_RESPONSE_COMBO,15,105,269,133,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "...",IDC_INCLUDE_MASK_BUTTON,"MfcButton",WS_TABSTOP,267,34,17,12 + CONTROL "...",IDC_EXCLUDE_MASK_BUTTON,"MfcButton",WS_TABSTOP,267,63,17,12 END IDD_RULE_EDIT_ALL_DIALOG DIALOGEX 0, 0, 351, 341 @@ -1501,7 +1506,154 @@ 0 END +IDD_RULE_EDIT_ALREADYEXISTS_DIALOG DLGINIT +BEGIN + IDC_INCLUDE_MASK_BUTTON, 0x37c, 369, 0 +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, +0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, +0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, +0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, +0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, +0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, +0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, +0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, +0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, +0x4f65, 0x526e, 0x6769, 0x7468, "\076" + IDC_EXCLUDE_MASK_BUTTON, 0x37c, 369, 0 +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, +0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, +0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, +0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, +0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, +0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, +0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, +0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, +0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, +0x4f65, 0x526e, 0x6769, 0x7468, "\076" + 0 +END +IDD_RULE_EDIT_NOTENOUGHSPACE_DIALOG DLGINIT +BEGIN + IDC_INCLUDE_MASK_BUTTON, 0x37c, 369, 0 +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, +0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, +0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, +0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, +0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, +0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, +0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, +0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, +0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, +0x4f65, 0x526e, 0x6769, 0x7468, "\076" + IDC_EXCLUDE_MASK_BUTTON, 0x37c, 369, 0 +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, +0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, +0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, +0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, +0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, +0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, +0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, +0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, +0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, +0x4f65, 0x526e, 0x6769, 0x7468, "\076" + 0 +END + +IDD_RULE_EDIT_ERROR_DIALOG DLGINIT +BEGIN + IDC_INCLUDE_MASK_BUTTON, 0x37c, 369, 0 +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, +0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, +0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, +0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, +0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, +0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, +0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, +0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, +0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, +0x4f65, 0x526e, 0x6769, 0x7468, "\076" + IDC_EXCLUDE_MASK_BUTTON, 0x37c, 369, 0 +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, +0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, +0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, +0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, +0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, +0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, +0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, +0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, +0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, +0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, +0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, +0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, +0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, +0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, +0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, +0x4f65, 0x526e, 0x6769, 0x7468, "\076" + 0 +END + + ///////////////////////////////////////////////////////////////////////////// // // String Table Index: src/ch/ch.vc140.vcxproj =================================================================== diff -u -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/ch.vc140.vcxproj (.../ch.vc140.vcxproj) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/ch.vc140.vcxproj (.../ch.vc140.vcxproj) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -562,6 +562,7 @@ + @@ -643,6 +644,7 @@ + Index: src/ch/ch.vc140.vcxproj.filters =================================================================== diff -u -r3aa1103497018be2a7494e79e03c5f4c674485be -r9250a0229add10f4315e76848c755f337a16ae95 --- src/ch/ch.vc140.vcxproj.filters (.../ch.vc140.vcxproj.filters) (revision 3aa1103497018be2a7494e79e03c5f4c674485be) +++ src/ch/ch.vc140.vcxproj.filters (.../ch.vc140.vcxproj.filters) (revision 9250a0229add10f4315e76848c755f337a16ae95) @@ -273,6 +273,7 @@ Source Files\GUI\Utils + @@ -467,6 +468,9 @@ Source Files\GUI\Dialogs\Feedback rule editor + + Source Files +