diff --git a/.gitignore b/.gitignore index 3c4efe2..f3b09fd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. - +pre_commit.log +pre_commit.ps1 # User-specific files *.suo *.user diff --git a/FileSearch/ExceptionsForm.Designer.cs b/FileSearch/ExceptionsForm.Designer.cs index 8c73de2..c53122e 100644 --- a/FileSearch/ExceptionsForm.Designer.cs +++ b/FileSearch/ExceptionsForm.Designer.cs @@ -1,4 +1,12 @@ -namespace FileSearch +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch { partial class ExceptionsForm { diff --git a/FileSearch/ExceptionsForm.cs b/FileSearch/ExceptionsForm.cs index 2ba0f70..688aa93 100644 --- a/FileSearch/ExceptionsForm.cs +++ b/FileSearch/ExceptionsForm.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using FileSearch.Logic.UI.Entries; namespace FileSearch diff --git a/FileSearch/LargeListViewUserControl.Designer.cs b/FileSearch/LargeListViewUserControl.Designer.cs index fee2693..04e9a8a 100644 --- a/FileSearch/LargeListViewUserControl.Designer.cs +++ b/FileSearch/LargeListViewUserControl.Designer.cs @@ -1,4 +1,12 @@ -namespace FileSearch +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch { partial class LargeListViewUserControl { diff --git a/FileSearch/LargeListViewUserControl.cs b/FileSearch/LargeListViewUserControl.cs index 66fd8d8..e872088 100644 --- a/FileSearch/LargeListViewUserControl.cs +++ b/FileSearch/LargeListViewUserControl.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using FileSearch.Logic.UI.Entries; using FileSearch.Logic.UI.ViewBuilders; diff --git a/FileSearch/Logic/Extensions.cs b/FileSearch/Logic/Extensions.cs index 4520c58..1bf6bc8 100644 --- a/FileSearch/Logic/Extensions.cs +++ b/FileSearch/Logic/Extensions.cs @@ -1,4 +1,12 @@ -using System.Globalization; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using System.Globalization; namespace FileSearch.Logic { diff --git a/FileSearch/Logic/FileSearcher.cs b/FileSearch/Logic/FileSearcher.cs index fa623e7..0187b4f 100644 --- a/FileSearch/Logic/FileSearcher.cs +++ b/FileSearch/Logic/FileSearcher.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.CriterionSchemas; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.CriterionSchemas; using FileSearch.Logic.Model.Engine; using System.Collections.ObjectModel; diff --git a/FileSearch/Logic/Model/Contexts/ZipCriterionContext.cs b/FileSearch/Logic/Model/Contexts/ZipCriterionContext.cs index c5b240d..fd065c5 100644 --- a/FileSearch/Logic/Model/Contexts/ZipCriterionContext.cs +++ b/FileSearch/Logic/Model/Contexts/ZipCriterionContext.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using System.Collections.ObjectModel; namespace FileSearch.Logic.Model.Contexts diff --git a/FileSearch/Logic/Model/CriterionSchemas/AttributeCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/AttributeCriterion.cs index c710b99..5eb16ef 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/AttributeCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/AttributeCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; namespace FileSearch.Logic.Model.CriterionSchemas { diff --git a/FileSearch/Logic/Model/CriterionSchemas/ContentCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/ContentCriterion.cs index 3975025..d47be71 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/ContentCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/ContentCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.EncodingDetection; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.EncodingDetection; using FileSearch.Logic.Model.Engine; using System.Text; diff --git a/FileSearch/Logic/Model/CriterionSchemas/ContentRegexCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/ContentRegexCriterion.cs index a199ae8..1b4b03a 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/ContentRegexCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/ContentRegexCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; namespace FileSearch.Logic.Model.CriterionSchemas { diff --git a/FileSearch/Logic/Model/CriterionSchemas/CriteriaFactory.cs b/FileSearch/Logic/Model/CriterionSchemas/CriteriaFactory.cs index a74f863..136a71c 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/CriteriaFactory.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/CriteriaFactory.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using FileSearch.Logic.Model.Entities; namespace FileSearch.Logic.Model.CriterionSchemas diff --git a/FileSearch/Logic/Model/CriterionSchemas/DateCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/DateCriterion.cs index df22a04..ce932be 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/DateCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/DateCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using FileSearch.Logic.Model.Entities; namespace FileSearch.Logic.Model.CriterionSchemas diff --git a/FileSearch/Logic/Model/CriterionSchemas/IPostProcessingCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/IPostProcessingCriterion.cs index 373ce1f..a5ef588 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/IPostProcessingCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/IPostProcessingCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; namespace FileSearch.Logic.Model.CriterionSchemas { diff --git a/FileSearch/Logic/Model/CriterionSchemas/NameAndZipCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/NameAndZipCriterion.cs index f0b2aba..6b45a86 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/NameAndZipCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/NameAndZipCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Contexts; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Contexts; using FileSearch.Logic.Model.Engine; using Ionic.Zip; diff --git a/FileSearch/Logic/Model/CriterionSchemas/NameCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/NameCriterion.cs index 9974d7e..c87fadc 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/NameCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/NameCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using System.Text.RegularExpressions; namespace FileSearch.Logic.Model.CriterionSchemas diff --git a/FileSearch/Logic/Model/CriterionSchemas/NameRegexCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/NameRegexCriterion.cs index 0e7a8d5..88ee0b4 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/NameRegexCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/NameRegexCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using System.Text.RegularExpressions; namespace FileSearch.Logic.Model.CriterionSchemas diff --git a/FileSearch/Logic/Model/CriterionSchemas/SizeCriterion.cs b/FileSearch/Logic/Model/CriterionSchemas/SizeCriterion.cs index a828507..96646a2 100644 --- a/FileSearch/Logic/Model/CriterionSchemas/SizeCriterion.cs +++ b/FileSearch/Logic/Model/CriterionSchemas/SizeCriterion.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; namespace FileSearch.Logic.Model.CriterionSchemas { diff --git a/FileSearch/Logic/Model/EncodingDetection/IEncodingFactory.cs b/FileSearch/Logic/Model/EncodingDetection/IEncodingFactory.cs index 0bd5a35..a8911f3 100644 --- a/FileSearch/Logic/Model/EncodingDetection/IEncodingFactory.cs +++ b/FileSearch/Logic/Model/EncodingDetection/IEncodingFactory.cs @@ -1,4 +1,12 @@ -using System.Text; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using System.Text; namespace FileSearch.Logic.Model.EncodingDetection { diff --git a/FileSearch/Logic/Model/Engine/CriterionBase.cs b/FileSearch/Logic/Model/Engine/CriterionBase.cs index 97b0603..a031b38 100644 --- a/FileSearch/Logic/Model/Engine/CriterionBase.cs +++ b/FileSearch/Logic/Model/Engine/CriterionBase.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Engine +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Engine { public class CriterionBase { diff --git a/FileSearch/Logic/Model/Engine/CriterionWeight.cs b/FileSearch/Logic/Model/Engine/CriterionWeight.cs index a855dd4..01fc5ab 100644 --- a/FileSearch/Logic/Model/Engine/CriterionWeight.cs +++ b/FileSearch/Logic/Model/Engine/CriterionWeight.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Engine +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Engine { public enum CriterionWeight { diff --git a/FileSearch/Logic/Model/Engine/EngineOptions.cs b/FileSearch/Logic/Model/Engine/EngineOptions.cs index 5c2879d..f5fa9de 100644 --- a/FileSearch/Logic/Model/Engine/EngineOptions.cs +++ b/FileSearch/Logic/Model/Engine/EngineOptions.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.EncodingDetection; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.EncodingDetection; using FileSearch.Logic.Model.Entities; namespace FileSearch.Logic.Model.Engine diff --git a/FileSearch/Logic/Model/Engine/FileCounter.cs b/FileSearch/Logic/Model/Engine/FileCounter.cs index af25607..fa1fefd 100644 --- a/FileSearch/Logic/Model/Engine/FileCounter.cs +++ b/FileSearch/Logic/Model/Engine/FileCounter.cs @@ -1,4 +1,12 @@ -using System.Runtime.InteropServices; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using System.Runtime.InteropServices; namespace FileSearch.Logic.Model.Engine { diff --git a/FileSearch/Logic/Model/Engine/ICriterion.cs b/FileSearch/Logic/Model/Engine/ICriterion.cs index 7cf1825..ccf895d 100644 --- a/FileSearch/Logic/Model/Engine/ICriterion.cs +++ b/FileSearch/Logic/Model/Engine/ICriterion.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Engine +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Engine { public interface ICriterion { diff --git a/FileSearch/Logic/Model/Engine/ICriterionContext.cs b/FileSearch/Logic/Model/Engine/ICriterionContext.cs index e9eec0c..58c8c2c 100644 --- a/FileSearch/Logic/Model/Engine/ICriterionContext.cs +++ b/FileSearch/Logic/Model/Engine/ICriterionContext.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Engine +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Engine { public interface ICriterionContext { diff --git a/FileSearch/Logic/Model/Engine/SearchException.cs b/FileSearch/Logic/Model/Engine/SearchException.cs index 7c1a4a3..e6113c2 100644 --- a/FileSearch/Logic/Model/Engine/SearchException.cs +++ b/FileSearch/Logic/Model/Engine/SearchException.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Engine +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Engine { public class SearchException { diff --git a/FileSearch/Logic/Model/Engine/SearchExceptionFactory.cs b/FileSearch/Logic/Model/Engine/SearchExceptionFactory.cs index 10f43a6..da6a0b9 100644 --- a/FileSearch/Logic/Model/Engine/SearchExceptionFactory.cs +++ b/FileSearch/Logic/Model/Engine/SearchExceptionFactory.cs @@ -1,4 +1,12 @@ -using System.Xml; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using System.Xml; using Ionic.Zip; namespace FileSearch.Logic.Model.Engine diff --git a/FileSearch/Logic/Model/Engine/SearchResult.cs b/FileSearch/Logic/Model/Engine/SearchResult.cs index d14d581..91e178a 100644 --- a/FileSearch/Logic/Model/Engine/SearchResult.cs +++ b/FileSearch/Logic/Model/Engine/SearchResult.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Engine +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Engine { public class SearchResult { diff --git a/FileSearch/Logic/Model/Engine/TimedCallback.cs b/FileSearch/Logic/Model/Engine/TimedCallback.cs index bbcbb11..642a3fb 100644 --- a/FileSearch/Logic/Model/Engine/TimedCallback.cs +++ b/FileSearch/Logic/Model/Engine/TimedCallback.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Engine +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Engine { internal class TimedCallback { diff --git a/FileSearch/Logic/Model/Entities/FileDateOption.cs b/FileSearch/Logic/Model/Entities/FileDateOption.cs index 5263a7c..c0d4c2d 100644 --- a/FileSearch/Logic/Model/Entities/FileDateOption.cs +++ b/FileSearch/Logic/Model/Entities/FileDateOption.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Entities +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Entities { internal enum FileDateOption { diff --git a/FileSearch/Logic/Model/Tree/TreeBuilder.cs b/FileSearch/Logic/Model/Tree/TreeBuilder.cs index f5c8404..f5bb84f 100644 --- a/FileSearch/Logic/Model/Tree/TreeBuilder.cs +++ b/FileSearch/Logic/Model/Tree/TreeBuilder.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Model.Tree +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Model.Tree { public class TreeViewBuilder { diff --git a/FileSearch/Logic/Plugin/ErrorPlugin.cs b/FileSearch/Logic/Plugin/ErrorPlugin.cs index 39b3bcc..412ef4f 100644 --- a/FileSearch/Logic/Plugin/ErrorPlugin.cs +++ b/FileSearch/Logic/Plugin/ErrorPlugin.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.Plugin +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.Plugin { internal class ErrorPlugin : IPluginFacade { diff --git a/FileSearch/Logic/Plugin/ICriterionPlugin.cs b/FileSearch/Logic/Plugin/ICriterionPlugin.cs index 7498aea..b9d64a1 100644 --- a/FileSearch/Logic/Plugin/ICriterionPlugin.cs +++ b/FileSearch/Logic/Plugin/ICriterionPlugin.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; namespace FileSearch.Logic.Plugin { diff --git a/FileSearch/Logic/Plugin/IPluginFacade.cs b/FileSearch/Logic/Plugin/IPluginFacade.cs index 5c6496a..ff8fec0 100644 --- a/FileSearch/Logic/Plugin/IPluginFacade.cs +++ b/FileSearch/Logic/Plugin/IPluginFacade.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.UI.ViewBuilders; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.UI.ViewBuilders; namespace FileSearch.Logic.Plugin { diff --git a/FileSearch/Logic/Plugin/IViewBuilderFactory.cs b/FileSearch/Logic/Plugin/IViewBuilderFactory.cs index d3350f7..4e816e6 100644 --- a/FileSearch/Logic/Plugin/IViewBuilderFactory.cs +++ b/FileSearch/Logic/Plugin/IViewBuilderFactory.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.UI.ViewBuilders; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.UI.ViewBuilders; namespace FileSearch.Logic.Plugin { diff --git a/FileSearch/Logic/Plugin/Plugins.cs b/FileSearch/Logic/Plugin/Plugins.cs index 35aab4c..6ff1bb4 100644 --- a/FileSearch/Logic/Plugin/Plugins.cs +++ b/FileSearch/Logic/Plugin/Plugins.cs @@ -1,4 +1,12 @@ -using System.Reflection; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using System.Reflection; namespace FileSearch.Logic.Plugin { diff --git a/FileSearch/Logic/UI/Entries/IPathEntry.cs b/FileSearch/Logic/UI/Entries/IPathEntry.cs index b5c4726..30788c7 100644 --- a/FileSearch/Logic/UI/Entries/IPathEntry.cs +++ b/FileSearch/Logic/UI/Entries/IPathEntry.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.UI.Entries +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.UI.Entries { public interface IPathEntry { diff --git a/FileSearch/Logic/UI/Entries/PathEntry.cs b/FileSearch/Logic/UI/Entries/PathEntry.cs index 5b938d1..dd89b6d 100644 --- a/FileSearch/Logic/UI/Entries/PathEntry.cs +++ b/FileSearch/Logic/UI/Entries/PathEntry.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.UI.Entries +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.UI.Entries { internal class PathEntry : IPathEntry { diff --git a/FileSearch/Logic/UI/Entries/PathEventArgs.cs b/FileSearch/Logic/UI/Entries/PathEventArgs.cs index b1920ed..97aa891 100644 --- a/FileSearch/Logic/UI/Entries/PathEventArgs.cs +++ b/FileSearch/Logic/UI/Entries/PathEventArgs.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.UI.Entries +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.UI.Entries { internal class PathEventArgs : EventArgs { diff --git a/FileSearch/Logic/UI/Entries/SearchExceptionEntry.cs b/FileSearch/Logic/UI/Entries/SearchExceptionEntry.cs index 0b674b7..352a9db 100644 --- a/FileSearch/Logic/UI/Entries/SearchExceptionEntry.cs +++ b/FileSearch/Logic/UI/Entries/SearchExceptionEntry.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; namespace FileSearch.Logic.UI.Entries { diff --git a/FileSearch/Logic/UI/ViewBuilders/DefaultViewBuilder.cs b/FileSearch/Logic/UI/ViewBuilders/DefaultViewBuilder.cs index d43b632..d7391a3 100644 --- a/FileSearch/Logic/UI/ViewBuilders/DefaultViewBuilder.cs +++ b/FileSearch/Logic/UI/ViewBuilders/DefaultViewBuilder.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.UI.Entries; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.UI.Entries; namespace FileSearch.Logic.UI.ViewBuilders { diff --git a/FileSearch/Logic/UI/ViewBuilders/IViewBuilder.cs b/FileSearch/Logic/UI/ViewBuilders/IViewBuilder.cs index c049cf5..7f1032b 100644 --- a/FileSearch/Logic/UI/ViewBuilders/IViewBuilder.cs +++ b/FileSearch/Logic/UI/ViewBuilders/IViewBuilder.cs @@ -1,4 +1,12 @@ -using FileSearch.Logic.Model.Engine; +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +using FileSearch.Logic.Model.Engine; using FileSearch.Logic.UI.Entries; namespace FileSearch.Logic.UI.ViewBuilders diff --git a/FileSearch/Logic/UI/ViewBuilders/ViewBuilderFactory.cs b/FileSearch/Logic/UI/ViewBuilders/ViewBuilderFactory.cs index 67c2352..4c274dd 100644 --- a/FileSearch/Logic/UI/ViewBuilders/ViewBuilderFactory.cs +++ b/FileSearch/Logic/UI/ViewBuilders/ViewBuilderFactory.cs @@ -1,4 +1,12 @@ -namespace FileSearch.Logic.UI.ViewBuilders +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch.Logic.UI.ViewBuilders { internal static class ViewBuilderFactory { diff --git a/FileSearch/MainForm.Designer.cs b/FileSearch/MainForm.Designer.cs index c509659..40c64c8 100644 --- a/FileSearch/MainForm.Designer.cs +++ b/FileSearch/MainForm.Designer.cs @@ -1,4 +1,12 @@ -namespace FileSearch +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +namespace FileSearch { partial class MainForm { diff --git a/FileSearch/MainForm.cs b/FileSearch/MainForm.cs index 9e759a1..3f815f8 100644 --- a/FileSearch/MainForm.cs +++ b/FileSearch/MainForm.cs @@ -1,3 +1,11 @@ +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + using FileSearch.Logic; using FileSearch.Logic.Model.Engine; using FileSearch.Logic.Model.Tree; @@ -28,7 +36,7 @@ namespace FileSearch #region Logic /// - /// + /// Подготовка к запуску сеанса поиска /// private DirectoryInfo SearchInit() { @@ -41,14 +49,14 @@ namespace FileSearch SaveInfo(comboBox: true); - SearchBtn.Text = @""; - statusLabel.Text = @"... ."; + SearchBtn.Text = @"Остановить"; + statusLabel.Text = @"Поиск... Пожалуйста подождите."; statusLabelExceptions.Text = null; return new DirectoryInfo(DirPathTxt.Text.Trim('\\') + "\\"); } /// - /// + /// Обработка события обнаружения данных /// /// searchResults private void LoadList(IEnumerable searchResults) @@ -66,13 +74,13 @@ namespace FileSearch } lstResults.AddSearchResults(searchResults); - AddTimerTextInfo(_fileSearcher.CurrentTime.GetFriendlyNotation()); // - AddFindFilesCount(lstResults.Count); // - AddThreeViewData(searchResults); // + AddTimerTextInfo(_fileSearcher.CurrentTime.GetFriendlyNotation()); // обновляем таймер + AddFindFilesCount(lstResults.Count); // Обновляем число обнаруженных файлов + AddThreeViewData(searchResults); // Обновляем дерево директорий } /// - /// + /// Обработка окончания сеанса поиска /// private void LoadListFinished() { @@ -84,23 +92,23 @@ namespace FileSearch var exceptions = _fileSearcher.Exceptions; if (exceptions.Count > 0) - statusLabelExceptions.Text = string.Format(CultureInfo.InvariantCulture, "{0} ", exceptions.Count); + statusLabelExceptions.Text = string.Format(CultureInfo.InvariantCulture, "{0} ошибок в поиске", exceptions.Count); - SearchBtn.Text = @""; - PauseBtn.Text = @""; + SearchBtn.Text = @"Поиск"; + PauseBtn.Text = @"Пауза"; SearchBtn.Enabled = true; - statusLabel.Text = @" " + _fileSearcher.OperatingTime.GetFriendlyNotation() + @". : " + lstResults.Count; + statusLabel.Text = @"Завершено за " + _fileSearcher.OperatingTime.GetFriendlyNotation() + @". Найдено: " + lstResults.Count; toolStripProgressBar1.Style = ProgressBarStyle.Blocks; if (DirsTreeView.Nodes.Count > 0) DirsTreeView.Focus(); } /// - /// + /// Конфигурирование критерий поиска /// - /// TODO: - /// UI Control + /// TODO: В будущем можно сделать тонкую настройку + /// критерий поиска в UI указав Control для включения тех или иных /// /// directoryInfo /// text @@ -128,7 +136,7 @@ namespace FileSearch } /// - /// + /// Построение дерева директорий /// /// IEnumerable private void AddThreeViewData(IEnumerable searchResults) @@ -137,7 +145,7 @@ namespace FileSearch } /// - /// + /// Инициализация чтения максимального числа файлов в директории /// private void LoadingMaxFiles() { @@ -153,7 +161,7 @@ namespace FileSearch } /// - /// async + /// Формирование async задачи на чтение максимального числа файлов в директории /// /// path public async Task GetAllFilesExecute(string searchPath) @@ -166,7 +174,7 @@ namespace FileSearch } /// - /// ( ) + /// Получение максимального числа файлов в директории (с вложенными внутри) /// /// path private void GetAllFiles(string searchPath) @@ -183,7 +191,7 @@ namespace FileSearch } catch (OperationCanceledException) { - // + // Обработка отмены операции AddMaxFilesTxtInfo(count.ToString()); AddProgressBarLoadMax(false); } @@ -227,28 +235,28 @@ namespace FileSearch } catch (OperationCanceledException) { - throw; // + throw; // Пробрасываем исключение дальше для обработки в вызывающем коде } catch (UnauthorizedAccessException) { - return 0; // , + return 0; // Пропускаем каталоги, к которым нет доступа } catch (DirectoryNotFoundException) { - return 0; // + return 0; // Пропускаем отсутствующие каталоги } } /// - /// () + /// Сохранение полей (простейшее) /// - /// comboBox + /// сохранение выбранного пути в comboBox в текущей сессии private void SaveInfo(bool comboBox = false) { File.WriteAllText(@"DirInfo.dat", DirPathTxt.Text); File.WriteAllText(@"FileRegex.dat", FileRegexPathTxt.Text); - // + //сохранение выбранного пути для поиска в текущей сессии if (comboBox) { var content = DirPathTxt.SelectedItem != null ? (string)DirPathTxt.SelectedItem : DirPathTxt.Text; @@ -308,7 +316,7 @@ namespace FileSearch var dirInfo = SearchInit(); if (!dirInfo.Exists) { - MessageBox.Show(@" .", @"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); + MessageBox.Show(@"Путь не существует.", @"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } @@ -321,8 +329,8 @@ namespace FileSearch { _fileSearcher?.Pause((state) => { - PauseBtn.Text = (state) ? "" : ""; - }, (PauseBtn.Text == "") ? false : true); + PauseBtn.Text = (state) ? "Далее" : "Пауза"; + }, (PauseBtn.Text == "Далее") ? false : true); } private void DirPathTxt_TextChanged(object sender, EventArgs e) @@ -354,7 +362,7 @@ namespace FileSearch { if (_fileSearcher != null && _fileSearcher.IsRunning) { - MessageBox.Show(" !"); + MessageBox.Show("Поиск ещё идёт!"); return; } @@ -382,7 +390,7 @@ namespace FileSearch #region Async UI /// - /// AllFilesTxt + /// Обновление AllFilesTxt /// /// count private void AddMaxFilesTxtInfo(string text) @@ -398,7 +406,7 @@ namespace FileSearch } /// - /// pictureBoxLoading + /// Обновление pictureBoxLoading /// /// bool private void AddProgressBarLoadMax(bool visible) @@ -414,7 +422,7 @@ namespace FileSearch } /// - /// timerTxt + /// Обновление timerTxt /// /// count private void AddTimerTextInfo(string text) @@ -430,7 +438,7 @@ namespace FileSearch } /// - /// FindFilesTxt + /// Обновление FindFilesTxt /// /// count private void AddFindFilesCount(int count) diff --git a/FileSearch/Program.cs b/FileSearch/Program.cs index 1f188fc..87b772d 100644 --- a/FileSearch/Program.cs +++ b/FileSearch/Program.cs @@ -1,14 +1,22 @@ +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + namespace FileSearch { internal static class Program { /// - /// . + /// Основная точка входа в приложение. /// [STAThread] static void Main() { - // , , + // Чтобы настроить конфигурацию приложения, например установить настройки высокого разрешения или шрифт по умолчанию, // https://aka.ms/applicationconfiguration. ApplicationConfiguration.Initialize(); Application.Run(new MainForm()); diff --git a/FileSearch/Resource.Designer.cs b/FileSearch/Resource.Designer.cs index 057ceb5..de3cc3a 100644 --- a/FileSearch/Resource.Designer.cs +++ b/FileSearch/Resource.Designer.cs @@ -1,4 +1,12 @@ -//------------------------------------------------------------------------------ +/* + * Author: Nikolay Dvurechensky + * Site: https://www.dvurechensky.pro/ + * Gmail: dvurechenskysoft@gmail.com + * Last Updated: 12 мая 2025 06:51:53 + * Version: 1.0.7 + */ + +//------------------------------------------------------------------------------ // // Этот код создан программой. // Исполняемая версия:4.0.30319.42000 diff --git a/GIT_Media/view.gif b/GIT_Media/view.gif index 833818f..209d2fe 100644 Binary files a/GIT_Media/view.gif and b/GIT_Media/view.gif differ