Question about ui element synchronization

Apr 20, 2010 at 7:04pm

Question about ui element synchronization

Does the output of a ui element (like umenu) follow the same message flow as every other standard max object or does the message flow effectively end when once it hits a ui element? I am seeing very odd results upon load of a patch where the output of umenu is part of an expected flow that should drive some objects that follow it but it never appears to complete on time. I have some more testing to try out tonight by adding some prints statments to see if the order of execution is occurring the way I expect it.

I suspect the output of a ui element does not guarantee message flow ordering upon loading of a patch and I need to separate out usage of my code from the ui (which is the better programming model to begin with.

I know this question might be vague without a patch example, but I thought I would throw it out in case anyone knew of something that wasn’t documented.

Secondly, is there a process to submit updates to the documentation, for example, the undocumented feature of send and receive supporting patch isolation via prefixing the names with —.

Apr 20, 2010 at 7:10pm

it even worse, ui elements can slow down the message if a message goes thru them,
so it can be cool to use

t f f
defer |

for gui shit in high priority situations

or delay groups of loadbangs when a hughe app has to be initialised on startup.

Apr 21, 2010 at 3:42am

undocumented stuff?

“position $1 $2″ to a message box…or bang… or lots of other things… but not to a standard object.

found that one when I was sending GL commands to a gridshape, and hooked it up to a message box accidentally… it zipped to the upper-left corner of my patch. it was bizarre. anywhere in the docs?

It seems similar to “patching_rect $1 $2 $3 $4″ or “script move $1 $2″ to [thispatcher], but it’s yet another way…

Apr 21, 2010 at 11:04am

It seems not documented, at least not in a way to find it simply (which is practically the same…)

There is more to explore, it works with a lot of GUI objects…
There was a thread which covered it as an answer from Emmanuel. Till this it was not known to me, and stills seems hidden/buried somewhere…
All my self adjusting bpatchers could have been so much easier…

– Pasted Max Patch, click to expand. –
Apr 21, 2010 at 4:41pm

I spent the time unravelling my bpatchers, removing the ui elements that were part of the message flow and moved them all to the top level of my patch and I update them as a side effect of the results of other objects and everything works perfect now.

As painful as this was to diagnose, separating out the ui from the logic is a better design anyway so I should have known better in the first place.

Apr 21, 2010 at 6:16pm

….separating out the ui from the logic is a better design anyway so I should have known better in the first place.

Look on the bright side – there are some people who’ve never figured this out. :-)

Apr 22, 2010 at 12:42am

FWIW, it’s documented as part of the common attributes of any object.


You must be logged in to reply to this topic.