![]() | InDesign SDK 20.5 |
#include <IDrwEvtDispatcher.h>

Public Member Functions | |
| virtual void | RegisterHandler (ClassID eventID, IDrwEvtHandler *handler, DrwEvtHandlerPriority priority)=0 |
| virtual void | UnRegisterHandler (ClassID eventID, IDrwEvtHandler *handler)=0 |
| virtual bool16 | ProcessFilterEvent (IPMUnknown *changedBy, GraphicsData *gd, int32 flags)=0 |
| bool16 | ProcessHitTestFilterEvent (IPMUnknown *changedBy, GraphicsData *gd, int32 flags) |
| bool16 | ProcessInvalFilterEvent (IPMUnknown *changedBy, GraphicsData *gd, int32 flags) |
| bool16 | ProcessDrawFilterEvent (IPMUnknown *changedBy, GraphicsData *gd, int32 flags) |
| virtual bool16 | ProcessDrawEvent (ClassID eventID, IPMUnknown *changedBy, GraphicsData *gd, int32 flags)=0 |
| virtual bool16 | ProcessHitTestEvent (ClassID eventID, IPMUnknown *changedBy, GraphicsData *gd, const PMRect &r, UIDRef *thingHit, int32 flags, bool16 *isHit)=0 |
| virtual bool16 | ProcessHitTestEvent (ClassID eventID, IPMUnknown *changedBy, GraphicsData *gd, const PMRect &r, UIDRef *thingHit, int32 flags, bool16 *isHit, IVisitorHelper *pVisitable, IBaseVisitor *theVisitor)=0 |
| virtual bool16 | ProcessInvalEvent (ClassID eventID, IPMUnknown *changedBy, GraphicsData *gd, ClassID reasonForInval, int32 flags)=0 |
| virtual bool16 | ProcessIterateEvent (ClassID eventID, IPMUnknown *changedBy, ICallback *callbackInfo, int32 flags)=0 |
| virtual bool16 | ProcessGetBBoxEvent (ClassID eventID, IPMUnknown *changedBy, GraphicsData *gd, PMRect *bBox)=0 |
| virtual void | RegisterDrawEventServices (ServiceID serviceID)=0 |
| virtual void | UnRegisterDrawEventServices (ServiceID serviceID)=0 |
| virtual void | Shutdown ()=0 |
Public Member Functions inherited from IPMUnknown | |
| virtual IPMUnknown * | QueryInterface (PMIID interfaceID) const =0 |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
The IDrwEvtDispatcher can be instaniated off the session in order to register a draw event handler (see IDrwEvtHandler). A draw event handler has to register using a particular priority. The handlers are called from high to lowest priority for each event. If any handler returns true from the HandleEvent call, it is assumed the event has been handled, and the remaining lower priority handlers are not called. The initialization priority is called before all other priorities, however the return code from HandleEvent is ignored.
| pure virtual |
Propigate event throughout the registered handlers - this version usually called from the DrawShape methods on the different shapes. Data is packaged into DrawEventData class to be sent to ProcessEvent in IDrwEvtHandler.
| eventID | IN the event ID being executed - see DocumentContextID.h in kMessageIDSpace |
| changedBy | IN who is dispatching this event |
| gd | IN current graphic data in place |
| flags | IN - See IShape.h for the drawing flags. |
| pure virtual |
Get the bounding box for the event. Data is packaged into GetBBoxEventData class to be sent to ProcessEvent in IDrwEvtHandler.
| eventID | IN the event ID being executed - see DocumentContextID.h in kMessageIDSpace |
| changedBy | IN who is dispatching this event |
| gd | IN current graphic data in place |
| bBox | INOUT the bounding box for the event |
| pure virtual |
Propigate event throughout the registered handlers - this version called from the hit test handlers. Data is packaged into HitTestEventData class to be sent to ProcessEvent in IDrwEvtHandler.
| eventID | IN the event ID being executed - see DocumentContextID.h in kMessageIDSpace |
| changedBy | IN who is dispatching this event |
| gd | IN current graphic data in place |
| r | IN the hit rectangle |
| thingHit | INOUT the UIDRef of the thing that is hit |
| flags | IN see IShape.h for the drawing flags |
| isHit | INOUT bool16 kTrue if the thing is hit, kFalse otherwise |
| pure virtual |
Propigate event throughout the registered handlers - this version called from the hit test handlers. Data is packaged into HitTestEventData class to be sent to ProcessEvent in IDrwEvtHandler.
| eventID | IN the event ID being executed - see DocumentContextID.h in kMessageIDSpace |
| changedBy | IN who is dispatching this event |
| gd | IN current graphic data in place |
| r | IN the hit rectangle |
| thingHit | INOUT the UIDRef of the thing that is hit |
| flags | IN see IShape.h for the drawing flags |
| isHit | INOUT bool16 kTrue if the thing is hit, kFalse otherwise |
| pVisitable | IN pointer to IVisitorHelper |
| theVisitor | IN pointer to IBaseVisitor |
| pure virtual |
Propigate event throughout the registered handlers - this version called from Inval handlers. Data is packaged into InvalEventData class to be sent to ProcessEvent in IDrwEvtHandler.
| eventID | IN the event ID being executed - see DocumentContextID.h in kMessageIDSpace |
| changedBy | IN who is dispatching this event |
| gd | IN current graphic data in place |
| reasonForInval | IN ClassID of the reason for invalidation |
| flags | IN see IShape.h for the drawing flags |
| pure virtual |
Propigate event throughout the registered handlers - this version called from the iterate draw order handler. Data is packaged into IterateEventData class to be sent to ProcessEvent in IDrwEvtHandler.
| eventID | IN the event ID being executed - see DocumentContextID.h in kMessageIDSpace |
| changedBy | IN who is dispatching this event |
| xform | IN current transformation |
| callbackInfo | IN pointer to ICallback interface |
| flags | IN see IShape.h for the drawing flags |
| pure virtual |
Loop through service registry registering sericeID handlers.
| serviceID | IN service ID to register |
| pure virtual |
Register an event handler using the supplied priority. NOTE: an AddRef will be called on the handler!
| eventID | IN the event ID you are registering for - see DocumentContextID.h in kMessageIDSpace |
| handler | IN the handler that will handle the dispatch |
| priority | IN which priority to be used - see DrwEvtHandlerPriority |
| pure virtual |
Removes all handlers from the table.
| pure virtual |
Loop through service registry unregistering sericeID handlers.
| serviceID | IN service ID to unregister |
| pure virtual |
Unregister an event handler - the opposite of RegisterHandler. NOTE: a Release will be called on the handler!
| eventID | IN the event ID you are unregistering for |
| handler | IN the handler that you are unregistering |