The Max Object
The Max object can be accessed as a property of a jsthis object (see jsthis Properties above). 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.
mainthread (Number, get)
1 if the function is currently executing in the main (low-priority) thread, 0 if the function is executing in the timer (high-priority) thread. See Controlling a Function’s Thread of Execution for more details.
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:
max.preempt(1);
For a list of current messages that can be sent to the Max object, refer to the Messages to Max topic.