CIInterfaceManager

The CIInterfaceManager interface is used to acquire other interfaces from PageMaker. These interfaces may be part of PageMaker itself, or they may be interfaces published by other plug-ins.

CIInterfaceManager methods

PMErr AcquirePMInterface(unsigned long id, void **ppInterface);
PMErr ReleasePMInterface(void *pInterface);

These methods acquire and release pre-defined interfaces from PageMaker. PageMaker pre-defined interface are referenced by an ID number, interfaces published by plug-ins are referenced by names. The defined ID numbers can be found in PMInterfaceIDs.h.

PMErr AcquirePMInterface(char *pInterfaceName, void **ppInterface);
PMErr ReleasePMInterface(char *pInterfaceName, void **ppInterface);

Use these methods to acquire interfaces that are published by plug-ins.

The plug-in that owns the interface will receive a kPMAcquireInterface message to provide the interface when the following AcquirePMInterface method is called. The plug-in that owns the interface will receive a kPMReleaseInterface message when your plug-in calls the ReleasePMInterface method.

PMErr AddPMInterface(char *pInterfaceName);
PMErr RemovePMInterface(char *pInterfaceName);

If your plug-in is publishing a suite of interfaces, you must register the name of your interface to PageMaker. Other plug-ins can then acquire your published interface through AcquirePMInterface.

There may be reasons that you want to unregister an interface, perhaps because needed resources are unavailable. You can stop unregister an interface with the RemovePMInterface method. Any future requests for your plug-in will return an error.

Your plug-in must manage any current usage of the published interfaces, these plug-ins will not be notified that the interface is no longer available.


Comments or suggestions? Contact Adobe Developer Support

Copyright © 1997 - 2001 Adobe Systems Incorporated. All rights reserved.
Legal notices and trademark attributions