示例#1
0
文件: Events.cs 项目: okevin/chama
        internal static ExtractProgressEventArgs ExtractAllCompleted(string archiveName, string extractLocation)
        {
            var x = new ExtractProgressEventArgs(archiveName, ZipProgressEventType.Extracting_AfterExtractAll);

            x._target = extractLocation;
            return(x);
        }
示例#2
0
文件: Events.cs 项目: okevin/chama
        internal static ExtractProgressEventArgs ByteUpdate(string archiveName, ZipEntry entry, Int64 bytesWritten, Int64 totalBytes)
        {
            var x = new ExtractProgressEventArgs(archiveName, ZipProgressEventType.Extracting_EntryBytesWritten);

            x.ArchiveName          = archiveName;
            x.CurrentEntry         = entry;
            x.BytesTransferred     = bytesWritten;
            x.TotalBytesToTransfer = totalBytes;
            return(x);
        }
示例#3
0
        private void OnExtractAllStarted(string path)
        {
            EventHandler <ExtractProgressEventArgs> ep = ExtractProgress;

            if (ep != null)
            {
                var e = ExtractProgressEventArgs.ExtractAllStarted(ArchiveNameForEvent,
                                                                   path);
                ep(this, e);
            }
        }
示例#4
0
文件: Events.cs 项目: okevin/chama
        internal static ExtractProgressEventArgs AfterExtractEntry(string archiveName, ZipEntry entry, string extractLocation)
        {
            var x = new ExtractProgressEventArgs
            {
                ArchiveName  = archiveName,
                EventType    = ZipProgressEventType.Extracting_AfterExtractEntry,
                CurrentEntry = entry,
                _target      = extractLocation,
            };

            return(x);
        }
示例#5
0
文件: Events.cs 项目: okevin/chama
        internal static ExtractProgressEventArgs ExtractExisting(string archiveName, ZipEntry entry, string extractLocation)
        {
            var x = new ExtractProgressEventArgs
            {
                ArchiveName  = archiveName,
                EventType    = ZipProgressEventType.Extracting_ExtractEntryWouldOverwrite,
                CurrentEntry = entry,
                _target      = extractLocation,
            };

            return(x);
        }
示例#6
0
        private void OnExtractEntry(int current, bool before, ZipEntry currentEntry, string path)
        {
            EventHandler <ExtractProgressEventArgs> ep = ExtractProgress;

            if (ep != null)
            {
                var e = new ExtractProgressEventArgs(ArchiveNameForEvent, before, _entries.Count, current, currentEntry, path);
                ep(this, e);
                if (e.Cancel)
                {
                    _extractOperationCanceled = true;
                }
            }
        }
示例#7
0
        internal bool OnExtractExisting(ZipEntry entry, string path)
        {
            EventHandler <ExtractProgressEventArgs> ep = ExtractProgress;

            if (ep != null)
            {
                var e = ExtractProgressEventArgs.ExtractExisting(ArchiveNameForEvent, entry, path);
                ep(this, e);
                if (e.Cancel)
                {
                    _extractOperationCanceled = true;
                }
            }
            return(_extractOperationCanceled);
        }
示例#8
0
        // Can be called from within ZipEntry._ExtractOne.
        internal bool OnExtractBlock(ZipEntry entry, Int64 bytesWritten, Int64 totalBytesToWrite)
        {
            EventHandler <ExtractProgressEventArgs> ep = ExtractProgress;

            if (ep != null)
            {
                var e = ExtractProgressEventArgs.ByteUpdate(ArchiveNameForEvent, entry,
                                                            bytesWritten, totalBytesToWrite);
                ep(this, e);
                if (e.Cancel)
                {
                    _extractOperationCanceled = true;
                }
            }
            return(_extractOperationCanceled);
        }
示例#9
0
        // Can be called from within ZipEntry.InternalExtract.
        internal bool OnSingleEntryExtract(ZipEntry entry, string path, bool before)
        {
            EventHandler <ExtractProgressEventArgs> ep = ExtractProgress;

            if (ep != null)
            {
                var e = (before)
                    ? ExtractProgressEventArgs.BeforeExtractEntry(ArchiveNameForEvent, entry, path)
                    : ExtractProgressEventArgs.AfterExtractEntry(ArchiveNameForEvent, entry, path);
                ep(this, e);
                if (e.Cancel)
                {
                    _extractOperationCanceled = true;
                }
            }
            return(_extractOperationCanceled);
        }