InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
LnkWtchCacheManager Class Reference
Inheritance diagram for LnkWtchCacheManager:
CObserverIObserverIPMUnknown

Public Member Functions

 LnkWtchCacheManager (IPMUnknown *boss)
 
virtual ~LnkWtchCacheManager ()
 
void AutoAttach ()
 
void AutoDetach ()
 
virtual void Update (const ClassID &theChange, ISubject *theSubject, const PMIID &protocol, void *changedBy)
 
virtual void LazyUpdate (ISubject *theSubject, const PMIID &protocol, const LazyNotificationData *data)
 
- Public Member Functions inherited from CObserver
 CObserver (IPMUnknown *boss, PMIID interfaceID=IID_IOBSERVER)
 
IChangeManagerGetChangeManager () const
 
virtual void SetAttachIID (PMIID iid)
 
virtual PMIID GetAttachIID () const
 
virtual void SetEnabled (bool16 state)
 
virtual bool16 IsEnabled () const
 

Protected Member Functions

void AddToCache (const UIDList &itemList)
 
void RemoveFromCache (const UIDList &itemList)
 
void DumpUpdate (const ClassID &theChange, ISubject *theSubject, const PMIID &protocol, void *changedBy)
 

Additional Inherited Members

- Public Types inherited from IObserver
enum  { kDefaultIID = IID_IOBSERVER }
 
- Protected Attributes inherited from CObserver
bool16 fDetachSubjectsOnDelete
 
PMIID fAttachIID
 
const UIDRef fThisRef
 
bool16 fEnabled
 

Detailed Description

Watches links being added and removed from a document and maintains a cache of links added since the document was opened in interface ILnkWtchCache.

See Also
ILnkWtchCache

Constructor & Destructor Documentation

LnkWtchCacheManager::LnkWtchCacheManager (IPMUnknownboss)

Constructor.

Parameters
bossobject this object is aggregated on.
LnkWtchCacheManager::~LnkWtchCacheManager ()
virtual

Destructor.

Member Function Documentation

void LnkWtchCacheManager::AutoAttach (void )
virtual

Attach protocols of interest.

Reimplemented from CObserver.

void LnkWtchCacheManager::AutoDetach (void )
virtual

Detach protocols of interest.

Reimplemented from CObserver.

void LnkWtchCacheManager::LazyUpdate (ISubjecttheSubject,
const PMIIDprotocol,
const LazyNotificationDatadata 
)
virtual

Lazy notification of a change in an observed subject; this method is called after the transaction in which the change was performed completes and after undo or redo.

Parameters
theSubjectis the subject that changed
protocolis the interface of the subject's boss that changed
datalazy notification data or nil. Observers must be able to handle a call that has nil data. In certain low memory conditions the lazy notification data passed to ISubject::ModelChange may not be passed on to observers. The observer must be able to work without data in which case the observer would usually refresh its entire state by re-examining all objects of interest. See LazyNotificationData for documentation.
See Also
ISubject::AttachObserver(IObserver*, const PMIID&, AttachmentType) to receive lazy notification attach to the subject by calling this method specifying an attachment type of lazy, or, both if you also want regular notification.
IObserver::Update for regular notification

Reimplemented from CObserver.

virtual void LnkWtchCacheManager::Update (const ClassIDtheChange,
ISubjecttheSubject,
const PMIIDprotocol,
void * changedBy 
)
inlinevirtual

Handle broadcasts on protocols of interest.

Parameters
theChangespecifies the class ID of the change to the subject. Frequently this is a command ID.
theSubjectpoints to the ISubject interface for the subject that has changed.
protocolspecifies the ID of the changed interface on the subject boss.
changedBypoints to additional data about the change. Often this pointer indicates the class ID of the command that has caused the change.

Implements IObserver.