lfo.jsui API

by evan.raskob (jitter :[at]: lowfrequency :[dot]: org)

released under a Creative Commons Attribution 2.5 license.
Creative Commons License
This work is licensed under a Creative Commons Attribution 2.5 License.

What is it?!

lfo.jsui is an API written in javascript for max/msp/jitter's jsui object. It's designed for making complete GUIs in JSUI out of OpenGL objects and images, using a flexible event model and event handlers. It is also free (please see the license above).

Right now it in a testing state, although I have used it for production-level projects.

the goal

the goal is to make a simple library of UI code, for creating mouse-responsive UI elements in jsui, programatically. i started building the library was because i needed to create a user interface with over 100 clickable items in it, and wanted the UI to generate itself according to some parameters (instead of me dragging 100 Max buttons to the screen). using this library, you could say, generate 200 different buttons in different configurations in a jsui (in 3D, too, of course) and then deal with the results, all in javascript, and only pass some simplified data back to max-land.

examples of making lots of buttons to come soon.

download it

get the entire API and a max/jitter example patch showing how to use it: lfo.jsui_1.3.zip

there is a javadoc/jsdoc formatted API reference available online.

use it

after you download the API and example patch, you'll notice that this is a pretty freeform way of doing things. it's all about being flexible. have a look through the example patch, there's a LOT of documentation and hopefully you'll get the hang of things. basically, lfo.jsui is about creating UI objects (called Buttons) that listen to GUI mouse events, and handling their events (via GUIHandlers and similar objects). that's it.

and like i mentioned above, there is a javadoc/jsdoc formatted API reference available online.