Changing the Form Blueprint Procedurally

Selecting objects in a form and using ChangeObjects to change their properties with a blueprint is a useful and impressive capability.

Trying to use a procedure to set the INITIALDIMENSIONS of the form itself has so far been elusive for me. I’ve been able to capture the entire Blueprint for the form and can change parts in that. But how do I save that as a replacement Blueprint for that same form?

Or better still, how can I do something equivalent to ChangeObjects to simply and cleanly alter just the one item?

If it’s in one of the training videos, I’ve failed to locate it.

I tried this procedurally and it seemed to be entered into the form blueprint:

setformoptions "","Testing","INITIALDIMENSIONS","50,200,800,800"

The format is “top,left,height,width”. Now when I open that window it always appears at this location and this size.

Thanks, Gary. I was totally focused on searching documentation and videos for “blueprint” topics. This appears to be the very thing I wanted to find.

FYI, Panorama “blueprints” are just text files that contain the code needed to construct an element of a Panorama database. You can use that code in any procedure, not just in a blueprint file. Basically, the blueprint is just code that Panorama has written for you, instead of being hand written code. But once written, there’s nothing special about the code in the blueprint.

Whenever a new property is added, I try to be rigorous about adding it to the documentation. But I appear to have neglected to do that when adding the INITIALDIMENSIONS property - it needs to be documented for both setformoptions and getformoption(. I have given myself a reminder to do that.

One thing you can do is take a look at the blueprint code that Panorama creates. I assume that is how Gary figured this out even though it wasn’t documented. It’s actually impossible for a new option to be added without it appearing in blueprints.

This feature is only a few months old, so it is definitely not in any of the training videos.

It doesn’t really have anything to do with your problem today, but FYI there is a changeobject statement that lets you change properties of an individual form object without having to select it. In most cases, this is simpler than the multi step “select object, change object, unselect object” process.

This statement is not applicable for your problem today because INITIALDIMENSIONS is a property of the form, not an object within a form. But I thought I’d mention it in case you’re not familiar, I’m sure you’ll find it useful on other days.

Thanks, a few holes were filled for me and some of my ambitions.

I wrote SelectObjects, but it is ChangeObject that I’ve been using extensively. It’s wonderful for giving end users additional control over the interface among other things.