private void OpenPendingChanges(ICollection<MergeResultModel> resultModels)
{
var comment = string.Empty;
var pendingChanges = new List<PendingChange>(20);
// all results must have identical workItems
var workItemIds = resultModels.First().WorkItemIds;
var conflictsPath = new List<string>();
foreach (var resultModel in resultModels)
{
if (string.IsNullOrEmpty(comment))
comment = resultModel.Comment;
else
comment = comment + ";" + resultModel.Comment;
if (resultModel.PendingChanges != null && resultModel.PendingChanges.Count > 0)
pendingChanges.AddRange(resultModel.PendingChanges);
if (resultModel.MergeResult == MergeResult.HasConflicts
|| resultModel.MergeResult == MergeResult.UnexpectedFileRestored)
conflictsPath.Add(resultModel.BranchInfo.TargetPath);
}
if (conflictsPath.Count > 0)
InvokeResolveConflictsPage(_workspace, conflictsPath.ToArray());
OpenPendingChanges(pendingChanges, workItemIds, comment);
}