Exemple #1
0
        public void Sort(IProgressDialog progressDialog)
        {
            var backgroundWorker = new WriteSortToDiskBackgroundWorker();

            var args = new WriteSortToDiskBackgroundWorker.Arguments(
                OutputDirectory,
                Form.MoveOrCopy,
                GroupList
                );

            progressDialog.SubscribeToBackgroundWorker(backgroundWorker);

            backgroundWorker.RunWorkerCompleted += delegate { Form.OnProgressCompleted(); };

            backgroundWorker.RunWorkerAsync(args);

            progressDialog.Show();
        }
Exemple #2
0
        public void SortPreview(bool inDebugMode, IProgressDialog progressDialog)
        {
            var           groupFormats      = Form.SelectedGroupFormats;
            List <string> sourceDirectories = Form.SourceDirectories;
            string        outputDirectory   = Form.OutputDirectory;

            if (inDebugMode)
            {
                groupFormats = new List <string>()
                {
                    GroupName.YEAR_FORMAT,
                    GroupName.MONTH_FORMAT,
                    GroupName.DAY_FORMAT,
                    GroupName.HOUR_FORMAT
                };

                sourceDirectories = new List <string>()
                {
                    DEBUG_SOURCE
                };
                outputDirectory = DEBUG_OUTPUT;
            }
            else if (!AreOptionsValid())
            {
                return;
            }

            var backgroundWorker = new SortPreviewBackgroundWorker();

            var args = new SortPreviewBackgroundWorker.Arguments(
                sourceDirectories,
                outputDirectory,
                Form.IncludeSubDirectories,
                groupFormats
                );

            progressDialog.SubscribeToBackgroundWorker(backgroundWorker);

            backgroundWorker.RunWorkerCompleted += Form.OnSortPreviewComplete;

            backgroundWorker.RunWorkerAsync(args);

            progressDialog.Show();
        }