Hi Derek, trying to look into this as well and add more info and my own questions...
This will give you, for instance, "#X obj 100 100 f, f 50;", which is a [f ] object with width size = 50.
But I don't really understand how this obj_saveformat is called for every object in the canvas...
This editing function works for coll as for every other object. We can even use the undo function and get the previously setted size, the only thing is that coll is failing to save this information.
I don't really know how coll gets saved but it just bypasses Pd's mechanism (which I also don't know how it works or gets called as I said). What I know is that if we edit the .pd file and manually add something like ", f 50" after the coll object (giving us something like "#X obj 100 100 coll, f 50;"), Pd will effectively load the patch with a resized coll object. So yeah, we just need to find a way to get coll to use obj_saveformat and store the "te_width" information.
How to do that? No idea, and I hope the Pd wizards can help us :)
cheers