Ejemplo n.º 1
0
        private void StartProcess(string[] files)
        {
            AProgressBar.Value = 0;
            DropGrid.AllowDrop = false;
            ((Storyboard)Resources["StartStoryboard"]).Begin();

            ProcessThread = new Thread(() => {
                IsProcessing         = true;
                ProgressUpdateThread = new Thread(ProgressUpdateLoop);
                ProgressUpdateThread.Start();

                string message = ProcessUnit.Process(files);

                IsProcessing = false;

                Dispatcher.Invoke(() =>
                {
                    AProgressBar.Value = -1;
                    DropGrid.AllowDrop = true;
                    ((Storyboard)Resources["EndStoryboard"]).Begin();
                    MessageBox.Show(this, message);
                    ProcessFinished?.Invoke();
                });
            });
            ProcessThread.Start();
        }
Ejemplo n.º 2
0
 public YouTube(ProcessFinished processFinished, ImageReady imageReady)
 {
     _processFinished = processFinished;
     _imageReady = imageReady;
     _webClient = new WebClient {Proxy = null}; //Make connection smooth
     _webClient.DownloadDataCompleted += WebClientDownloadDataCompleted;
 }
 public void StartProcess()
 {
     if (_currentUnitIndex >= _downloadUnints.Length)
     {
         ProcessFinished?.Invoke(new DownloadProcessControlEventArgs
         {
             Message = $"BIN文件全部下载结束,共{TotalFileDownloadMissions}个文件,成功下载{CurrentFileIndex}个文件。"
         });
         return;
     }
     _onProcessUnit = _downloadUnints[_currentUnitIndex];
     _onProcessUnit.DownloadInterrupted += (e) =>
     {
         if (_currentUnitIndex >= _downloadUnints.Length)
         {
             ProcessInterrupted?.Invoke(new DownloadProcessControlEventArgs
             {
                 Message   = e.Message,
                 Exception = e.Exception
             });
         }
         else
         {
             ProcessSkiped?.Invoke(new DownloadProcessControlEventArgs
             {
                 Message   = "文件下载出错,下载已跳过,继续处理后续设备下载。",
                 Exception = e.Exception
             });
             StartProcess();
         }
     };
     _onProcessUnit.DownloadFinished += (e) => StartProcess();
     _onProcessUnit.StartDownload();
     _currentUnitIndex++;
 }
Ejemplo n.º 4
0
        private void Preload_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            ProcessProgressChanged.Invoke(this, new EventValueArgs <int>(100));
            ProcessFinished.Invoke(this, null);
            if (e.Error != null)
            {
                ProcessProgressChanged.Invoke(this, new EventValueArgs <int>(0));
                UpdateProcessMessage(ModLoaderText.Process_Error + " " + e.Error.Message);
            }
            else if (!e.Cancelled)
            {
                UpdateProcessMessage("Preload complete!");
                GamePreloaded = true;
                ModMenuUpdated.Invoke(this, new EventValueArgs <bool>(false));
            }
            else
            {
                ProcessProgressChanged.Invoke(this, new EventValueArgs <int>(0));
                UpdateProcessMessage(ModLoaderText.Process_Cancelled);
            }

            InteractionEnable.Invoke(this, null);

            BackgroundWorker a = sender as BackgroundWorker;

            a.DoWork             -= Preload_DoWork;
            a.RunWorkerCompleted -= Preload_RunWorkerCompleted;
            a.ProgressChanged    -= Preload_ProgressChanged;
        }
Ejemplo n.º 5
0
        public async void UndoRenaming()
        {
            UndoAvailable = false;

            var result = await UndoRenamingAsync();

            ProcessFinished?.Invoke(result.Item1, result.Item2);
        }
Ejemplo n.º 6
0
 public YouTube(ProcessFinished processFinished, ImageReady imageReady)
 {
     _processFinished = processFinished;
     _imageReady      = imageReady;
     _webClient       = new WebClient {
         Proxy = null
     };                                         //Make connection smooth
     _webClient.DownloadDataCompleted += WebClientDownloadDataCompleted;
 }
Ejemplo n.º 7
0
 public QuickCrc32(ProgressChanged pc, ProcessFinished pf)
 {
     _processFinished = pf;
     _progressChanged = pc;
     _bw = new BackgroundWorker {
         WorkerReportsProgress = true, WorkerSupportsCancellation = true
     };
     _bw.ProgressChanged    += BwProgressChanged;
     _bw.RunWorkerCompleted += BwRunWorkerCompleted;
     _bw.DoWork             += BwDoWork;
 }
Ejemplo n.º 8
0
        public void RunRename()
        {
            string destFolder = PhotosDirectory + @"\Renamed";

            try {
                string[] files = System.IO.Directory.GetFiles(PhotosDirectory);
                if (files == null || files.Length == 0)
                {
                    throw new Exception("Нет файлов в папке: " + PhotosDirectory);
                }

                int renamed = 0;
                foreach (string s in files)
                {
                    string shortFileName = System.IO.Path.GetFileNameWithoutExtension(s);
                    string supplierID    = GetSupplierIDFromFileName(shortFileName);
                    string contractorID  = GetContractorID(supplierID);

                    if (!string.IsNullOrEmpty(contractorID))
                    {
                        if (!System.IO.Directory.Exists(destFolder))
                        {
                            System.IO.Directory.CreateDirectory(destFolder);
                        }

                        string dest = destFolder + @"\" + contractorID + GetFileNameWithoutSupplierID(shortFileName) + System.IO.Path.GetExtension(s);
                        System.IO.File.Copy(s, dest, true);
                        renamed++;
                        SendMessage?.Invoke("для файла " + shortFileName + " найдено соответствие: " + contractorID);
                    }
                }
                SendMessage?.Invoke("Всего обработано файлов: " + renamed.ToString());
                ProcessFinished?.Invoke();
            }
            catch (Exception ex)
            {
                ProcessFinshedWithError?.Invoke(ex);
            }
        }
Ejemplo n.º 9
0
 public FfmpegWrapper(string ffpmegPath, ProgressChanged progressChanged, ProcessFinished processFinished)
 {
     _ffpmegPath      = ffpmegPath;
     _progressChanged = progressChanged;
     _processFinished = processFinished;
 }
Ejemplo n.º 10
0
        public async void StartRenaming()
        {
            var result = await RecursiveRenamerAsync(startFolder);

            ProcessFinished?.Invoke(result.Item1, result.Item2);
        }
Ejemplo n.º 11
0
 public QuickCrc32(ProgressChanged pc, ProcessFinished pf)
 {
     _processFinished = pf;
     _progressChanged = pc;
     _bw = new BackgroundWorker {WorkerReportsProgress = true, WorkerSupportsCancellation = true};
     _bw.ProgressChanged += BwProgressChanged;
     _bw.RunWorkerCompleted += BwRunWorkerCompleted;
     _bw.DoWork += BwDoWork;
 }
Ejemplo n.º 12
0
 private void OnProcessFinishedChange(object sender, ProcessArgs e)
 {
     ProcessFinished?.Invoke(sender, e);
 }
Ejemplo n.º 13
0
 protected override void ProcessExited(object sender, EventArgs e)
 {
     ProcessFinished?.Invoke(this, e);
 }
Ejemplo n.º 14
0
 public void ProcessFinish()
 {
     ProcessFinished?.Invoke();
 }
Ejemplo n.º 15
0
 public FfmpegWrapper(string ffpmegPath, ProgressChanged progressChanged, ProcessFinished processFinished)
 {
     _ffpmegPath = ffpmegPath;
     _progressChanged = progressChanged;
     _processFinished = processFinished;
 }
Ejemplo n.º 16
0
 /// <summary>
 /// Invoked when process has finished
 /// </summary>
 private void OnProcessFinished()
 {
     Debug.Assert(GetTotalProcessTokens() - GetTotalTokens(Definition.Finish.Id) == 0);
     Debug.Assert(GetActiveTransitions().Count == 0);
     _status = ProcessStatus.Finished;
     _finishDate = DateTime.Now;
     ProcessFinished pf = new ProcessFinished();
     pf.InstanceId = InstanceId;
     pf.DefinitionId = ProcessDefinitionId;
     pf.CorrelationId = CorrelationId;
     NotifyProcessEvent(pf);
 }
        private void BackgroundRunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            var movieList = _queryImplemantationManager.MovieList;

            ProcessFinished?.Invoke(movieList);
        }
Ejemplo n.º 18
0
 protected virtual void OnProcessFinished(ThreadEventArgs args)
 {
     ProcessFinished?.Invoke(this, args);
 }
 /// <summary>
 /// Invoked when process has finished
 /// </summary>
 private void OnProcessFinished()
 {
     Debug.Assert(GetActiveProcessTokens().Count == 0);
     _status = ProcessStatus.Finished;
     ProcessFinished pf = new ProcessFinished();
     pf.InstanceId = InstanceId;
     pf.DefinitionId = ProcessDefinitionId;
     pf.CorrelationId = CorrelationId;
     NotifyProcessEvent(pf);
 }