External UI objects

GhostandtheMachine's icon

Hello,

I have been searching around for a little bit and figured my best bet might be to just put out a post and see if someone can just point me in a direction.

Is it possible to code Max UI objects from scratch? I saw CNMAT has this as a topic a couple months back at a conference, so I think it is doable. Can anyone point in the direction of where to start from etc?

thanks alot

j

Emmanuel Jourdan's icon

You can develop UI objects with jsui or C. You can download the SDK for C development here.

Luke Hall's icon

If you want to know how to write them in C/C++ then the best place to ask would be the Developer list rather than here. If you know absolutely no C (like me) then have a look at javascript using [jsui] instead which is a bit easier to figure out.

lh

f.e's icon

JSUI is great, but it's not as easy as we may think, and it can be slow as hell (i mean cpu hungry) for complex UI. So i suggest if you want to write complex stuff, why not use the time you'll spend learning JSUI to do C instead ?

best

f.e

GhostandtheMachine's icon

Thanks for all the quick replies they have been helpful.

Using Jsui, and then C to build widgets seems logical, but what about adding graphics and visuals to the patch itself. For example, when connecting objects the circles that pop up, or the menu palete. I have seen some of the components to the object menu in the cylcing 74 directory, but is it possible to build my own pop up type menu of custom obejects etc?

I am hoping I wouldn't have to use an LCD or JSUI for visuals and then patch something like the menu.

thanks for any info

j

Emmanuel Jourdan's icon

You can create popup menus in C, but only fakes ones in JSUI/LCD.

ash's icon

Another possibility is to use Processing and communicate with Max via OSC.

windspirit's icon

there's a program that can do this called juce w/ not much programming and an encapsulator for max. might be too much effort it looked like it had a learning curve but it also looked very capable.