You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.5 KiB
47 lines
1.5 KiB
using System; |
|
|
|
using Codice.Client.BaseCommands; |
|
using Codice.Client.Commands; |
|
using PlasticGui.WorkspaceWindow; |
|
using PlasticGui.WorkspaceWindow.Update; |
|
|
|
namespace Unity.PlasticSCM.Editor.Developer |
|
{ |
|
internal class UpdateProgress |
|
{ |
|
internal UpdateProgress( |
|
UpdateNotifier notifier, string wkPath, string title, |
|
WorkspaceWindow workspaceWindow) |
|
{ |
|
mNotifier = notifier; |
|
mWkPath = wkPath; |
|
mWorkspaceWindow = workspaceWindow; |
|
|
|
mProgressData = new BuildProgressSpeedAndRemainingTime.ProgressData(DateTime.Now); |
|
|
|
mWorkspaceWindow.Progress.ProgressHeader = title; |
|
mWorkspaceWindow.Progress.CanCancelProgress = false; |
|
} |
|
|
|
internal void OnUpdateProgress() |
|
{ |
|
var progress = mWorkspaceWindow.Progress; |
|
|
|
progress.ProgressHeader = UpdateProgressRender.FixNotificationPath( |
|
mWkPath, mNotifier.GetNotificationMessage()); |
|
|
|
UpdateOperationStatus status = mNotifier.GetUpdateStatus(); |
|
|
|
progress.TotalProgressMessage = UpdateProgressRender.GetProgressString( |
|
status, mProgressData); |
|
|
|
progress.TotalProgressPercent = GetProgressBarPercent.ForTransfer( |
|
status.UpdatedSize, status.TotalSize) / 100f; |
|
} |
|
|
|
readonly BuildProgressSpeedAndRemainingTime.ProgressData mProgressData; |
|
readonly WorkspaceWindow mWorkspaceWindow; |
|
readonly string mWkPath; |
|
readonly UpdateNotifier mNotifier; |
|
} |
|
}
|
|
|