switchable user interface without bpatcher offset?
I am using max/msp to create a user interface. The interface has an area in which I want to show a different patch depending on a selection from a popup menu.
I looked at bpatcher, and in the help there is an explanation how to do what I want, by creating a patch and embedding the different subpatches in it using bpatcher objects, and then using an offset message in the main patch to show the relevant subpatch.
This seems to work, but I find it a little bit of a hack and I’m wondering if there is no way to send a message somewhere to make bpatcher open a patch and just display it, without having to use offset messages?
Any other suggestions on how to solve this user interface problem are more than welcome of course.
Haven’t done this myself, but the (an?) answer seems to lie in scripting – have a look at Max tutorials 46 and 47.
thanks a lot for the hint! i’ll have a look at those tutorials and see if I can get it working…
On 13 Jun 2006, at 11:07, bert wrote:
> This seems to work, but I find it a little bit of a hack and I’m
> wondering if there is no way to send a message somewhere to make
> bpatcher open a patch and just display it, without having to use
> offset messages?
The current mechanism is probably less of a hack than the alternative
you suggest, given when happens when patchers are opened and closed –
think about data being saved, loadbangs/closebangs going off, DSP
processing being interrupted, and so on. (There’s probably a third
alternative, along the lines of "open the following N patchers but
display one at a time.")
nick rothwell — composition, systems, performance — http://
Others may have different opinions, and the suggestions others have
mentioned are worth exploring, but I think the approach you outline
below is actually the best one (despite its "hackish" feel).
The offset message sounds nice to me. That said, you’ll probably find
something useful in Mat’s various js objects. In fact, there’s
particularly one that may help. Don’t remember exactly its name, but
it helps to make tabs inside bpatcher. Very handy. Have a look at it :
you can use thispatchers ‘script replace’ functionality to be able to
dynamically load in any patch to the bpatcher:
and again, there are many ways to do it. This one is pretty nice
though, as it makes it very easy to add modules to your patch without
having to do any work besides putting things in a folder. Would work
the same for MSP~ objects as well. (this uses jitter). Also easy to
daisy chain the module holders too, just make sure you name them
v a d e //
Forums > MaxMSP