## com.lowagie.text.rtf.headerfooter
Class RtfHeaderFooterGroup

    java.lang.Object
      com.lowagie.text.Rectangle
          com.lowagie.text.HeaderFooter
              com.lowagie.text.rtf.headerfooter.RtfHeaderFooterGroup

All Implemented Interfaces:
  Element, MarkupAttributes, RtfBasicElement

    public class RtfHeaderFooterGroup

extends HeaderFooter
implements RtfBasicElement

The RtfHeaderFooterGroup holds 0 - 3 RtfHeaderFooters that create a group of headers or footers.

Version:
  $Version:$
Author:
  Mark Hall (mhall@edu.uni-klu.ac.at)

Field Summary
`private RtfDocument` `document` The RtfDocument this RtfHeaderFooterGroup belongs to
`private RtfHeaderFooter` `headerAll` The RtfHeaderFooter for all pages
`private RtfHeaderFooter` `headerFirst` The RtfHeaderFooter for the first page
`private RtfHeaderFooter` `headerLeft` The RtfHeaderFooter for the left hand pages
`private RtfHeaderFooter` `headerRight` The RtfHeaderFooter for the right hand pages
`private int` `mode` The current mode of this RtfHeaderFooterGroup.
`private static int` `MODE_MULTIPLE` This RtfHeaderFooterGroup contains two or three RtfHeaderFooter objects
`private static int` `MODE_NONE` This RtfHeaderFooterGroup contains no RtfHeaderFooter objects
`private static int` `MODE_SINGLE` This RtfHeaderFooterGroup contains one RtfHeaderFooter object
`private int` `type` The current type of this RtfHeaderFooterGroup.

Fields inherited from class com.lowagie.text.Rectangle
`background, border, borderColorBottom, borderColorLeft, borderColorRight, borderColorTop, borderWidth, borderWidthBottom, borderWidthLeft, borderWidthRight, borderWidthTop, BOTTOM, BOX, color, LEFT, llx, lly, markupAttributes, NO_BORDER, RIGHT, rotation, TOP, UNDEFINED, urx, ury, useVariableBorders`

Fields inherited from interface com.lowagie.text.rtf.RtfBasicElement
`CLOSE_GROUP, COMMA_DELIMITER, DELIMITER, OPEN_GROUP, TWIPS_FACTOR`

Fields inherited from interface com.lowagie.text.Element

`ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, GRAPHIC, HEADER, IMGRAW, IMGTEMPLATE, JPEG, KEYWORDS, LIST, LISTITEM, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE`

Constructor Summary
`RtfHeaderFooterGroup()` Constructs a RtfHeaderGroup to which you add headers/footers using via the setHeaderFooter method.
`RtfHeaderFooterGroup(RtfDocument doc, HeaderFooter headerFooter, int type)` Constructs a RtfHeaderGroup for a certain HeaderFooter
`RtfHeaderFooterGroup(RtfDocument doc, int type)` Constructs a certain type of RtfHeaderFooterGroup.
`RtfHeaderFooterGroup(RtfDocument doc, RtfHeaderFooterGroup headerFooter, int type)` Constructs a RtfHeaderFooterGroup by copying the content of the original RtfHeaderFooterGroup
`RtfHeaderFooterGroup(RtfDocument doc, RtfHeaderFooter headerFooter, int type)` Constructs a RtfHeaderFooterGroup for a certain RtfHeaderFooter.

Method Summary
`protected RtfHeaderFooter` `getHeaderAll()` Gets the RtfHeaderFooter for all pages
`protected RtfHeaderFooter` `getHeaderFirst()` Gets the RtfHeaderFooter for the title page
`protected RtfHeaderFooter` `getHeaderLeft()` Gets the RtfHeaderFooter for all left hand pages
`protected RtfHeaderFooter` `getHeaderRight()` Gets the RtfHeaderFooter for all right hand pages
`protected int` `getMode()` Gets the mode of this RtfHeaderFooterGroup
`boolean` `hasFacingPages()` Get whether this RtfHeaderFooterGroup has facing pages
`boolean` `hasTitlePage()` Get whether this RtfHeaderFooterGroup has a titlepage
`void` `setHasFacingPages()` Set that this RtfHeaderFooterGroup should have facing pages.
`void` `setHasTitlePage()` Set that this RtfHeaderFooterGroup should have a title page.
`void` `setHeaderFooter(HeaderFooter headerFooter, int displayAt)` Set a HeaderFooter to be displayed at a certain position
`void` `setHeaderFooter(RtfHeaderFooter headerFooter, int displayAt)` Set a RtfHeaderFooter to be displayed at a certain position
`void` `setInHeader(boolean inHeader)` Unused
`void` `setInTable(boolean inTable)` Unused
`void` `setRtfDocument(RtfDocument doc)` Sets the RtfDocument this RtfElement belongs to
`void` `setType(int type)` Set the type of this RtfHeaderFooterGroup.
`byte[]` `write()` Write the content of this RtfHeaderFooterGroup.

Methods inherited from class com.lowagie.text.HeaderFooter
`alignment, getAfter, getBefore, isNumbered, paragraph, setAlignment, setPageNumber`

Methods inherited from class com.lowagie.text.Rectangle

`backgroundColor, border, borderColor, borderWidth, bottom, bottom, cloneNonPositionParameters, disableBorderSide, enableBorderSide, getBorderColorBottom, getBorderColorLeft, getBorderColorRight, getBorderColorTop, getBorderWidthBottom, getBorderWidthLeft, getBorderWidthRight, getBorderWidthTop, getChunks, getMarkupAttribute, getMarkupAttributeNames, getMarkupAttributes, getRotation, grayFill, hasBorder, hasBorders, height, isUseVariableBorders, left, left, normalize, process, rectangle, right, right, rotate, setBackgroundColor, setBorder, setBorderColor, setBorderColorBottom, setBorderColorLeft, setBorderColorRight, setBorderColorTop, setBorderWidth, setBorderWidthBottom, setBorderWidthLeft, setBorderWidthRight, setBorderWidthTop, setBottom, setGrayFill, setLeft, setMarkupAttribute, setMarkupAttributes, setRight, setTop, setUseVariableBorders, softCloneNonPositionParameters, top, top, toString, type, width`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface com.lowagie.text.MarkupAttributes
`getMarkupAttribute, getMarkupAttributeNames, getMarkupAttributes, setMarkupAttribute, setMarkupAttributes`

Methods inherited from interface com.lowagie.text.Element
`getChunks, process, toString, type`

Field Detail

### MODE_NONE

    private static final int MODE_NONE

  This RtfHeaderFooterGroup contains no RtfHeaderFooter objects

  See Also:
    Constant Field Values

### MODE_SINGLE

    private static final int MODE_SINGLE

  This RtfHeaderFooterGroup contains one RtfHeaderFooter object

  See Also:
    Constant Field Values

### MODE_MULTIPLE

    private static final int MODE_MULTIPLE

  This RtfHeaderFooterGroup contains two or three RtfHeaderFooter objects

  See Also:
    Constant Field Values

### mode

    private int mode

  The current mode of this RtfHeaderFooterGroup. Defaults to MODE_NONE

### type

    private int type

  The current type of this RtfHeaderFooterGroup. Defaults to RtfHeaderFooter.TYPE_HEADER

### headerAll

    private RtfHeaderFooter headerAll

  The RtfHeaderFooter for all pages

### headerFirst

    private RtfHeaderFooter headerFirst

  The RtfHeaderFooter for the first page

### headerLeft

    private RtfHeaderFooter headerLeft

  The RtfHeaderFooter for the left hand pages

### headerRight

    private RtfHeaderFooter headerRight

  The RtfHeaderFooter for the right hand pages

### document

    private RtfDocument document

  The RtfDocument this RtfHeaderFooterGroup belongs to

Constructor Detail

### RtfHeaderFooterGroup

    public RtfHeaderFooterGroup()

  Constructs a RtfHeaderGroup to which you add headers/footers using via the setHeaderFooter method.

### RtfHeaderFooterGroup

    public RtfHeaderFooterGroup(RtfDocument doc,
                                int type)

  Constructs a certain type of RtfHeaderFooterGroup. RtfHeaderFooter.TYPE_HEADER and RtfHeaderFooter.TYPE_FOOTER are valid values for type.

  Parameters:
    `doc` - The RtfDocument this RtfHeaderFooter belongs to
    `type` - The type of RtfHeaderFooterGroup to create

### RtfHeaderFooterGroup

    public RtfHeaderFooterGroup(RtfDocument doc,
                                RtfHeaderFooterGroup headerFooter,
                                int type)

  Constructs a RtfHeaderFooterGroup by copying the content of the original RtfHeaderFooterGroup

  Parameters:
    `doc` - The RtfDocument this RtfHeaderFooter belongs to
    `headerFooter` - The RtfHeaderFooterGroup to copy
    `type` - The type of RtfHeaderFooterGroup to create

### RtfHeaderFooterGroup

    public RtfHeaderFooterGroup(RtfDocument doc,
                                RtfHeaderFooter headerFooter,
                                int type)

  Constructs a RtfHeaderFooterGroup for a certain RtfHeaderFooter.

  Parameters:
    `doc` - The RtfDocument this RtfHeaderFooter belongs to
    `headerFooter` - The RtfHeaderFooter to display
    `type` - The typ of RtfHeaderFooterGroup to create

### RtfHeaderFooterGroup

    public RtfHeaderFooterGroup(RtfDocument doc,
                                HeaderFooter headerFooter,
                                int type)

  Constructs a RtfHeaderGroup for a certain HeaderFooter

  Parameters:
    `doc` - The RtfDocument this RtfHeaderFooter belongs to
    `headerFooter` - The HeaderFooter to display
    `type` - The typ of RtfHeaderFooterGroup to create

Method Detail

### setRtfDocument

    public void setRtfDocument(RtfDocument doc)

  Sets the RtfDocument this RtfElement belongs to

  Specified by:
    `setRtfDocument` in interface `RtfBasicElement`
  Parameters:
    `doc` - The RtfDocument to use

### write

    public byte[] write()

  Write the content of this RtfHeaderFooterGroup.

  Specified by:
    `write` in interface `RtfBasicElement`
  Returns:
    A byte array with the content of this RtfHeaderFooterGroup

### setHeaderFooter

    public void setHeaderFooter(RtfHeaderFooter headerFooter,
                                int displayAt)

  Set a RtfHeaderFooter to be displayed at a certain position

  Parameters:
    `headerFooter` - The RtfHeaderFooter to display
    `displayAt` - The display location to use

### setHeaderFooter

    public void setHeaderFooter(HeaderFooter headerFooter,
                                int displayAt)

  Set a HeaderFooter to be displayed at a certain position

  Parameters:
    `headerFooter` - The HeaderFooter to set
    `displayAt` - The display location to use

### setHasTitlePage

    public void setHasTitlePage()

  Set that this RtfHeaderFooterGroup should have a title page. If only a header / footer for all pages exists, then it will be copied to the first page aswell.

### setHasFacingPages

    public void setHasFacingPages()

  Set that this RtfHeaderFooterGroup should have facing pages. If only a header / footer for all pages exists, then it will be copied to the left and right pages aswell.

### hasTitlePage

    public boolean hasTitlePage()

  Get whether this RtfHeaderFooterGroup has a titlepage

  Returns:
    Whether this RtfHeaderFooterGroup has a titlepage

### hasFacingPages

    public boolean hasFacingPages()

  Get whether this RtfHeaderFooterGroup has facing pages

  Returns:
    Whether this RtfHeaderFooterGroup has facing pages

### setInTable

    public void setInTable(boolean inTable)

  Unused

  Specified by:
    `setInTable` in interface `RtfBasicElement`
  Parameters:
    `inTable` -

### setInHeader

    public void setInHeader(boolean inHeader)

  Unused

  Specified by:
    `setInHeader` in interface `RtfBasicElement`
  Parameters:
    `inHeader` -

### setType

    public void setType(int type)

  Set the type of this RtfHeaderFooterGroup. RtfHeaderFooter.TYPE_HEADER or RtfHeaderFooter.TYPE_FOOTER. Also sets the type for all RtfHeaderFooters of this RtfHeaderFooterGroup.

  Parameters:
    `type` - The type to use

### getMode

    protected int getMode()

  Gets the mode of this RtfHeaderFooterGroup

  Returns:
    The mode of this RtfHeaderFooterGroup

### getHeaderAll

    protected RtfHeaderFooter getHeaderAll()

  Gets the RtfHeaderFooter for all pages

  Returns:
    The RtfHeaderFooter for all pages

### getHeaderFirst

    protected RtfHeaderFooter getHeaderFirst()

  Gets the RtfHeaderFooter for the title page

  Returns:
    The RtfHeaderFooter for the title page

### getHeaderLeft

    protected RtfHeaderFooter getHeaderLeft()

  Gets the RtfHeaderFooter for all left hand pages

  Returns:
    The RtfHeaderFooter for all left hand pages

### getHeaderRight

    protected RtfHeaderFooter getHeaderRight()

  Gets the RtfHeaderFooter for all right hand pages

  Returns:
    The RtfHeaderFooter for all right hand pages