aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.WixBA/ProgressViewModel.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.WixBA/ProgressViewModel.cs')
-rw-r--r--src/WixToolset.WixBA/ProgressViewModel.cs33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/WixToolset.WixBA/ProgressViewModel.cs b/src/WixToolset.WixBA/ProgressViewModel.cs
index 17af5cfe..6f7bb028 100644
--- a/src/WixToolset.WixBA/ProgressViewModel.cs
+++ b/src/WixToolset.WixBA/ProgressViewModel.cs
@@ -40,6 +40,9 @@ namespace WixToolset.WixBA
40 WixBA.Model.Bootstrapper.ApplyBegin += this.ApplyBegin; 40 WixBA.Model.Bootstrapper.ApplyBegin += this.ApplyBegin;
41 WixBA.Model.Bootstrapper.Progress += this.ApplyProgress; 41 WixBA.Model.Bootstrapper.Progress += this.ApplyProgress;
42 WixBA.Model.Bootstrapper.CacheAcquireProgress += this.CacheAcquireProgress; 42 WixBA.Model.Bootstrapper.CacheAcquireProgress += this.CacheAcquireProgress;
43 WixBA.Model.Bootstrapper.CacheContainerOrPayloadVerifyProgress += CacheContainerOrPayloadVerifyProgress;
44 WixBA.Model.Bootstrapper.CachePayloadExtractProgress += CachePayloadExtractProgress;
45 WixBA.Model.Bootstrapper.CacheVerifyProgress += CacheVerifyProgress;
43 WixBA.Model.Bootstrapper.CacheComplete += this.CacheComplete; 46 WixBA.Model.Bootstrapper.CacheComplete += this.CacheComplete;
44 } 47 }
45 48
@@ -184,6 +187,36 @@ namespace WixToolset.WixBA
184 } 187 }
185 } 188 }
186 189
190 private void CacheContainerOrPayloadVerifyProgress(object sender, CacheContainerOrPayloadVerifyProgressEventArgs e)
191 {
192 lock (this)
193 {
194 this.cacheProgress = e.OverallPercentage;
195 this.Progress = (this.cacheProgress + this.executeProgress) / this.progressPhases;
196 e.Cancel = this.root.Canceled;
197 }
198 }
199
200 private void CachePayloadExtractProgress(object sender, CachePayloadExtractProgressEventArgs e)
201 {
202 lock (this)
203 {
204 this.cacheProgress = e.OverallPercentage;
205 this.Progress = (this.cacheProgress + this.executeProgress) / this.progressPhases;
206 e.Cancel = this.root.Canceled;
207 }
208 }
209
210 private void CacheVerifyProgress(object sender, CacheVerifyProgressEventArgs e)
211 {
212 lock (this)
213 {
214 this.cacheProgress = e.OverallPercentage;
215 this.Progress = (this.cacheProgress + this.executeProgress) / this.progressPhases;
216 e.Cancel = this.root.Canceled;
217 }
218 }
219
187 private void CacheComplete(object sender, CacheCompleteEventArgs e) 220 private void CacheComplete(object sender, CacheCompleteEventArgs e)
188 { 221 {
189 lock (this) 222 lock (this)