Hey Christian,
I'm not too sure what the advantages of using [coords( over [donecanvasdialog( other than avoiding the dirty flag, but I stopped using [coords( a while ago for similar reasons (I found that it inconsistently tended to leave an outline around GOPs that were moved). What I usually do for modifying GOPs on the fly is to use a [donecanvasdialog( message to turn GOP off, make the necessary adjustments, then use a second [doncanvasdialog( to turn GOP back on. I find this particularly takes care of a lot of "modifying GOPs within a GOP" issues (I'm not clear if that's the case for you). You also have to follow it with a [dirty 0( message to avoid "do you want to save?" dialogs. I can't say for certain that it works in all situations, but I haven't had any problems with this approach yet.
.mmb
On Tue, Jun 28, 2011 at 10:51 PM, Christian Haines christian.haines@adelaide.edu.au wrote:
Hi All I have created an GOP abstraction which I include in a parent parent. The GOP interface has a button that resizes it by sending a 'coords' message to the GOP abstraction canvas (namecanvas named). When it resizes larger it renders the larger interface properly over the patch's white background. However, when it resizes smaller it leaves a remnant of the larger interface visible. Sometimes to correctly show the smaller interface, I have to redraw / refresh the window by moving the window - this doesn't always work though. In fact it only works when the parent patch has a '#coords' line with a specific configuration in it - of which I'm not sure. I'm on OSX. I've seen the issue documented elsewhere but never read a full description on how to resolve it fully. See the issue here: http://echoblue.com.au/pd/goprenderissue.mov
At the moment I am sending a message back to the parent patch from the GOP abstraction to change the parent patch's 'setbounds' by 1 pixel and then move it back - this resolves that issue but, as mentioned, not consistently. Regardless, it creates two more issues: (1) setbounds behaves oddly - doesn't resize until a close and reopen; and/or moves the objects in the patch window without resizing; (2) I can't know the patch window size dynamically (say by querying the canvas) hence any size change by setbounds is not necessarily the same as the original window size (if it was resizing!). Any suggestions would be greatly appreciated -- Christian
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
-- Mike Moser-Booth mmoserbooth@gmail.com