64 lines
2.2 KiB
C#
64 lines
2.2 KiB
C#
using Codice.CM.Common;
|
|
using GluonGui.WorkspaceWindow.Views.WorkspaceExplorer.Explorer;
|
|
using Unity.PlasticSCM.Editor.AssetUtils;
|
|
using Unity.PlasticSCM.Editor.UI;
|
|
|
|
namespace Unity.PlasticSCM.Editor.Views.Changesets
|
|
{
|
|
internal partial class ChangesetsTab
|
|
{
|
|
void SwitchToChangesetForMode()
|
|
{
|
|
bool isCancelled;
|
|
SaveAssets.UnderWorkspaceWithConfirmation(
|
|
mWkInfo.ClientPath, mWorkspaceOperationsMonitor,
|
|
out isCancelled);
|
|
|
|
if (isCancelled)
|
|
return;
|
|
|
|
if (mIsGluonMode)
|
|
{
|
|
SwitchToChangesetForGluon();
|
|
return;
|
|
}
|
|
|
|
SwitchToChangesetForDeveloper();
|
|
}
|
|
|
|
void SwitchToChangesetForDeveloper()
|
|
{
|
|
mChangesetOperations.SwitchToChangeset(
|
|
ChangesetsSelection.GetSelectedRepository(mChangesetsListView),
|
|
ChangesetsSelection.GetSelectedChangeset(mChangesetsListView),
|
|
RefreshAsset.BeforeLongAssetOperation,
|
|
items => RefreshAsset.AfterLongAssetOperation(
|
|
ProjectPackages.ShouldBeResolvedFromUpdateReport(mWkInfo, items)));
|
|
}
|
|
|
|
void SwitchToChangesetForGluon()
|
|
{
|
|
ChangesetExtendedInfo csetInfo = ChangesetsSelection.GetSelectedChangeset(mChangesetsListView);
|
|
|
|
new SwitchToUIOperation().SwitchToChangeset(
|
|
mWkInfo,
|
|
PlasticGui.Plastic.API.GetRepositorySpec(mWkInfo),
|
|
csetInfo.BranchName,
|
|
csetInfo.ChangesetId,
|
|
mViewHost,
|
|
mGluonNewIncomingChangesUpdater,
|
|
new UnityPlasticGuiMessage(),
|
|
mProgressControls,
|
|
mWorkspaceWindow.GluonProgressOperationHandler,
|
|
mGluonUpdateReport,
|
|
mWorkspaceWindow,
|
|
mShelvePendingChangesQuestionerBuilder,
|
|
mShelvedChangesUpdater,
|
|
mEnableSwitchAndShelveFeatureDialog,
|
|
RefreshAsset.BeforeLongAssetOperation,
|
|
items => RefreshAsset.AfterLongAssetOperation(
|
|
ProjectPackages.ShouldBeResolvedFromPaths(mWkInfo, items)));
|
|
}
|
|
}
|
|
}
|