static void AddDiffChangesetMenuItem( GUIContent menuItemContent, GenericMenu menu, ChangesetExtendedInfo changeset, ChangesetMenuOperations operations, GenericMenu.MenuFunction menuFunction) { string changesetName = changeset != null? changeset.ChangesetId.ToString() : string.Empty; menuItemContent.text = PlasticLocalization.GetString(PlasticLocalization.Name.AnnotateDiffChangesetMenuItem, changesetName); if (operations.HasFlag(ChangesetMenuOperations.DiffChangeset)) { menu.AddItem( menuItemContent, false, menuFunction); return; } menu.AddDisabledItem( menuItemContent); }
static void AddDiffBranchMenuItem( GUIContent menuItemContent, GenericMenu menu, ChangesetExtendedInfo changeset, ChangesetMenuOperations operations, GenericMenu.MenuFunction menuFunction) { string branchName = GetBranchName(changeset); menuItemContent.text = PlasticLocalization.GetString(PlasticLocalization.Name.AnnotateDiffBranchMenuItem, branchName); if (operations.HasFlag(ChangesetMenuOperations.DiffChangeset)) { menu.AddItem( menuItemContent, false, menuFunction); return; } menu.AddDisabledItem( menuItemContent); }
void UpdateMenuItems(GenericMenu menu) { ChangesetExtendedInfo singleSeletedChangeset = mMenuOperations.GetSelectedChangeset(); ChangesetMenuOperations operations = ChangesetMenuUpdater.GetAvailableMenuOperations( mChangesetMenuOperations.GetSelectedChangesetsCount()); AddDiffChangesetMenuItem( mDiffChangesetMenuItemContent, menu, singleSeletedChangeset, operations, DiffChangesetMenuItem_Click); AddDiffSelectedChangesetsMenuItem( mDiffSelectedChangesetsMenuItemContent, menu, operations, DiffSelectedChangesetsMenuItem_Click); if (IsOnMainBranch(singleSeletedChangeset)) { return; } menu.AddSeparator(string.Empty); AddDiffBranchMenuItem( mDiffBranchMenuItemContent, menu, singleSeletedChangeset, operations, DiffBranchMenuItem_Click); }
internal static void DiffSelectedChangesets( RepositorySpec repSpec, ChangesetExtendedInfo cset1, ChangesetExtendedInfo cset2, bool isGluonMode) { ChangesetExtendedInfo srcChangesetExtendedInfo; ChangesetExtendedInfo dstChangesetExtendedInfo; GetSrcAndDstCangesets( cset1, cset2, out srcChangesetExtendedInfo, out dstChangesetExtendedInfo); string srcChangesetFullSpec = GetChangesetFullSpec( repSpec, srcChangesetExtendedInfo); string dstChangesetFullSpec = GetChangesetFullSpec( repSpec, dstChangesetExtendedInfo); LaunchTool.OpenSelectedChangesetsDiffs( srcChangesetFullSpec, dstChangesetFullSpec, isGluonMode); }
static void AddDiffChangesetMenuItem( GUIContent menuItemContent, GenericMenu menu, ChangesetExtendedInfo changeset, ChangesetMenuOperations operations, GenericMenu.MenuFunction menuFunction) { string changesetName = changeset != null? changeset.ChangesetId.ToString() : string.Empty; menuItemContent.text = string.Format( "Diff changeset {0}", changesetName); if (operations.HasFlag(ChangesetMenuOperations.DiffChangeset)) { menu.AddItem( menuItemContent, false, menuFunction); return; } menu.AddDisabledItem( menuItemContent); }
static string GetBranchFullSpec( RepositorySpec repSpec, ChangesetExtendedInfo changesetExtendedInfo) { return(string.Format("br:{0}@{1}", changesetExtendedInfo.BranchName, repSpec.ToString())); }
static string GetChangesetFullSpec( RepositorySpec repSpec, ChangesetExtendedInfo changesetExtendedInfo) { return(string.Format("cs:{0}@{1}", changesetExtendedInfo.ChangesetId, repSpec.ToString())); }
static bool IsOnMainBranch(ChangesetExtendedInfo singleSeletedChangeset) { if (singleSeletedChangeset == null) { return(false); } return(singleSeletedChangeset.BranchName == MAIN_BRANCH_NAME); }
static void GetSrcAndDstCangesets( ChangesetExtendedInfo cset1, ChangesetExtendedInfo cset2, out ChangesetExtendedInfo srcChangesetExtendedInfo, out ChangesetExtendedInfo dstChangesetExtendedInfo) { if (cset1.LocalTimeStamp < cset2.LocalTimeStamp) { srcChangesetExtendedInfo = cset1; dstChangesetExtendedInfo = cset2; return; } srcChangesetExtendedInfo = cset2; dstChangesetExtendedInfo = cset1; }
internal static void DiffBranch( RepositorySpec repSpec, ChangesetExtendedInfo changesetExtendedInfo, bool isGluonMode) { if (changesetExtendedInfo == null) { return; } string branchFullSpec = GetBranchFullSpec( repSpec, changesetExtendedInfo); LaunchTool.OpenBranchDiffs( branchFullSpec, isGluonMode); }
static string GetBranchName(ChangesetExtendedInfo changesetInfo) { if (changesetInfo == null) { return(string.Empty); } string branchName = changesetInfo.BranchName; int lastIndex = changesetInfo.BranchName.LastIndexOf("/"); if (lastIndex == -1) { return(branchName); } return(branchName.Substring(lastIndex + 1)); }
static void AddDiffBranchMenuItem( GUIContent menuItemContent, GenericMenu menu, ChangesetExtendedInfo changeset, ChangesetMenuOperations operations, GenericMenu.MenuFunction menuFunction) { string branchName = GetBranchName(changeset); menuItemContent.text = string.Format( "Diff branch {0}", branchName); if (operations.HasFlag(ChangesetMenuOperations.DiffChangeset)) { menu.AddItem( menuItemContent, false, menuFunction); return; } menu.AddDisabledItem( menuItemContent); }