HookObjectChange(function, handle, handle[, handle])
Description
Section titled âDescriptionâThe HookObjectChange Lua function automatically calls a function when a grandMA3 object changes.
Arguments
Section titled âArgumentsâ- Function:
This must be the name of a function. This function is triggered every time the provided grandMA3 object changes. - Handle:
This is the handle for the grandMA3 objects that should be monitored for changes. The triggered function passes this handle on as the first argument. - Handle:
The handle must be for the plugin creating this HookObjectChange - it is the handle for âthisâ plugin. - Handle (optional):
This optional handle is for an object that will be passed on to the triggered function (as the third argument).
- Integer:
The function returns an integer identifying the hook. This can be saved to unhook the object later.
![]() | Hint: |
| See also these related functions: DumpAllHooks, Unhook, UnhookMultiple. |
Example
Section titled âExampleâTo call a function every time the content of the sequence pool changes, create a plugin with this code:
| Copy CodeLua |
| ``` |
| â Get the handle to this Lua component. |
| local luaComponentHandle = select(4,âŠ) |
function Main() â Get a handle to the sequence pool. local hookObject = DataPool().Sequences â Get a handle to this plugin. local pluginHandle = luaComponentHandle:Parent() â Create the hook and save the Hook ID. SequenceHookId = HookObjectChange(MySequencePoolCallback, hookObject, pluginHandle) â Print the returned Hook ID. Printf(âHookId: â .. SequenceHookId) end
â This function is called when there are changes in the sequence pool. function MySequencePoolCallback(obj) Printf(tostring(obj.name) .. â changed!â) end
return Main
