73 lines
2.0 KiB
C#
73 lines
2.0 KiB
C#
using GluonGui.WorkspaceWindow.Views.Checkin.Operations;
|
|
using GluonGui.WorkspaceWindow.Views.WorkspaceExplorer.Explorer;
|
|
|
|
namespace Unity.PlasticSCM.Editor.Gluon
|
|
{
|
|
internal class ProgressOperationHandler : IUpdateProgress, ICheckinProgress
|
|
{
|
|
internal ProgressOperationHandler(PlasticGUIClient guiClient)
|
|
{
|
|
mGuiClient = guiClient;
|
|
}
|
|
|
|
internal bool IsOperationInProgress()
|
|
{
|
|
return mUpdateProgress != null
|
|
|| mCheckinProgress != null;
|
|
}
|
|
|
|
internal void CancelUpdateProgress()
|
|
{
|
|
mUpdateProgress.Cancel();
|
|
}
|
|
|
|
void ICheckinProgress.ShowProgress()
|
|
{
|
|
mCheckinProgress = new CheckinProgress(mGuiClient);
|
|
}
|
|
|
|
void ICheckinProgress.RefreshProgress(CheckinProgressData progress)
|
|
{
|
|
mCheckinProgress.Refresh(progress);
|
|
}
|
|
|
|
void ICheckinProgress.EndProgress()
|
|
{
|
|
mCheckinProgress = null;
|
|
mGuiClient.Progress.ResetProgress();
|
|
mGuiClient.RequestRepaint();
|
|
}
|
|
|
|
void IUpdateProgress.ShowNoCancelableProgress()
|
|
{
|
|
mUpdateProgress = new UpdateProgress(mGuiClient);
|
|
mUpdateProgress.SetCancellable(false);
|
|
}
|
|
|
|
void IUpdateProgress.ShowCancelableProgress()
|
|
{
|
|
mUpdateProgress = new UpdateProgress(mGuiClient);
|
|
mUpdateProgress.SetCancellable(true);
|
|
}
|
|
|
|
void IUpdateProgress.RefreshProgress(
|
|
Codice.Client.BaseCommands.UpdateProgress updateProgress,
|
|
UpdateProgressData updateProgressData)
|
|
{
|
|
mUpdateProgress.RefreshProgress(updateProgress, updateProgressData);
|
|
}
|
|
|
|
void IUpdateProgress.EndProgress()
|
|
{
|
|
mUpdateProgress = null;
|
|
mGuiClient.Progress.ResetProgress();
|
|
mGuiClient.RequestRepaint();
|
|
}
|
|
|
|
UpdateProgress mUpdateProgress;
|
|
CheckinProgress mCheckinProgress;
|
|
|
|
PlasticGUIClient mGuiClient;
|
|
}
|
|
}
|