InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CdlChartSuiteCSB Class Referenceabstract

#include <CdlChartSuiteCSB.h>

Inheritance diagram for CdlChartSuiteCSB:
CPMUnknown< ICdlChartSuite >ICdlChartSuiteIPMUnknownCdlChartSuiteLayoutCSB

Public Member Functions

 CdlChartSuiteCSB (IPMUnknown *iBoss)
 
virtual ~CdlChartSuiteCSB (void)
 
virtual bool16 CanGetChartName (void)
 
virtual ErrorCode GetChartName (WideString &outChartName)
 
- Public Member Functions inherited from CPMUnknown< ICdlChartSuite >
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
 

Protected Member Functions

virtual UIDList GetTarget (void)=0
 
- Protected Member Functions inherited from CPMUnknown< ICdlChartSuite >
 CPMUnknown (IPMUnknown *boss)
 

Additional Inherited Members

- Public Types inherited from ICdlChartSuite
enum  { kDefaultIID = IID_ICDLCHARTSUITE }
 
- Protected Attributes inherited from CPMUnknown< ICdlChartSuite >
HelperInterface fHelperInterface
 

Detailed Description

Base class for CSB (concrete selection boss) suite implementations of ICdlChartSuite; the CSB suites are responsible for doing all of the model specific work involved in accessing and manipulating ICdlChartData. 99% of the CSB suite implementation of ICdlChartSuite is provided here in this base class.

Sub-classes implement CdlChartSuiteCSB::GetTarget to examine the selection target for their CSB and determine the UID's of selected objects that have an ICdlChartData interface. For example CdlChartSuiteLayoutCSB uses ILayoutTarget to get a UIDList of selected objects and CdlChartSuiteTextCSB uses ITextTarget to get the range of text and the story that underlies the selection and it then figures out the UIDList of frame page items touched by the text selection that have ICdlChartData.

Note that the client does not interact with the CSB suite directly, the client interacts with the ASB only. The implementation of a CSB suite deals with the selection format of its CSB.

See Also
Selection fundamentals in Programming Guide

Constructor & Destructor Documentation

CdlChartSuiteCSB::CdlChartSuiteCSB (IPMUnknowniBoss)

Constructor.

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

Destructor.

Member Function Documentation

bool16 CdlChartSuiteCSB::CanGetChartName (void )
virtual

Check if it is able to give the name of the chart.

Returns
kTrue if it is capable of giving the name of the chart.

Implements ICdlChartSuite.

ErrorCode CdlChartSuiteCSB::GetChartName (WideStringoutChartName)
virtual

Get the name of the chart.

Parameters
outChartNamestring where the name of the chart will be given.

Implements ICdlChartSuite.

virtual UIDList CdlChartSuiteCSB::GetTarget (void )
protectedpure virtual

Each CSB suite examines its target interface (ILayoutTarget, ITextTarget etc.) and returns the list of objects that are selected and might have ICdlChartData.

Returns
a list of the objects that are selected.

Implemented in CdlChartSuiteLayoutCSB.