Blueprint Find and Replace

While making changes of field names, the Blueprint has proven to be a wonderful help in changing all the uses of a name within an entire form. No more crawling through object after object to find hidden uses.

I encountered a small anomaly in that with the Blueprint open, Find and Replace is available in Edit>Find. It behaves more like Find Next though, by highlighting the first occurrence of the last word(s) I searched for within the file.

Choosing just Find, opens the Find bar at the top of the Blueprint window. From there I can check Replace to expand the bar and enter the new word(s) the click All for a global change within the Blueprint.

In a procedure choosing Find and Replace… from the Edit menu gives a beep and nothing happens. As you noted, you have to choose Find… and then check the Replace button. I would think selecting Find and Replace… would do all that for you instead of just beeping.

Well, as it turns out, even though the text in the Blueprint is changed when I use Replace. Update Blueprint isn’t applying it. It changes as I watch, but it’s simply visual. If I manually make the changes, they are applied. Or if I make any manual adjustment within the Blueprint after applying the Replace, it does hold. So the key is you MUST type within the Blueprint.

Thankfully this is not true for the same action in a regular procedure. Once replaced they stay replaced.

I have been able to duplicate both of these issues, and have recorded them in the issue tracker. Fixing these are going to be tricky, because none of the code was written by me (the Find/Find & Replace bar is all implemented by Apple). There must be some override that can make it work, or maybe it’s an Apple bug relating to editing text in a dialog sheet (which could explain why it works in the procedure window, which is not a dialog sheet). We’ll see.

A workaround that can be used for now is to copy the blueprint to an external editor like BBEdit, make the find/replace changes, then paste it back into the dialog.

And there is a Service that makes a selection into a BBEdit document.