![]() | InDesign SDK 20.5 |
#include <IFormFieldFactory.h>

Public Types | |
| enum | { kDefaultIID = IID_IFORMFIELDFACTORY } |
Public Member Functions | |
| virtual PMString | GetFieldTypeName () const =0 |
| virtual UIDRef | CreateFormField (const UIDRef &inParent, const PMRect &inBounds) const =0 |
| virtual PMString | GetStyleLibName () const =0 |
| virtual PMString | GetDefaultBaseObjectName () const =0 |
| virtual void | AddDefaultAttributes (IGraphicStyleAttributeBossList *outAttrs, IGraphicStyleAttributeBossList *defaultAttrs, IDocument *inDoc)=0 |
| virtual IGraphicStyleAttributeBossList * | QueryDefaultAttributes ()=0 |
| virtual PMString | GetUniqueName (const PMString &inName, IDocument *inDoc)=0 |
Public Member Functions inherited from IPMUnknown | |
| virtual IPMUnknown * | QueryInterface (PMIID interfaceID) const =0 |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
Abstract Factory and Utility interface for a particular form field type. There are Implementations of IFormFieldFactory for each form field type. (e.g. kPushButtonFactoryImpl, kCheckBoxFactoryImpl, etc) The factory can be used to create new form fields of one type. Each form field has an interface, IFormField, that contains a method, QueryFormFieldFactory, to get the IFormFieldFactory that created it. IFormFieldFactory is an interface on a service, so that all the form types can be enumerated.
| pure virtual |
Add default attributes for form field into outAttrs. Used to add required attributes for new form fields.
| defaultAttrs | a list of attributes to use for defaults. May be nil. Not all attributes need be present in defaultAttrs. If an attribute is missing the implementation of AddDefaultAttributes will return a constant default in outAttr. |
| inDoc | is used to generate a unique name. If nil, name attribute returned in outAttrs is "". |
| outAttrs | return a list default attributes appropriate for form type here |
| pure virtual |
Create a form field
| inParent | Form field is created as child of inParent |
| inBounds | dimensions of new form field |
| pure virtual |
Get the built in base default name to be used to name this type of form field object
| pure virtual |
| pure virtual |
Get name of style library for this form field type.
| pure virtual |
Generate a unique name for IFormFieldFactory's form field type.
| inName | if this is an empty string, name returned is of the form <Form type>=""> N, otherwise it is <inName> N, where N is a unique number tracked in inDoc |
| inDoc | used to track number appended to returned unique name. |
| pure virtual |
Does AddDefaultAttributes to a new list, using defaultAttrs = 0, inDoc = 0, and returns it. Therefore it gets the constant default values, without relying on another list for defaults.