call

Typecommand
DictionaryLCS
LibraryLiveCode Script
Syntax
call <handlerName> [of <objectRef>]
Summary

Executes the specified handler in any object's script.

Introduced1.0
OSmac, windows, linux, ios, android
Platformsdesktop, server
Parameters
NameTypeDescription
handlerName

Any handler in the script of the specified object, along with any parameters that handler requires, separated by commas. The entire handler including parameters must be enclosed in quotes.

objectRef

Any object reference. If no object is specified, LiveCode uses the current object.

Example
call "mouseUp"
call "mouseUp" of button 1 of card 1
RelatedProperty: defaultStack, script
Command: do, insert script, send, start using
Function: params, value
Glossary: command, double quote, execute, handler, message, message path, object, object reference, parameter, pass, statement, trap, variable
Control Structure: pass
Description

Use the call command to use a handler that's not in the normal message path.

The call command sends a handler message to the object. If the script of the object doesn't trap the handler message, the message is passed to the next object in the object's message path.

When executing a handler invoked by the call command the defaultStack remains the same as it was when the call command was issued. Therefore any object references in the called handler are evaluated in the context of the call command that invoked the handler. For example, button 3 may commonly refer to button 3 of the current card of the stack from which the target handler was called.

This differs from the send command which temporarily changes the context so that object references are evaluated in the context of the object containing the target handler.

Tip: If a handler contains complex parameters, especially if some parameters contain double quotes, it may be simpler to put the message name and parameters into a variable, then use the name of the variable in the call statement.

Tagsmessages