InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
PstLstASB Class Reference
Inheritance diagram for PstLstASB:
CPMUnknown< IPstLstSuite >IPstLstSuiteIPMUnknown

Public Member Functions

 PstLstASB (IPMUnknown *boss)
 
virtual ~PstLstASB (void)
 
virtual void GetNumDrawablePageItemSelected (int32 &num) const
 
virtual void GetNthSelectedDrawablePageItem (int32 nth, UIDRef &item) const
 
- Public Member Functions inherited from CPMUnknown< IPstLstSuite >
IPMUnknownQueryInterface (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
 
CPMUnknownoperator= (const CPMUnknown &)=delete
 

Additional Inherited Members

- Public Types inherited from IPstLstSuite
enum  { kDefaultIID = IID_IPSTLST_ISUITE }
 
typedef K2Vector
< PstLstDataDescription
PstLstDataVector
 
- Protected Member Functions inherited from CPMUnknown< IPstLstSuite >
 CPMUnknown (IPMUnknown *boss)
 
- Protected Attributes inherited from CPMUnknown< IPstLstSuite >
HelperInterface fHelperInterface
 

Detailed Description

Abstract selection boss (ASB) IPstLstSuite implementation. The purpose of this integrator suite is to determine how to forward the client request on to the CSB suite(s). Note that the client does not interact with the CSB (which has all the real implementation of the suite) directly, the client interacts with the ASB only. Also note that the Suite API shouldn't contain model data that is specific to a selection format (layout uidLists, text model/range, etc) so that the client code can be completely decoupled from the underlying CSB.

This suite is an advanced suite which uses selection extension. The selection extension is a bridge between a suite implementation with an unknown interface (IPstLstData) and the selection architecture. The main reason this extension is needed is so we can be notified of current selection's model change (thru SelectionAttributeChanged).

Constructor & Destructor Documentation

Binds the C implementation class onto its ImplementationID making the C code callable by the application * PstLstASB::PstLstASB (IPMUnknownboss)

Constructor.

Parameters
bossinterface ptr from boss object on which this interface is aggregated.
PstLstASB::~PstLstASB (void )
virtual

Destructor.

Member Function Documentation

void PstLstASB::GetNthSelectedDrawablePageItem (int32 nth,
UIDRefitem 
) const
virtual

Get the nth selected drawable page item with a valid IPstLstUIDList Interface.

Implements IPstLstSuite.

void PstLstASB::GetNumDrawablePageItemSelected (int32 & num) const
virtual

Check the number of a drawable page item selected, a drawable page item will have a IPstLstUIDList interface when the plug-in is loaded. So we will check if we can get a valid IPstLstUIDList InterfacePtr thru the selected items as the test to see if it is a drawable page item.

Implements IPstLstSuite.