Ejemplo n.º 1
0
 private void unrar_ExtractionProgress(object sender, ExtractionProgressEventArgs e)
 {
     if (e.PercentComplete == 100)
     {
         this.fileIndex++;
         int value = (int)(this.fileIndex * 100 / (this.fileCount * 1.0));
         this.setProcess(value);
         this.setMessage("正在解压文件。(第" + this.fileIndex + "个,共" + this.fileCount + "个)。" + value + "%");
         logger.Info("ExtractionProgress - fileName=" + e.FileName + ", PercentComplete=" + e.PercentComplete + "。(第" + this.fileIndex + "个,共" + this.fileCount + "个), value=" + value);
     }
 }
Ejemplo n.º 2
0
 private void unrar_ExtractionProgress(object sender, ExtractionProgressEventArgs e)
 {
     if (stopEvent.WaitOne(0))
     {
         e.ContinueOperation = false;
     }
     if (OnUnrarProgress != null)
     {
         OnUnrarProgress(e.BytesExtracted, e.FileSize, string.Format("Распаковка {0}", e.FileName));
     }
 }
Ejemplo n.º 3
0
        //private void UpdateFileSystemElementTreeState(FileSystemItemModel fileSystemItemModel)
        //{
        //  this.IsExplorerInDefaultState = (fileSystemItemModel.IsEmptyElement ||
        //                                   fileSystemItemModel.IsSystemDirectory && !fileSystemItemModel.IsExpanded)
        //                                  && this.VirtualExplorerRootDirectory.ChildFileSystemItems
        //                                    .All((topLevelElement) => topLevelElement.IsSystemDirectory
        //                                                              && !topLevelElement.IsExpanded
        //                                                              || !this.VirtualExplorerRootDirectory.ChildFileSystemItems.Any());
        //}

        //public void ObserveTopLevelDirectoryIsExpanded(FileSystemItemModel topLevelDirectory) => topLevelDirectory.ExpandedChanged += ToggleDragDropHintOnTopLevelDirectoryExpanded;

        //private void ToggleDragDropHintOnTopLevelDirectoryExpanded(object sender, ValueChangedEventArgs<bool> e)
        //{
        //  UpdateFileSystemElementTreeState(sender as FileSystemItemModel);
        //}


        private void ReportExtractionProgress(ExtractionProgressEventArgs e)
        {
            Application.Current.Dispatcher?.InvokeAsync(
                () =>
            {
                if (!this.ExtractionProgressTable.ContainsKey(e.ArchiveInfo))
                {
                    this.ExtractionProgressTable.Add(e.ArchiveInfo, e);
                    return;
                }

                if (e.PercentageRead <= this.ExtractionProgressTable[e.ArchiveInfo].PercentageRead)
                {
                    return;
                }

                this.ExtractionProgressTable[e.ArchiveInfo] = e;
            }, DispatcherPriority.Render);
        }
Ejemplo n.º 4
0
 private void unrar_ExtractionProgress(object sender, ExtractionProgressEventArgs e)
 {
     RaiseSubProgressEvent("Extracting file: " + e.FileName, e.PercentComplete, e.BytesExtracted, e.FileSize);
 }
Ejemplo n.º 5
0
 private void unrar_ExtractionProgress(object sender, ExtractionProgressEventArgs e)
 {
     if (stopEvent.WaitOne(0))
         e.ContinueOperation = false;
     if (OnUnrarProgress != null)
         OnUnrarProgress(e.BytesExtracted,e.FileSize,string.Format("Распаковка {0}", e.FileName));
 }