#include <fl_FootnoteLayout.h>
Public Member Functions | |
fl_AnnotationLayout (FL_DocLayout *pLayout, fl_DocSectionLayout *pDocSL, pf_Frag_Strux *sdh, PT_AttrPropIndex ap, fl_ContainerLayout *pMyContainerLayout) | |
virtual | ~fl_AnnotationLayout () |
fp_AnnotationRun * | getAnnotationRun (void) |
virtual void | format (void) |
virtual void | collapse (void) |
virtual fp_Container * | getNewContainer (fp_Container *=NULL) |
UT_uint32 | getAnnotationPID (void) const |
const char * | getAuthor (void) const |
const char * | getDate (void) const |
const char * | getTitle (void) const |
Protected Member Functions | |
virtual void | _lookupProperties (const PP_AttrProp *pAP) |
Private Member Functions | |
void | _createAnnotationContainer (void) |
void | _insertAnnotationContainer (fp_Container *pNewFC) |
void | _localCollapse () |
Private Attributes | |
UT_uint32 | m_iAnnotationPID |
UT_UTF8String | m_sAuthor |
UT_UTF8String | m_sDate |
UT_UTF8String | m_sTitle |
Friends | |
class | fl_DocListener |
class | fp_AnnotationContainer |
fl_AnnotationLayout::fl_AnnotationLayout | ( | FL_DocLayout * | pLayout, | |
fl_DocSectionLayout * | pDocSL, | |||
pf_Frag_Strux * | sdh, | |||
PT_AttrPropIndex | ap, | |||
fl_ContainerLayout * | pMyContainerLayout | |||
) |
fl_AnnotationLayout::~fl_AnnotationLayout | ( | ) | [virtual] |
References fl_EmbedLayout::_purgeLayout(), fl_ContainerLayout::getFirstContainer(), fl_ContainerLayout::getLastContainer(), fp_Container::getNext(), fl_SectionLayout::m_pLayout, FL_DocLayout::removeAnnotation(), fl_ContainerLayout::setFirstContainer(), fl_ContainerLayout::setLastContainer(), UT_DEBUGMSG, and UT_return_if_fail.
void fl_AnnotationLayout::_createAnnotationContainer | ( | void | ) | [private] |
This method creates a new footnote with its properties initially set from the Attributes/properties of this Layout
References fp_AnnotationContainer, fl_ContainerLayout::getContainerType(), fl_ContainerLayout::getLastContainer(), fl_DocSectionLayout::getLeftMargin(), fp_Container::getPage(), fl_DocSectionLayout::getRightMargin(), fp_Page::getWidth(), fl_ContainerLayout::lookupProperties(), fl_ContainerLayout::myContainingLayout(), fl_ContainerLayout::setFirstContainer(), fl_ContainerLayout::setLastContainer(), fp_VerticalContainer::setWidth(), and UT_return_if_fail.
Referenced by fl_AnnotationLayout(), and getNewContainer().
void fl_AnnotationLayout::_insertAnnotationContainer | ( | fp_Container * | pNewFC | ) | [private] |
References FL_DocLayout::findBlockAtPosition(), fp_Run::getBlockOffset(), fp_Container::getContainer(), fl_ContainerLayout::getContainerType(), fl_EmbedLayout::getDocPosition(), fl_ContainerLayout::getLastContainer(), fp_Run::getLength(), fp_Run::getLine(), fp_Run::getNextRun(), fp_Container::getPage(), fp_Page::insertAnnotationContainer(), fl_EmbedLayout::m_bIsOnPage, fl_SectionLayout::m_pLayout, fl_ContainerLayout::myContainingLayout(), fp_Container::setContainer(), UT_ASSERT, and UT_DEBUGMSG.
Referenced by format().
void fl_AnnotationLayout::_localCollapse | ( | void | ) | [private] |
void fl_AnnotationLayout::_lookupProperties | ( | const PP_AttrProp * | pSectionAP | ) | [protected, virtual] |
this function is only to be called by fl_ContainerLayout::lookupProperties() all other code must call lookupProperties() instead
Implements fl_ContainerLayout.
References gchar, PP_AttrProp::getAttribute(), PP_AttrProp::getProperty(), m_iAnnotationPID, m_sAuthor, m_sDate, m_sTitle, UT_DEBUGMSG, UT_return_if_fail, and UT_UTF8String::utf8_str().
void fl_AnnotationLayout::collapse | ( | void | ) | [virtual] |
Implements fl_EmbedLayout.
References _localCollapse(), fl_ContainerLayout::getFirstContainer(), fp_Container::getNext(), fp_AnnotationContainer::getPage(), fp_Container::getPrev(), fl_EmbedLayout::m_bIsOnPage, fp_Page::removeAnnotationContainer(), fl_ContainerLayout::setFirstContainer(), fl_ContainerLayout::setLastContainer(), fp_Container::setNext(), fp_AnnotationContainer::setPage(), and fp_ContainerObject::setPrev().
Referenced by FL_DocLayout::collapseAnnotations().
void fl_AnnotationLayout::format | ( | void | ) | [virtual] |
Implements fl_EmbedLayout.
References _insertAnnotationContainer(), fl_ContainerLayout::format(), fl_ContainerLayout::getFirstContainer(), fl_ContainerLayout::getFirstLayout(), fl_ContainerLayout::getLastContainer(), getNewContainer(), fl_ContainerLayout::getNext(), fl_EmbedLayout::m_bIsOnPage, fl_EmbedLayout::m_bNeedsFormat, fl_SectionLayout::m_bNeedsReformat, and UT_DEBUGMSG.
UT_uint32 fl_AnnotationLayout::getAnnotationPID | ( | void | ) | const [inline] |
fp_AnnotationRun * fl_AnnotationLayout::getAnnotationRun | ( | void | ) |
References FL_DocLayout::findBlockAtPosition(), getAnnotationPID(), fp_Run::getBlockOffset(), fl_ContainerLayout::getContainerType(), fl_EmbedLayout::getDocPosition(), fp_HyperlinkRun::getHyperlinkType(), fp_Run::getLength(), fp_Run::getNextRun(), fp_AnnotationRun::getPID(), fp_Run::getType(), fl_SectionLayout::m_pLayout, and UT_ASSERT.
Referenced by FL_DocLayout::addAnnotation(), fp_AnnotationContainer::draw(), fl_BlockLayout::getTextIndent(), and FL_DocLayout::removeAnnotation().
const char* fl_AnnotationLayout::getAuthor | ( | void | ) | const [inline] |
Referenced by FV_View::getAnnotationAuthor().
const char* fl_AnnotationLayout::getDate | ( | void | ) | const [inline] |
fp_Container * fl_AnnotationLayout::getNewContainer | ( | fp_Container * | = NULL |
) | [virtual] |
Create a new Annotation container.
If | pPrevAnnotation is non-null place the new cell after this in the linked list, otherwise just append it to the end. |
Implements fl_EmbedLayout.
References _createAnnotationContainer(), fl_ContainerLayout::getLastContainer(), fl_EmbedLayout::m_bIsOnPage, and UT_DEBUGMSG.
Referenced by format().
const char* fl_AnnotationLayout::getTitle | ( | void | ) | const [inline] |
Referenced by FV_View::getAnnotationTitle().
friend class fl_DocListener [friend] |
Reimplemented from fl_EmbedLayout.
friend class fp_AnnotationContainer [friend] |
Referenced by _createAnnotationContainer().
Referenced by _lookupProperties().
UT_UTF8String fl_AnnotationLayout::m_sAuthor [private] |
Referenced by _lookupProperties().
UT_UTF8String fl_AnnotationLayout::m_sDate [private] |
Referenced by _lookupProperties().
UT_UTF8String fl_AnnotationLayout::m_sTitle [private] |
Referenced by _lookupProperties().