Javascript in Max 03 - the Max Object

From Cycling '74 Wiki
Revision as of 19:54, 9 May 2012 by admin (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The Max object can be accessed as a property of a jsthis object (for more on jsthis properties, click here ). It is intended to provide control over the application environment.


Max Properties

apppath (String, get)

The pathname of the Max application

frontpatcher (Patcher, get)

The Patcher object of the frontmost patcher window, or a nil value if no patcher window is visible. You can traverse the list of open patcher windows with the next property of a Wind object.

isplugin (Number, get)

1 if the js object is within a plug-in; note that this would be 1 if the js object was within a plug-in loaded into the vst~ object in Max.

isruntime (Number, get)

1 if the currently executing Max application environment does not allow editing, 0 if it does.

loadbangdisabled (Number, get)

1 if the user has disabled loadbang for the currently loading patch. If your object implements a loadbang method, it can test this property and choose to do nothing if it is true.

os (String, get)

The name of the platform (e.g., “windows” or “macintosh”)

osversion (String, get)

The current OS version number.

time (Number, get)

The current scheduler time in milliseconds - will be a floating-point value.

version (String, get)

The version of the Max application, in the following form: "451"

Max Modifier Key Properties

cmdkeydown (Number, get)

1 if the command (Macintosh) or control (Windows) key is currently held down

ctrlkeydown (Number, get)

1 if the control key is currently held down

optionkeydown (Number, get)

1 if the option (Macintosh) or alt (Windows) key is currently held down

shiftkeydown (Number, get)

1 if the shift key is currently held down

Max Methods

The Max object can be accessed as a property of a jsthis object (see jsthis Properties above). Any message you can send to the max object using the semicolon notation in a message box can be invoked within Javascript using Javascript syntax. For example, the following in a message box:

max preempt 1

This can be expressed in Javascript as:


For a list of current messages that can be sent to the Max object, refer to the Messages to Max topic.