InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
BasePanelXMLGenerator Class Reference

#include <BasePanelXMLGenerator.h>

Inheritance diagram for BasePanelXMLGenerator:
CPanelBasedXMLGeneratorCXMLGeneratorCPMUnknown< IXMLGenerator >IXMLGeneratorIPMUnknownDCLSizPanelXMLGenerator

Public Member Functions

 BasePanelXMLGenerator (IPMUnknown *boss)
 
virtual void GenerateBeginTag (IXMLOutStream *s)
 
virtual void GenerateEndTag (IXMLOutStream *s)
 
virtual void PushPanelAttributes (IXMLOutStream::AttributeList &attrs, IControlView *panel)
 
virtual void GenerateContent (IXMLOutStream *s, int32 beforeChildIndex=0)
 
- Public Member Functions inherited from CPanelBasedXMLGenerator
 CPanelBasedXMLGenerator (IPMUnknown *boss)
 
virtual bool16 ShouldPanelBePersisted (IControlView *panel)
 
virtual void GeneratePanelBeginTag (IXMLOutStream *s, IControlView *panel)
 
virtual void GeneratePanelContents (IXMLOutStream *s, IControlView *panel)
 
virtual void GeneratePanelEndTag (IXMLOutStream *s, IControlView *panel)
 
- Public Member Functions inherited from CXMLGenerator
 CXMLGenerator (IPMUnknown *boss)
 
virtual void CollectAttributes (IXMLOutStream *s, IXMLOutStream::AttributeList *attrs)
 
- Public Member Functions inherited from CPMUnknown< IXMLGenerator >
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 IXMLGenerator
enum  { kDefaultIID = IID_IXMLGENERATOR }
 
- Protected Member Functions inherited from CPanelBasedXMLGenerator
virtual void GenerateControlSet (IXMLOutStream *s, IKit *panelKit)
 
void PushBool (IXMLOutStream::AttributeList &attrs, const PMString &name, bool16 theBool)
 
void PushInt (IXMLOutStream::AttributeList &attrs, const PMString &name, int32 theInt)
 
void PushString (IXMLOutStream::AttributeList &attrs, const PMString &name, const PMString &value)
 
- Protected Attributes inherited from CPMUnknown< IXMLGenerator >
HelperInterface fHelperInterface
 

Detailed Description

This class is the base class used by palette based panels that need to override their xml-based workspace representation. The default implementation provided here handles generating the begin and end tags (including default panel attributes), as well as a default content generator.

In order to change their XML content representation, clients can override GenerateContent. (there are 8 panels in CS3 that generate extra panel content - you can look inside a workspace file to see examples of this). In order to augment the XML attributes used in the panel's begin tag, clients can override PushPanelAttributes. (this is uncommon - the only use within InDesign is by the library panel to distinguish multiple copies of a panel by adding attributes that contain the name and path to the library being displayed).

See Also
IXMLGenerator, CPanelBasedXMLGenerator

Member Function Documentation

virtual void BasePanelXMLGenerator::GenerateBeginTag (IXMLOutStreams)
virtual

Clients shouldn't need to override this

Reimplemented from CXMLGenerator.

virtual void BasePanelXMLGenerator::GenerateContent (IXMLOutStreams,
int32 beforeChildIndex = 0 
)
virtual

Override this to generate any panel specific content (must call the inherited version).

Reimplemented from CXMLGenerator.

Reimplemented in DCLSizPanelXMLGenerator.

virtual void BasePanelXMLGenerator::GenerateEndTag (IXMLOutStreams)
virtual

Clients shouldn't need to override this

Reimplemented from CXMLGenerator.

virtual void BasePanelXMLGenerator::PushPanelAttributes (IXMLOutStream::AttributeListattrs,
IControlViewpanel 
)
virtual

Override this to add panel specific attributes (must call the inherited version). Called by GenerateBeginTag above.

Reimplemented from CPanelBasedXMLGenerator.