/// <summary> /// Renames the specified Objects according to a supplied RenameOperationSequence. /// </summary> /// <returns>The number of successfully renamed objects.</returns> /// <param name="objectsToRename">Objects to rename.</param> /// <param name="ignoreUndo">If set to <c>true</c> ignore undo.</param> public int RenameObjects(List <UnityEngine.Object> objectsToRename, bool ignoreUndo = false) { var nameChanges = new List <ObjectNameDelta>(); var previews = this.GetBulkRenamePreview(objectsToRename); for (int i = 0; i < previews.NumObjects; ++i) { // Don't request a rename if the preview has warnings var renamePreview = previews.GetPreviewAtIndex(i); if (renamePreview.HasWarnings || previews.WillRenameCollideWithExistingAsset(renamePreview)) { continue; } var renameResult = renamePreview.RenameResultSequence; var newName = renameResult.NewName; var originalName = renameResult.OriginalName; // Don't request a rename if the name isn't going to change. if (originalName.Equals(newName)) { continue; } nameChanges.Add(new ObjectNameDelta(objectsToRename[i], newName)); } return(BulkRenamer.ApplyNameDeltas(nameChanges, ignoreUndo)); }
/// <summary> /// Reverts the name changes on the affected assets. /// </summary> public void RevertNameChange() { var reversedNames = new List <ObjectNameDelta>(); foreach (var renamedAsset in this.renamedAssets) { if (!DoesObjectStillExist(renamedAsset.NamedObject)) { continue; } reversedNames.Add(new ObjectNameDelta(renamedAsset.NamedObject, renamedAsset.OldName)); } BulkRenamer.ApplyNameDeltas(reversedNames, true); }
/// <summary> /// Reapplies the name changes to the affected assets. /// </summary> public void ReapplyNameChange() { var validRenames = new List <ObjectNameDelta>(); foreach (var renamedAsset in this.renamedAssets) { if (!DoesObjectStillExist(renamedAsset.NamedObject)) { continue; } validRenames.Add(renamedAsset); } BulkRenamer.ApplyNameDeltas(validRenames, true); }