fl_DocSectionLayout Class Reference

#include <fl_SectionLayout.h>

Inheritance diagram for fl_DocSectionLayout:

fl_SectionLayout fl_ContainerLayout fl_Layout

List of all members.

Public Member Functions

 fl_DocSectionLayout (FL_DocLayout *pLayout, PL_StruxDocHandle sdh, PT_AttrPropIndex ap, SectionType iType)
virtual ~fl_DocSectionLayout ()
fl_DocSectionLayoutgetNextDocSection (void) const
fl_DocSectionLayoutgetPrevDocSection (void) const
virtual void format (void)
virtual void updateLayout (bool bDoFull)
void updateDocSection (void)
virtual void collapse (void)
virtual fp_ContainergetFirstContainer (void) const
virtual fp_ContainergetLastContainer (void) const
virtual void setFirstContainer (fp_Container *pCon)
virtual void setLastContainer (fp_Container *pCon)
fl_FootnoteLayoutgetFootnoteLayout (UT_uint32 footnotePID)
fl_AnnotationLayoutgetAnnotationLayout (UT_uint32 footnotePID)
virtual void markAllRunsDirty (void)
virtual fl_SectionLayoutgetSectionLayout (void) const
virtual void redrawUpdate (void)
virtual fp_ContainergetNewContainer (fp_Container *pFirstContainer=NULL)
UT_sint32 getLeftMargin (void) const
UT_sint32 getRightMargin (void) const
UT_sint32 getTopMargin (void) const
UT_sint32 getBottomMargin (void) const
UT_sint32 getFooterMargin (void) const
UT_sint32 getHeaderMargin (void) const
UT_sint32 getSpaceAfter (void) const
UT_sint32 getMaxSectionColumnHeight (void) const
UT_sint32 getColumnGap (void) const
UT_uint32 getFootnoteLineThickness (void) const
UT_uint32 getFootnoteYoff (void) const
void completeBreakSection (void)
bool arePageNumbersRestarted (void) const
UT_sint32 getRestartedPageNumber (void) const
UT_uint32 getNumColumns (void) const
bool getColumnLineBetween (void) const
UT_uint32 getColumnOrder (void) const
void setPaperColor ()
void deleteEmptyColumns (void)
virtual bool doclistener_changeStrux (const PX_ChangeRecord_StruxChange *pcrxc)
bool doclistener_deleteStrux (const PX_ChangeRecord_Strux *pcrx)
virtual bool bl_doclistener_insertFootnote (fl_ContainerLayout *, const PX_ChangeRecord_Strux *pcrx, PL_StruxDocHandle sdh, PL_ListenerId lid, void(*pfnBindHandles)(PL_StruxDocHandle sdhNew, PL_ListenerId lid, PL_StruxFmtHandle sfhNew))
virtual bool bl_doclistener_insertAnnotation (fl_ContainerLayout *, const PX_ChangeRecord_Strux *pcrx, PL_StruxDocHandle sdh, PL_ListenerId lid, void(*pfnBindHandles)(PL_StruxDocHandle sdhNew, PL_ListenerId lid, PL_StruxFmtHandle sfhNew))
void setHdrFtr (HdrFtrType iType, fl_HdrFtrSectionLayout *pHFSL)
fl_HdrFtrSectionLayoutgetHeader (void)
fl_HdrFtrSectionLayoutgetFooter (void)
fl_HdrFtrSectionLayoutgetHeaderEven (void)
fl_HdrFtrSectionLayoutgetFooterEven (void)
fl_HdrFtrSectionLayoutgetHeaderFirst (void)
fl_HdrFtrSectionLayoutgetFooterFirst (void)
fl_HdrFtrSectionLayoutgetHeaderLast (void)
fl_HdrFtrSectionLayoutgetFooterLast (void)
bool setHdrFtrHeightChange (bool bDoHdr, UT_sint32 newHeight)
void addOwnedPage (fp_Page *)
void prependOwnedHeaderPage (fp_Page *p_Page)
void prependOwnedFooterPage (fp_Page *p_Page)
void deleteOwnedPage (fp_Page *, bool bReallyDeleteIT=true)
void markForRebuild (void)
void clearRebuild (void)
bool needsRebuild (void) const
void checkAndAdjustColumnGap (UT_sint32 iLayoutWidth)
void markForReformat (void)
bool needsReFormat (void) const
bool isThisPageValid (HdrFtrType hfType, fp_Page *pThisPage)
void getVecOfHdrFtrs (UT_GenericVector< fl_HdrFtrSectionLayout * > *vecHdrFtr)
void formatAllHdrFtr (void)
void doMarginChangeOnly (void)
void checkAndRemovePages (void)
void addValidPages (void)
void setNeedsSectionBreak (bool bSet, fp_Page *pPage)
bool needsSectionBreak (void) const
void setFirstEndnoteContainer (fp_EndnoteContainer *pECon)
void setLastEndnoteContainer (fp_EndnoteContainer *pECon)
fp_ContainergetFirstEndnoteContainer (void)
fp_ContainergetLastEndnoteContainer (void)
void deleteBrokenTablesFromHere (fl_ContainerLayout *pTL)
UT_sint32 getWidth (void)
UT_sint32 getActualColumnHeight (void)
UT_sint32 getActualColumnWidth (void)
bool isCollapsing (void) const

Static Public Member Functions

static void _HdrFtrChangeCallback (UT_Worker *pWorker)

Private Member Functions

virtual void _lookupProperties (const PP_AttrProp *pAP)
virtual void _lookupMarginProperties (const PP_AttrProp *pAP)

Private Attributes

fb_ColumnBreaker m_ColumnBreaker
fl_HdrFtrSectionLayoutm_pHeaderSL
fl_HdrFtrSectionLayoutm_pFooterSL
fl_HdrFtrSectionLayoutm_pHeaderEvenSL
fl_HdrFtrSectionLayoutm_pFooterEvenSL
fl_HdrFtrSectionLayoutm_pHeaderFirstSL
fl_HdrFtrSectionLayoutm_pFooterFirstSL
fl_HdrFtrSectionLayoutm_pHeaderLastSL
fl_HdrFtrSectionLayoutm_pFooterLastSL
UT_uint32 m_iNumColumns
UT_sint32 m_iColumnGap
bool m_bColumnLineBetween
UT_uint32 m_iColumnOrder
UT_sint32 m_iSpaceAfter
bool m_bRestart
UT_sint32 m_iRestartValue
UT_sint32 m_iLeftMargin
double m_dLeftMarginUserUnits
UT_sint32 m_iRightMargin
double m_dRightMarginUserUnits
UT_sint32 m_iTopMargin
double m_dTopMarginUserUnits
UT_sint32 m_iBottomMargin
double m_dBottomMarginUserUnits
UT_sint32 m_iFooterMargin
double m_dFooterMarginUserUnits
UT_sint32 m_iHeaderMargin
double m_dHeaderMarginUserUnits
UT_sint32 m_iMaxSectionColumnHeight
double m_dMaxSectionColumnHeight
UT_sint32 m_iFootnoteLineThickness
UT_sint32 m_iFootnoteYoff
bool m_bForceNewPage
fp_Columnm_pFirstColumn
 First column in the section.
fp_Columnm_pLastColumn
 Last column in the section.
fp_Pagem_pFirstOwnedPage
bool m_bNeedsFormat
bool m_bNeedsRebuild
bool m_bNeedsSectionBreak
fp_EndnoteContainerm_pFirstEndnoteContainer
fp_EndnoteContainerm_pLastEndnoteContainer
bool m_bDeleteingBrokenContainers
UT_String m_sPaperColor
UT_String m_sScreenColor
UT_sint32 m_iNewHdrHeight
UT_sint32 m_iNewFtrHeight
UT_Workerm_pHdrFtrChangeTimer
UT_String m_sHdrFtrChangeProps
bool m_bDoingCollapse

Friends

class fl_DocListener


Constructor & Destructor Documentation

fl_DocSectionLayout::fl_DocSectionLayout ( FL_DocLayout pLayout,
PL_StruxDocHandle  sdh,
PT_AttrPropIndex  ap,
SectionType  iType 
)

fl_DocSectionLayout::~fl_DocSectionLayout (  )  [virtual]


Member Function Documentation

fl_DocSectionLayout * fl_DocSectionLayout::getNextDocSection ( void   )  const

fl_DocSectionLayout * fl_DocSectionLayout::getPrevDocSection ( void   )  const

void fl_DocSectionLayout::format ( void   )  [virtual]

void fl_DocSectionLayout::updateLayout ( bool  bDoFull  )  [virtual]

void fl_DocSectionLayout::updateDocSection ( void   ) 

void fl_DocSectionLayout::collapse ( void   )  [virtual]

fp_Container * fl_DocSectionLayout::getFirstContainer ( void   )  const [virtual]

fp_Container * fl_DocSectionLayout::getLastContainer ( void   )  const [virtual]

void fl_DocSectionLayout::setFirstContainer ( fp_Container pCon  )  [virtual]

Reimplemented from fl_ContainerLayout.

References m_pFirstColumn, and UT_DEBUGMSG.

void fl_DocSectionLayout::setLastContainer ( fp_Container pCon  )  [virtual]

Reimplemented from fl_ContainerLayout.

References m_pLastColumn.

fl_FootnoteLayout * fl_DocSectionLayout::getFootnoteLayout ( UT_uint32  footnotePID  ) 

fl_AnnotationLayout * fl_DocSectionLayout::getAnnotationLayout ( UT_uint32  footnotePID  ) 

void fl_DocSectionLayout::markAllRunsDirty ( void   )  [virtual]

virtual fl_SectionLayout* fl_DocSectionLayout::getSectionLayout ( void   )  const [inline, virtual]

Implements fl_ContainerLayout.

void fl_DocSectionLayout::redrawUpdate ( void   )  [virtual]

fp_Container * fl_DocSectionLayout::getNewContainer ( fp_Container pFirstContainer = NULL  )  [virtual]

UT_sint32 fl_DocSectionLayout::getLeftMargin ( void   )  const [inline]

UT_sint32 fl_DocSectionLayout::getRightMargin ( void   )  const [inline]

UT_sint32 fl_DocSectionLayout::getTopMargin ( void   )  const

UT_sint32 fl_DocSectionLayout::getBottomMargin ( void   )  const

UT_sint32 fl_DocSectionLayout::getFooterMargin ( void   )  const [inline]

UT_sint32 fl_DocSectionLayout::getHeaderMargin ( void   )  const [inline]

UT_sint32 fl_DocSectionLayout::getSpaceAfter ( void   )  const [inline]

UT_sint32 fl_DocSectionLayout::getMaxSectionColumnHeight ( void   )  const [inline]

UT_sint32 fl_DocSectionLayout::getColumnGap ( void   )  const

UT_uint32 fl_DocSectionLayout::getFootnoteLineThickness ( void   )  const [inline]

UT_uint32 fl_DocSectionLayout::getFootnoteYoff ( void   )  const [inline]

void fl_DocSectionLayout::completeBreakSection ( void   ) 

bool fl_DocSectionLayout::arePageNumbersRestarted ( void   )  const [inline]

UT_sint32 fl_DocSectionLayout::getRestartedPageNumber ( void   )  const [inline]

UT_uint32 fl_DocSectionLayout::getNumColumns ( void   )  const

bool fl_DocSectionLayout::getColumnLineBetween ( void   )  const [inline]

Referenced by fp_Page::draw().

UT_uint32 fl_DocSectionLayout::getColumnOrder ( void   )  const

References m_iColumnOrder.

Referenced by Defun1().

void fl_DocSectionLayout::setPaperColor ( void   ) 

Set the color of the background paper in the following order of precedence 1. If The section level proper "background-color" is present and is not transparent use that. 2. If this section is being displayed to the screen use the ColorForTransparency preference item color. 3. Otherwise use white

References UT_String::clear(), GR_Graphics::DGP_SCREEN, gchar, fl_ContainerLayout::getAP(), AV_View::getApp(), FV_View::getGraphics(), XAP_App::getPrefs(), XAP_Prefs::getPrefsValue(), PP_AttrProp::getProperty(), FL_DocLayout::getView(), fl_SectionLayout::m_pLayout, m_sPaperColor, m_sScreenColor, GR_Graphics::queryProperties(), UT_return_if_fail, and XAP_PREF_KEY_ColorForTransparent.

Referenced by _lookupProperties(), and FL_DocLayout::updateColor().

void fl_DocSectionLayout::deleteEmptyColumns ( void   ) 

bool fl_DocSectionLayout::doclistener_changeStrux ( const PX_ChangeRecord_StruxChange pcrxc  )  [virtual]

bool fl_DocSectionLayout::doclistener_deleteStrux ( const PX_ChangeRecord_Strux pcrx  ) 

bool fl_DocSectionLayout::bl_doclistener_insertFootnote ( fl_ContainerLayout pFootnote,
const PX_ChangeRecord_Strux pcrx,
PL_StruxDocHandle  sdh,
PL_ListenerId  lid,
void(*)(PL_StruxDocHandle sdhNew, PL_ListenerId lid, PL_StruxFmtHandle sfhNew)  pfnBindHandles 
) [virtual]

bool fl_DocSectionLayout::bl_doclistener_insertAnnotation ( fl_ContainerLayout pFootnote,
const PX_ChangeRecord_Strux pcrx,
PL_StruxDocHandle  sdh,
PL_ListenerId  lid,
void(*)(PL_StruxDocHandle sdhNew, PL_ListenerId lid, PL_StruxFmtHandle sfhNew)  pfnBindHandles 
) [virtual]

void fl_DocSectionLayout::setHdrFtr ( HdrFtrType  iType,
fl_HdrFtrSectionLayout pHFSL 
)

fl_HdrFtrSectionLayout * fl_DocSectionLayout::getHeader ( void   )