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

Public Types | |
| typedef CPMUnknown< ILinkObject > | inherited |
| typedef object_type | data_type |
Public Member Functions | |
| CLinkObject (IPMUnknown *boss) | |
| virtual LinkClientID | GetClientID () const |
| virtual bool | IsDirectLink () const |
| virtual IPMUnknown * | QueryLinkedObject (const PMIID &interfaceId) const |
| virtual bool | CanUpdate (const ILinkResource *iResource, UID linkUID, UIFlags uiFlags, ErrorCode &err) const |
| virtual ClassID | GetImportProvider (const ILinkResource *iResource, UID linkUID) const |
| virtual ClassID | GetExportProvider (const ILinkResource *iResource, UID linkUID) const |
| virtual ClassID | GetResolveProvider (const ILinkResource *iResource, UID linkUID) const |
| virtual UIDList | GetLinks () const |
| virtual void | MarkLinksModified () const |
| virtual void | ClearLinksModified () const |
| virtual void | ReadWrite (IPMStream *s, ImplementationID prop) |
Public Member Functions inherited from CPMUnknown< ILinkObject > | |
| IPMUnknown * | QueryInterface (PMIID interfaceID) const |
| void | AddRef () const |
| void | Release () const |
| void | PreDirty (ImplementationID prop=kInvalidImpl, bool16 allowModification=kTrue) |
| void | PreDirtyNoMessage (ImplementationID prop=kInvalidImpl, bool16 allowModification=kTrue) |
| CPMUnknown (const CPMUnknown &)=delete | |
| CPMUnknown & | operator= (const CPMUnknown &)=delete |
Public Member Functions inherited from ILinkObject | |
| virtual bool | CanGotoLinkedObject () const =0 |
| virtual ErrorCode | GotoLinkedObject (PMString *errorString) const =0 |
| virtual ErrorCode | Import (const ILinkResource *iResource, UID &linkUID, UIFlags uiFlags)=0 |
| virtual ErrorCode | Export (const ILinkResource *iResource, UID &linkUID, UIFlags uiFlags) const =0 |
| virtual ErrorCode | Resolve (const ILinkResource *iResource, UID &linkUID, UIFlags uiFlags)=0 |
Protected Attributes | |
| LinkClientID | fClientId |
Protected Attributes inherited from CPMUnknown< ILinkObject > | |
| HelperInterface | fHelperInterface |
Additional Inherited Members | |
Protected Member Functions inherited from CPMUnknown< ILinkObject > | |
| CPMUnknown (IPMUnknown *boss) | |
CLinkObject is a pure virtual base class that inherits from ILinkObject and maintains and persists a list of the links referenced by the object. The class also stores and persists the client identifier of the link object.
All classes that implement the ILinkObject interface should inherit from the CLinkObject class.
| inlinevirtual |
Determines if an update should be allowed to proceed.
| iResource | [IN] Associated link resource. |
| linkUID | [IN] UID of the associated link. |
| uiFlags | [IN] Denotes whether to allow UI. |
| err | [OUT] Error code. |
Implements ILinkObject.
| virtual |
Called to notify all associated links that the object in no longer modified.
Implements ILinkObject.
| inlinevirtual |
Returns the object's link client identifier.
Implements ILinkObject.
| inlinevirtual |
Returns the class id of the update link service provider used to export the contents of the object out to an resource.
| iResource | [IN] Link resource to export to. |
| linkUID | [IN] UID of the associated link. |
Implements ILinkObject.
| inlinevirtual |
Returns the class id of the update link service provider used to import the contents of an resource into the object.
| iResource | [IN] Link resource to import from. |
| linkUID | [IN] UID of the associated link. |
Implements ILinkObject.
| inlinevirtual |
Gets the list of links that reference the object.
Implements ILinkObject.
| inlinevirtual |
Returns the class id of the update link service provider used to export and/or an import when both the object and the link resource have changed and the link needs to perform an update
| iResource | [IN] Link resource that has also changed. |
| linkUID | [IN] UID of the associated link. |
Implements ILinkObject.
| inlinevirtual |
Determines whether this object is on the same boss as the object that owns the link (a direct link), or is on a different boss than the object that owns the link (an indirect link). \ A UID based object like a page item is an example of a direct link. A non-UID based object like an XML element is an example of an indirect link.
Implements ILinkObject.
| virtual |
Called to notify all associated links that the object has been modified.
Implements ILinkObject.
| virtual |
Returns the object with the given interface identifier that is on the same boss as the object that owns the link. \ If a direct link, the returned object will be on the same boss as this object. If an indirect link, the returned object will be on a different boss.
| interfaceId | [IN] Interface identifier of the object to retrieve. |
Implements ILinkObject.
| virtual |
If you override this implementation, please ensure you either write the UID of any link that points to this link object, or call into this implementation. This is needed to ensure the link relationships are (re)created when copying and pasting within and between documents.
| protected |
The object's link client identifier. Objects are only allowed to link with links and resource that have the same client identifier.