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

#include <ICommandFactory.h>

Inheritance diagram for ICommandFactory:
IPMUnknownCPMUnknown< ICommandFactory >CommandFactory< CreateCmd, EditCmd, DeleteCmd, DeferredScrapCmd >

Public Types

enum  { kDefaultIID = IID_ICOMMANDFACTORY }
 

Public Member Functions

virtual ICommandCreateCreateCommand () const =0
 
virtual ICommandCreateEditCommand () const =0
 
virtual ICommandCreateDeleteCommand () const =0
 
virtual ICommandCreateDeferredScrapCommand () const =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

Creates commands to manipulate behaviors. There is a corresponding ICommandFactory implemention for each behavior implementation For example, ICommandFactory is an interface on kBehaviorDataBoss and kActionFactoryBoss (a service provider)

See Also
CommandFactory

Member Function Documentation

virtual ICommand* ICommandFactory::CreateCreateCommand () const
pure virtual
Returns
A command that will create a particular behavior

Implemented in CommandFactory< CreateCmd, EditCmd, DeleteCmd, DeferredScrapCmd >.

virtual ICommand* ICommandFactory::CreateDeferredScrapCommand () const
pure virtual
Returns
A command to be executed after the particular behavior is copied.

Such commands are called Fixup*BhvrCmd where * is the name of the behavior Examples are FixupShowHideFieldsBhvrCmd, FixupSoundBhvrCmd If you don't reference other UIDs, you can usually just return kNoOpCmdBoss for this.

Fixup commands (or DeferredScrap Commands) generally look at IXReferenceUID and edit the behavior so that the UIDs that are source refs in IXReferenceUID are changed to the corresponding destination refs

See Also
IXReferenceUID, FixupSoundBhvrCmd, FixupShowHideFieldsBhvrCmd

Implemented in CommandFactory< CreateCmd, EditCmd, DeleteCmd, DeferredScrapCmd >.

virtual ICommand* ICommandFactory::CreateDeleteCommand () const
pure virtual
Returns
A command that will delete a particular behavior

Implemented in CommandFactory< CreateCmd, EditCmd, DeleteCmd, DeferredScrapCmd >.

virtual ICommand* ICommandFactory::CreateEditCommand () const
pure virtual
Returns
A command that will edit a particular behavior

Implemented in CommandFactory< CreateCmd, EditCmd, DeleteCmd, DeferredScrapCmd >.