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

#include <IScriptProvider.h>

Inheritance diagram for IScriptProvider:
IPMUnknownCPMUnknown< IScriptProvider >CScriptProviderBPIScriptProviderBscTAScriptProviderCusCondTxtScriptProviderFrmLblScriptProviderHypScriptProviderIDHAScriptProviderINXErrLogScriptProviderRepresentScriptProviderSCScriptProvider

Public Types

enum  { kDefaultIID = IID_ISCRIPTPROVIDER }
 

Public Member Functions

virtual void GetObject (IScriptRequestData *data, IScript *parent)=0
 
virtual void HandleMethodOnObjects (ScriptID methodID, IScriptRequestData *data, const ScriptList &scriptList)=0
 
virtual void AccessPropertyOnObjects (ScriptID propID, IScriptRequestData *data, const ScriptList &scriptList)=0
 
virtual void AccessProperties (IScriptRequestData *data, IScript *script)=0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Detailed Description

Provides the code to handle one or more specific methods or properties on a specific exposed scripting object.

For every exposed object there is one or more ScriptProviders. Only one ScriptProvider represents an object and implements GetObject. Other ScriptProviders implement new methods or properties.

Most implementations will want to inherit from CScriptProvider or RepresentScriptProvider. Implementations representing a singleton object (e.g., preferences) will want to subclass PrefsScriptProvider.

Member Function Documentation

virtual void IScriptProvider::AccessProperties (IScriptRequestDatadata,
IScriptscript 
)
pure virtual

Access multiple properties using the provided data for the target object.

Parameters
datais the request data. The implementation must call AppendReturnData before returning.
scriptis the target object

Implemented in CScriptProvider.

virtual void IScriptProvider::AccessPropertyOnObjects (ScriptID propID,
IScriptRequestDatadata,
const ScriptList & scriptList 
)
pure virtual

Access the specified property using the provided data for the target objects.

Parameters
propIDis the request ID
datais the request data. The implementation must call AppendReturnData before returning.
scriptListis the target objects

Implemented in CScriptProvider.

virtual void IScriptProvider::GetObject (IScriptRequestDatadata,
IScriptparent 
)
pure virtual

Obtain a list of child objects, as specified by the data, that are contained in the parent object.

Parameters
datais the request data. The implementation must call AppendReturnData before returning.
parentis the parent object

Implemented in RepresentScriptProvider, SingletonScriptProvider, and CScriptProvider.

virtual void IScriptProvider::HandleMethodOnObjects (ScriptID methodID,
IScriptRequestDatadata,
const ScriptList & scriptList 
)
pure virtual

Handle the specified method using the provided data for the target objects.

Parameters
methodIDis the request ID
datais the request data. The implementation must call AppendReturnData before returning.
scriptListis the target objects

Implemented in CScriptProvider.