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

Public Member Functions

 BscSlDlgDialogObserver (IPMUnknown *boss)
 
virtual ~BscSlDlgDialogObserver ()
 
virtual void AutoAttach ()
 
virtual void AutoDetach ()
 
virtual void Update (const ClassID &theChange, ISubject *theSubject, const PMIID &protocol, void *changedBy)
 
- Public Member Functions inherited from CSelectableDialogObserver
 CSelectableDialogObserver (IPMUnknown *boss)
 
- Public Member Functions inherited from CDialogObserver
 CDialogObserver (IPMUnknown *boss)
 
- Public Member Functions inherited from AbstractDialogObserver
 AbstractDialogObserver (IPMUnknown *boss)
 
- 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
 
virtual void LazyUpdate (ISubject *theSubject, const PMIID &protocol, const LazyNotificationData *data)
 

Protected Member Functions

virtual int32 GetSelectedPanelIndex ()
 

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

This implementation subclasses CSelectableDialogObserver, not CObserver, to help provide the dialog switching mechanism. Note that each of the methods in this class first call the method in the parent class, CSelectableDialogObserver. (e.g. BscSlDlgDialogObserver::Update calls CSelectableDialogObserver::Update)

In addition, this implementation allows dynamic processing of the dialog's info button.

Constructor & Destructor Documentation

BscSlDlgDialogObserver::BscSlDlgDialogObserver (IPMUnknownboss)
inline

Constructor.

Parameters
bossIN interface ptr from boss object on which interface is aggregated.
virtual BscSlDlgDialogObserver::~BscSlDlgDialogObserver ()
inlinevirtual

Destructor.

Member Function Documentation

Binds the C implementation class onto its ImplementationID making the C code callable by the application *void BscSlDlgDialogObserver::AutoAttach (void )
virtual

Called by the application to allow the observer to attach to the subjects to be observed. In this case: the selectable dialog listbox and the dialog's info button widget. If you want to observe other widgets on the dialog, add them here.

Reimplemented from CSelectableDialogObserver.

void BscSlDlgDialogObserver::AutoDetach (void )
virtual

Called by the application to allow the observer to detach from the subjects being observed.

Reimplemented from CSelectableDialogObserver.

int32 BscSlDlgDialogObserver::GetSelectedPanelIndex ()
protectedvirtual

Override this method so that the parent CSelectableDialogObserver will be able to switch dialog panel.

Reimplemented from CSelectableDialogObserver.

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

Called by the host when the observed object changes. In this case: when either the dialog's info button or an item on the selectable dialog listbox is clicked.

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.

Reimplemented from CSelectableDialogObserver.