SET HANDLER - FOR

Syntax

SET HANDLER handler1 handler2 ... FOR { oref |{ALL INSTANCES} }
                                  [ACTIVATION act].

Extras:

1. ... FOR oref

2. ... FOR ALL INSTANCES

3. ... ACTIVATION act

Effect

This statement registers the event handlers handler1 handler2 ... for the corresponding instance events of the objects specified after FOR. An event handler is executed if the corresponding instance event is triggered with RAISE EVENT in an object for which it is registered. The addition ACTIVATION enables the dynamic registration or deregistration.

An event handler handler can be specified as follows, where the indicators have the same meaning as in CALL METHOD:

You can specify methods meth of the same or other classes that are defined as instance event handlers with the FOR EVENT evt OF {class|intf} addition to the the statments [CLASS-] METHODS. You cannot specify event handlers for static events. You must specify at least one indicator.

The type class or intf specified after FOR EVENT OF in the definition of an instance event handler specifies the objects whose events it can handle. You can use the FOR addition to specify single objects or all objects that can be handled.

Addition 1

... FOR oref

Effect

This addition registers the event handlers of the list handler1 handler2 ... for exactly one object. Here, oref is an object reference that must point to an object whose events can be handled by the specified event handlers. The class of the object must be class or the subclass of class, or must implement the interface intf directly or via a superclass.

Addition 2

... FOR ALL INSTANCES

Effect

This addition registers the event handlers of the list handler1 handler2 ... for all objects whose events it can handle. These are all objects whose classes are either class or the subclass of class, or which implement the interface intf directly or via a superclass. This registration is also valid for all triggering instances that are created after the statement SET HANDLER.

Addition 3

... ACTIVATION act

Effect

You can specify a single-character text-type field act after the ACTIVATION addition. If act has a value "X", the event handlers handler are registered; however, if act has the value " ", the registration of the event handlers handler is cancelled. You cannot deregister a single registration via mass deregistration. Vice versa, you cannot cancel registration of individual triggering objects after a mass registration.