13.1. Command Handlers

You've already seen how to write special handlers that do not conform to the normal syntax of the handlers you learned about in Chapter 8. These special handlers can take direct objects that you specify immediately after their name. In Chapter 10 you saw this used for the special run, open, quit, and idle handlers. In addition to these special handlers, as you see in Chapter 14, AppleScript Studio sends special commands to respond to events that occur with objects in your application. You provide the handlers to process these events by attaching the handler to the object.

These special handlers, called command handlers, respond to a command sent to an application. In some situations, you can also write a command handler that redefines an application's command. You can do this with commands built into AppleScript, including any of the Standard Addition commands.

The easiest command I can use to illustrate this technique is the beep command. Recall that you can use it without an argument to generate a single beep, as in

beep

You can also specify an integer number to generate more than one beep, as in

beep 5

In the next Try It Out you see how to write a command handler for the beep command.

13.1.1.

13.1.1.1. Try It Out: Writing a Command Handler

The following program uses the continue command to execute the built-in beep command after the handler finishes.

  1. Type the following program into Script Editor:

    -- Command handlers on beep n activate display dialog ...

Get Beginning AppleScript® now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.