#include <fp_Column.h>
fp_VerticalContainer::fp_VerticalContainer | ( | FP_ContainerType | iType, | |
fl_SectionLayout * | pSectionLayout | |||
) |
Create container
iType | Container type | |
pSectionLayout | Section layout type used for this container |
References clearWrappedLines(), fp_ContainerObject::getDocSectionLayout(), and UT_ASSERT.
fp_VerticalContainer::~fp_VerticalContainer | ( | ) | [virtual] |
Destruct container
void fp_VerticalContainer::_drawBoundaries | ( | dg_DrawArgs * | pDA | ) | [protected, virtual] |
Draw container outline
pDA | Draw arguments |
Reimplemented in fp_Column, and fp_TableContainer.
References GR_Graphics::DGP_SCREEN, GR_Painter::drawLine(), fp_ContainerObject::getGraphics(), fp_Container::getPage(), getView(), m_iMaxHeight, m_iWidth, dg_DrawArgs::pG, GR_Graphics::queryProperties(), GR_Graphics::setColor(), GR_Graphics::tlu(), UT_return_if_fail, dg_DrawArgs::xoff, and dg_DrawArgs::yoff.
Referenced by fp_TOCContainer::draw(), fp_EndnoteContainer::draw(), fp_AnnotationContainer::draw(), fp_FootnoteContainer::draw(), fp_ShadowContainer::draw(), and draw().
UT_sint32 fp_VerticalContainer::_getMaxContainerHeight | ( | void | ) | const [protected] |
Returns the maximum line height as determined from the layout method This used by the draw method to determine if a line should be drawn in a clipping rectangle
References m_imaxContainerHeight.
Referenced by fp_CellContainer::draw(), draw(), fp_CellContainer::drawBroken(), fp_TOCContainer::layout(), fp_CellContainer::layout(), fp_FrameContainer::layout(), fp_EndnoteContainer::layout(), fp_AnnotationContainer::layout(), fp_FootnoteContainer::layout(), and fp_Column::layout().
void fp_VerticalContainer::_setHeight | ( | UT_sint32 | iHeight | ) | [inline] |
Referenced by FV_FrameEdit::_mouseDrag().
void fp_VerticalContainer::_setMaxContainerHeight | ( | UT_sint32 | iLineHeight | ) | [protected] |
Set the maximum line Height
UT_sint32 | iLineHeight the largest line height yet found. |
References m_imaxContainerHeight.
Referenced by fp_TOCContainer::layout(), fp_CellContainer::layout(), fp_FrameContainer::layout(), fp_EndnoteContainer::layout(), fp_AnnotationContainer::layout(), fp_FootnoteContainer::layout(), and fp_Column::layout().
void fp_VerticalContainer::_setWidth | ( | UT_sint32 | iWidth | ) | [inline] |
Referenced by FV_FrameEdit::_mouseDrag().
void fp_VerticalContainer::_setX | ( | UT_sint32 | iX | ) | [inline] |
void fp_VerticalContainer::_setY | ( | UT_sint32 | iY | ) | [inline] |
bool fp_VerticalContainer::addContainer | ( | fp_Container * | pNewContainer | ) |
Append line at the end/bottom of the container
pNewContainer | Container |
References fp_Container::addCon(), fp_ContainerObject::clearScreen(), fp_Container::getContainer(), fp_ContainerObject::getContainerType(), fp_ContainerObject::getDocSectionLayout(), fp_Container::recalcMaxWidth(), fp_Container::setContainer(), UT_ASSERT, UT_return_val_if_fail, and xxx_UT_DEBUGMSG.
Referenced by fb_ColumnBreaker::_breakSection(), bumpContainers(), FL_DocLayout::insertEndnoteContainer(), and fp_TableContainer::tableAttach().
void fp_VerticalContainer::addWrappedLine | ( | fp_Line * | pLine | ) | [inline] |
Referenced by fp_Column::layout().
void fp_VerticalContainer::bumpContainers | ( | fp_ContainerObject * | pLastContainerToKeep | ) |
Bump Containers from this Container to the next
pLastContainerToKeep | Last line to keep in this column or NULL for none |
References addContainer(), fp_ContainerObject::clearScreen(), fp_Container::countCons(), fp_TableContainer::deleteBrokenTables(), fp_TOCContainer::deleteBrokenTOCs(), fp_Container::deleteNthCon(), fp_Container::findCon(), fp_ContainerObject::getContainerType(), fp_ContainerObject::getDocSectionLayout(), fp_Line::getMaxWidth(), fp_Container::getNext(), fp_Container::getNthCon(), fp_TOCContainer::getPrevContainerInSection(), insertContainer(), fp_Container::isEmpty(), fp_TOCContainer::isThisBroken(), fp_TableContainer::isThisBroken(), fp_Line::setReformat(), UT_ASSERT, UT_DEBUGMSG, UT_return_if_fail, and xxx_UT_DEBUGMSG.
Referenced by fb_ColumnBreaker::_breakSection().
void fp_VerticalContainer::clearScreen | ( | void | ) | [virtual] |
Clear container content from screen.
Needs to clear outline as well
Implements fp_ContainerObject.
Reimplemented in fp_ShadowContainer, fp_HdrFtrContainer, fp_FootnoteContainer, fp_AnnotationContainer, fp_EndnoteContainer, fp_FrameContainer, fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
References fp_ContainerObject::clearScreen(), fp_Container::countCons(), fp_Container::getNthCon(), fp_Container::getPage(), and fp_Container::isOnScreen().
Referenced by fl_DocSectionLayout::collapse(), setX(), and setY().
void fp_VerticalContainer::clearWrappedLines | ( | void | ) | [inline] |
Referenced by fp_VerticalContainer(), and fp_Column::layout().
UT_sint32 fp_VerticalContainer::countWrapped | ( | void | ) |
virtual void fp_VerticalContainer::deleteBrokenAfter | ( | bool | ) | [inline, virtual] |
Reimplemented in fp_TableContainer, and fp_TOCContainer.
Referenced by fb_ColumnBreaker::_checkVBreakableContainer().
Compute the distance from point to the container's circumference
x | X coordinate of point | |
y | Y coordinate of point |
Implements fp_Container.
References fp_ContainerObject::getGraphics(), m_iHeight, m_iWidth, m_iX, m_iY, and GR_Graphics::tlu().
Referenced by fp_Page::mapXYToPosition().
virtual void fp_VerticalContainer::draw | ( | GR_Graphics * | ) | [inline, virtual] |
Implements fp_ContainerObject.
Reimplemented in fp_ShadowContainer, fp_FootnoteContainer, fp_AnnotationContainer, fp_EndnoteContainer, fp_FrameContainer, fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
void fp_VerticalContainer::draw | ( | dg_DrawArgs * | pDA | ) | [virtual] |
Draw container content
pDA | Draw arguments |
Implements fp_ContainerObject.
Reimplemented in fp_ShadowContainer, fp_HdrFtrContainer, fp_FootnoteContainer, fp_AnnotationContainer, fp_EndnoteContainer, fp_FrameContainer, fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
References _drawBoundaries(), _getMaxContainerHeight(), dg_DrawArgs::bDirtyRunsOnly, fp_Container::countCons(), fp_ContainerObject::draw(), GR_Graphics::getClipRect(), fp_ContainerObject::getContainerType(), fp_TOCContainer::getHeight(), fp_TableContainer::getHeight(), fp_ContainerObject::getHeight(), fp_TableContainer::getMasterTable(), fp_TOCContainer::getMasterTOC(), fp_Container::getNthCon(), getX(), fp_ContainerObject::getX(), fp_ContainerObject::getY(), UT_Rect::height, fp_Line::isSameYAsPrevious(), fp_TOCContainer::isThisBroken(), fp_TableContainer::isThisBroken(), m_iRedrawHeight, dg_DrawArgs::pG, GR_Graphics::tlu(), UT_Rect::top, UT_DEBUGMSG, UT_MAX, dg_DrawArgs::xoff, xxx_UT_DEBUGMSG, and dg_DrawArgs::yoff.
Referenced by fp_Page::draw().
UT_sint32 fp_VerticalContainer::getColumnGap | ( | void | ) | const |
Get column gap from page the container is located on
References fp_Container::getColumn(), fp_Page::getColumnGap(), and fp_Container::getPage().
fp_TableContainer * fp_VerticalContainer::getCorrectBrokenTable | ( | const fp_Container * | pCon | ) | const |
This method returns the correct broken table for this line.
References fp_Container::getContainer(), fp_ContainerObject::getContainerType(), getFirstContainer(), fp_ContainerObject::getHeight(), fp_ContainerObject::getY(), UT_return_val_if_fail, and xxx_UT_DEBUGMSG.
Referenced by fp_CellContainer::_getBrokenRect(), getOffsets(), getScreenOffsets(), and fp_CellContainer::getScreenPositions().
fp_TOCContainer * fp_VerticalContainer::getCorrectBrokenTOC | ( | const fp_Container * | pCon | ) | const |
This method returns the correct broken TOC for this line.
References fp_Container::getContainer(), fp_ContainerObject::getContainerType(), fp_ContainerObject::getHeight(), fp_ContainerObject::getY(), UT_return_val_if_fail, and xxx_UT_DEBUGMSG.
Referenced by getOffsets(), and getScreenOffsets().
virtual fp_Container* fp_VerticalContainer::getFirstBrokenContainer | ( | ) | const [inline, virtual] |
Reimplemented in fp_TableContainer, and fp_TOCContainer.
References UT_ASSERT.
Referenced by fb_ColumnBreaker::_checkVBreakableContainer().
fp_Container * fp_VerticalContainer::getFirstContainer | ( | void | ) | const |
Return first line in the container
References fp_Container::countCons(), and fp_Container::getNthCon().
Referenced by fb_ColumnBreaker::_breakSection(), FV_View::_fixInsertionPointCoords(), FV_View::_moveInsPtNextPrevLine(), fp_Page::_reformatColumns(), fp_Page::breakPage(), fp_CellContainer::containsAnnotations(), fp_CellContainer::containsFootnoteReference(), FV_View::convertPositionedToInLine(), fp_TableContainer::deleteBrokenAfter(), fp_TableContainer::deleteBrokenTables(), fp_CellContainer::getAnnotationContainers(), fp_FrameContainer::getBlocksAroundFrame(), getCorrectBrokenTable(), fp_Page::getFilledHeight(), fp_Page::getFirstLastPos(), fp_CellContainer::getFootnoteContainers(), fp_TableContainer::mapXYToPosition(), and fp_Page::mapXYToPosition().
virtual UT_sint32 fp_VerticalContainer::getHeight | ( | void | ) | const [inline, virtual] |
Get container's height
Implements fp_ContainerObject.
Reimplemented in fp_FrameContainer, fp_TableContainer, and fp_TOCContainer.
Referenced by fb_ColumnBreaker::_breakSection(), fb_ColumnBreaker::_checkVBreakableContainer(), fp_CellContainer::_clear(), fp_CellContainer::_drawBoundaries(), fp_Column::_drawBoundaries(), fp_Page::_reformatAnnotations(), fp_Page::_reformatColumns(), fp_Page::_reformatFootnotes(), fp_TableContainer::breakCellsAt(), fp_Page::breakPage(), fp_Line::clearScreen(), fp_EndnoteContainer::clearScreen(), fp_AnnotationContainer::clearScreen(), fp_TableContainer::containsAnnotations(), fp_CellContainer::containsAnnotations(), fp_TableContainer::containsFootnoteReference(), fp_CellContainer::containsFootnoteReference(), fp_TableContainer::deleteBrokenAfter(), fp_CellContainer::doVertAlign(), fp_CellContainer::draw(), fp_Page::draw(), fp_EndnoteContainer::draw(), fp_AnnotationContainer::draw(), fp_FootnoteContainer::draw(), fp_CellContainer::drawBroken(), fp_CellContainer::drawLines(), fp_TableContainer::getAnnotationContainers(), fp_CellContainer::getAnnotationContainers(), fp_Page::getAnnotationHeight(), fp_Page::getAvailableHeight(), fp_Page::getAvailableHeightForColumn(), fp_Page::getFilledHeight(), fp_TableContainer::getFootnoteContainers(), fp_CellContainer::getFootnoteContainers(), fp_Page::getFootnoteHeight(), getScreenRect(), fp_CellContainer::getSpannedHeight(), fp_TOCContainer::layout(), fp_CellContainer::layout(), fp_EndnoteContainer::layout(), fp_AnnotationContainer::layout(), fp_FootnoteContainer::layout(), fp_HdrFtrContainer::layout(), fp_ShadowContainer::layout(), fp_Column::layout(), fp_Page::mapXYToPosition(), fb_ColumnBreaker::needsRebreak(), fp_CellContainer::setHeight(), fp_TableContainer::setToAllocation(), fp_TableContainer::sumFootnoteHeight(), fp_TOCContainer::VBreakAt(), fp_CellContainer::VBreakAt(), and fp_TableContainer::wantVBreakAtNoFootnotes().
bool fp_VerticalContainer::getIntentionallyEmpty | ( | void | ) | const [inline] |
Get container's intentionally empty flag
fp_Container * fp_VerticalContainer::getLastContainer | ( | void | ) | const |
Return last line in the container
References fp_Container::countCons(), and fp_Container::getNthCon().
Referenced by fb_ColumnBreaker::_breakSection(), FV_View::_moveInsPtNextPrevLine(), fp_Page::_reformatColumns(), fp_Page::breakPage(), fp_Column::containsPageBreak(), fp_Page::getFirstLastPos(), and fl_DocSectionLayout::getNewContainer().
virtual UT_sint32 fp_VerticalContainer::getLastWantedVBreak | ( | void | ) | const [inline, virtual] |
Reimplemented in fp_TableContainer, and fp_TOCContainer.
Referenced by fb_ColumnBreaker::_checkVBreakableContainer().
virtual UT_sint32 fp_VerticalContainer::getMarginAfter | ( | void | ) | const [inline, virtual] |
Implements fp_Container.
Reimplemented in fp_TableContainer.
virtual UT_sint32 fp_VerticalContainer::getMarginBefore | ( | void | ) | const [inline, virtual] |
Implements fp_Container.
Reimplemented in fp_TableContainer.
UT_sint32 fp_VerticalContainer::getMaxHeight | ( | void | ) | const [inline] |
Get container's max height
Reimplemented in fp_Column.
Referenced by fp_ShadowContainer::_drawHdrFtrBoundaries(), fp_TOCContainer::adjustBrokenTOCs(), fp_ShadowContainer::draw(), fp_Column::getMaxHeight(), fp_ShadowContainer::layout(), and setHeight().
virtual fp_Container* fp_VerticalContainer::getNextContainerInSection | ( | void | ) | const [inline, virtual] |
Implements fp_ContainerObject.
Reimplemented in fp_FootnoteContainer, fp_AnnotationContainer, fp_EndnoteContainer, fp_FrameContainer, fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
UT_sint32 fp_VerticalContainer::getNumWrapped | ( | void | ) | const [inline] |
Referenced by fp_Page::updatePageForWrapping().
void fp_VerticalContainer::getOffsets | ( | const fp_ContainerObject * | pContainer, | |
UT_sint32 & | xoff, | |||
UT_sint32 & | yoff | |||
) | const |
Get line's offsets relative to this container
pContainer | Container |
xoff | Container's X offset relative to container | |
yoff | Container's Y offset relative to container |
References FL_DocLayout::displayAnnotations(), fp_Container::getContainer(), fp_ContainerObject::getContainerType(), getCorrectBrokenTable(), getCorrectBrokenTOC(), fp_Page::getDocLayout(), fp_TableContainer::getFirstBrokenTable(), fl_HdrFtrShadow::getFirstContainer(), fp_ContainerObject::getHeight(), fp_TableContainer::getMasterTable(), fp_Page::getOwningSection(), fl_HdrFtrShadow::getPage(), fp_Container::getPage(), fp_Page::getScreenOffsets(), fl_DocSectionLayout::getTopMargin(), getView(), FV_View::getViewMode(), fp_ContainerObject::getX(), getY(), getYoffsetFromTable(), fp_TableContainer::isThisBroken(), and xxx_UT_DEBUGMSG.
Referenced by FV_View::_moveInsPtNextPrevLine(), FV_FrameEdit::getFrameStrings(), and fl_BlockLayout::setFramesOnPage().
virtual fp_Container* fp_VerticalContainer::getPrevContainerInSection | ( | void | ) | const [inline, virtual] |
Implements fp_ContainerObject.
Reimplemented in fp_FootnoteContainer, fp_AnnotationContainer, fp_EndnoteContainer, fp_FrameContainer, fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
void fp_VerticalContainer::getScreenOffsets | ( | const fp_ContainerObject * | pContainer, | |
UT_sint32 & | xoff, | |||
UT_sint32 & | yoff | |||
) | const |
Get Containers' offsets relative to the screen
pContainer | Container which we want to find the absolute position of. |
xoff | Container's X offset relative the screen | |
yoff | Container's Y offset relative the screen |
References FP_CONTAINER_TABLE, fp_Container::getContainer(), fp_ContainerObject::getContainerType(), getCorrectBrokenTable(), getCorrectBrokenTOC(), fp_TableContainer::getFirstBrokenTable(), fp_TableContainer::getMasterTable(), fp_Container::getNthCon(), fp_Page::getOwningSection(), fp_Container::getPage(), fl_DocSectionLayout::getTopMargin(), getView(), FV_View::getViewMode(), getX(), fp_ContainerObject::getX(), getY(), fp_ContainerObject::getY(), getYoffsetFromTable(), fp_TableContainer::isThisBroken(), UT_ASSERT, UT_return_if_fail, UT_SHOULD_NOT_HAPPEN, and xxx_UT_DEBUGMSG.
Referenced by fp_Line::_doClearScreenFromRunToEnd(), fp_Line::clearScreen(), fp_EndnoteContainer::clearScreen(), fp_AnnotationContainer::clearScreen(), FV_View::convertPositionedToInLine(), fp_Line::draw(), and getScreenRect().
return an rectangle that covers this object on the screen The calling routine is resposible for deleting the returned struct
Implements fp_ContainerObject.
References FP_CONTAINER_FRAME, fp_ContainerObject::getContainerType(), getHeight(), fp_Container::getNthCon(), fp_Container::getPage(), FV_View::getPageScreenOffsets(), getScreenOffsets(), getView(), and getWidth().
Referenced by fp_Line::draw(), fp_FrameContainer::draw(), fl_BlockLayout::formatWrappedFromHere(), fp_Line::getAbsLeftRight(), FV_VisualDragText::getImageFromSelection(), fp_FrameContainer::getLeftPad(), fl_BlockLayout::getLeftRightForWrapping(), fl_BlockLayout::getNextWrappedLine(), fp_FrameContainer::getRightPad(), fp_Page::markDirtyOverlappingRuns(), markDirtyOverlappingRuns(), and fp_FrameContainer::overlapsRect().
FV_View * fp_VerticalContainer::getView | ( | void | ) | const |
return a pointer to the current view.
References fp_Page::getDocLayout(), fp_Container::getPage(), and FL_DocLayout::getView().
Referenced by fp_TableContainer::_drawBoundaries(), fp_CellContainer::_drawBoundaries(), fp_Column::_drawBoundaries(), _drawBoundaries(), fp_CellContainer::_getBrokenRect(), fp_FrameContainer::clearScreen(), fp_CellContainer::draw(), fp_FrameContainer::draw(), fp_FrameContainer::drawBoundaries(), fp_FrameContainer::drawHandles(), getOffsets(), getScreenOffsets(), fp_CellContainer::getScreenPositions(), getScreenRect(), getY(), and fl_FrameLayout::~fl_FrameLayout().
virtual UT_sint32 fp_VerticalContainer::getWidth | ( | void | ) | const [inline, virtual] |
Get container's width
Implements fp_ContainerObject.
Reimplemented in fp_FrameContainer.
Referenced by fp_TableContainer::_drawBoundaries(), fp_CellContainer::_drawBoundaries(), fp_Column::_drawBoundaries(), fp_TableContainer::_drawBrokenBoundaries(), fp_ShadowContainer::_drawHdrFtrBoundaries(), fl_BlockLayout::_stuffAllRunsOnALine(), countWrapped(), fp_TOCContainer::draw(), fp_CellContainer::draw(), fp_Page::draw(), fp_EndnoteContainer::draw(), fp_AnnotationContainer::draw(), fp_FootnoteContainer::draw(), fp_CellContainer::drawBroken(), fl_BlockLayout::formatWrappedFromHere(), fp_Line::getAbsLeftRight(), fl_BlockLayout::getLeftRightForWrapping(), fl_BlockLayout::getNewContainer(), fl_BlockLayout::getNextWrappedLine(), fp_Line::getRightEdge(), getScreenRect(), fl_TOCLayout::getTabPosition(), FV_View::getTopRulerInfo(), fp_TableContainer::layout(), fp_Column::layout(), fp_Page::mapXYToPosition(), fp_CellContainer::setWidth(), and fp_CellContainer::sizeRequest().
UT_sint32 fp_VerticalContainer::getX | ( | void | ) | const [virtual] |
Get container's X position
Implements fp_ContainerObject.
Reimplemented in fp_FrameContainer.
References m_iX.
Referenced by fp_CellContainer::_clear(), fp_CellContainer::_drawBoundaries(), fp_TableContainer::_drawBrokenBoundaries(), fp_CellContainer::_getBrokenRect(), FV_View::_getMouseContext(), fp_TOCContainer::clearScreen(), fp_EndnoteContainer::clearScreen(), fp_AnnotationContainer::clearScreen(), fp_FootnoteContainer::clearScreen(), FV_View::cmdInsertPositionedGraphic(), fp_CellContainer::draw(), fp_Page::draw(), fp_EndnoteContainer::draw(), fp_AnnotationContainer::draw(), fp_FootnoteContainer::draw(), draw(), fp_CellContainer::drawBroken(), getScreenOffsets(), fp_CellContainer::getScreenPositions(), FV_View::getTopRulerInfo(), fp_TableContainer::layout(), fp_TableContainer::mapXYToPosition(), fp_Page::mapXYToPosition(), mapXYToPosition(), and s_doFormatImageDlg().
UT_sint32 fp_VerticalContainer::getY | ( | void | ) | const [virtual] |
Get container's Y position.
Implements fp_ContainerObject.
Reimplemented in fp_EndnoteContainer, and fp_FrameContainer.
References FL_CONTAINER_DOCSECTION, fl_ContainerLayout::getContainerType(), fp_ContainerObject::getContainerType(), fl_ContainerLayout::getDocSectionLayout(), fp_ContainerObject::getSectionLayout(), fl_DocSectionLayout::getTopMargin(), getView(), m_iY, and VIEW_PRINT.
Referenced by fp_CellContainer::_clear(), fp_TableContainer::_drawBoundaries(), fp_CellContainer::_drawBoundaries(), fp_TableContainer::_drawBrokenBoundaries(), fp_CellContainer::_getBrokenRect(), AP_LeftRuler::_getCellMarkerRects(), FV_View::_getMouseContext(), FV_View::_moveInsPtNextPrevLine(), fp_TOCContainer::adjustBrokenTOCs(), fp_TableContainer::breakCellsAt(), fp_TOCContainer::clearScreen(), fp_CellContainer::clearScreen(), fp_AnnotationContainer::clearScreen(), fp_FootnoteContainer::clearScreen(), fp_TableContainer::containsAnnotations(), fp_CellContainer::containsAnnotations(), fp_TableContainer::containsFootnoteReference(), fp_CellContainer::containsFootnoteReference(), fp_TableContainer::deleteBrokenAfter(), fp_CellContainer::deleteBrokenAfter(), fp_CellContainer::doesOverlapBrokenTable(), fl_TableLayout::doSimpleChange(), fp_CellContainer::doVertAlign(), fp_CellContainer::draw(), fp_Page::draw(), fp_AnnotationContainer::draw(), fp_FootnoteContainer::draw(), fp_CellContainer::drawBroken(), fp_TableContainer::getAnnotationContainers(), fp_CellContainer::getAnnotationContainers(), fp_FrameContainer::getBlocksAroundFrame(), fp_CellContainer::getBrokenTable(), fp_CellContainer::getCellY(), fp_TableContainer::getFootnoteContainers(), fp_CellContainer::getFootnoteContainers(), fp_CellContainer::getLeftTopOffsets(), getOffsets(), getScreenOffsets(), fp_CellContainer::getScreenPositions(), fp_CellContainer::getSpannedHeight(), fp_TableContainer::isInBrokenTable(), fp_TableContainer::layout(), fp_CellContainer::layout(), fp_Column::layout(), fp_TableContainer::mapXYToPosition(), fp_Page::mapXYToPosition(), mapXYToPosition(), fp_TOCContainer::setY(), fp_TableContainer::setY(), fp_TOCContainer::VBreakAt(), fp_TableContainer::VBreakAt(), fp_CellContainer::VBreakAt(), fp_CellContainer::wantCellVBreakAt(), and fp_TableContainer::wantVBreakAtNoFootnotes().
UT_sint32 fp_VerticalContainer::getY | ( | GR_Graphics * | pG | ) | const |
Get container's Y position. This version checks for a mismatch between view mode and if we're printing.
References GR_Graphics::DGP_SCREEN, fp_ContainerObject::getSectionLayout(), getView(), m_iY, GR_Graphics::queryProperties(), and VIEW_PRINT.
UT_sint32 fp_VerticalContainer::getYoffsetFromTable | ( | const fp_Container * | pT, | |
const fp_Container * | pCell, | |||
const fp_ContainerObject * | pCon | |||
) | const |
This method returns the vertical offset due to a table broken across more than 1 page.
References fp_Container::getNext(), fp_TableContainer::getYBreak(), and fp_TableContainer::isInBrokenTable().
Referenced by getOffsets(), and getScreenOffsets().
virtual fp_ContainerObject* fp_VerticalContainer::HBreakAt | ( | UT_sint32 | ) | [inline, virtual] |
Implements fp_ContainerObject.
Reimplemented in fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
bool fp_VerticalContainer::insertContainer | ( | fp_Container * | pNewContainer | ) |
Insert line at the front/top of the container
pNewContainer | Container |
References fp_ContainerObject::clearScreen(), fp_ContainerObject::getContainerType(), fp_ContainerObject::getDocSectionLayout(), fp_Container::insertConAt(), fp_Container::recalcMaxWidth(), fp_Container::setContainer(), UT_ASSERT, UT_return_val_if_fail, and xxx_UT_DEBUGMSG.
Referenced by fl_BlockLayout::_stuffAllRunsOnALine(), bumpContainers(), fl_BlockLayout::getNewContainer(), and FL_DocLayout::insertEndnoteContainer().
bool fp_VerticalContainer::insertContainerAfter | ( | fp_Container * | pNewContainer, | |
fp_Container * | pAfterContainer | |||
) |
Insert line in container after specified line
pNewContainer | Container to be inserted | |
pAfterContainer | After this line |
References fp_Container::addCon(), fp_ContainerObject::clearScreen(), fp_Container::countCons(), fp_Container::findCon(), fp_ContainerObject::getContainerType(), fp_ContainerObject::getDocSectionLayout(), fp_Container::insertConAt(), fp_Container::recalcMaxWidth(), fp_Container::setContainer(), UT_ASSERT, and UT_return_val_if_fail.
Referenced by fl_BlockLayout::getNewContainer(), fl_BlockLayout::getNextWrappedLine(), and FL_DocLayout::insertEndnoteContainer().
virtual bool fp_VerticalContainer::isHBreakable | ( | void | ) | [inline, virtual] |
Implements fp_ContainerObject.
Reimplemented in fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
virtual bool fp_VerticalContainer::isVBreakable | ( | void | ) | [inline, virtual] |
Implements fp_ContainerObject.
Reimplemented in fp_FootnoteContainer, fp_AnnotationContainer, fp_EndnoteContainer, fp_FrameContainer, fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
void fp_VerticalContainer::mapXYToPosition | ( | UT_sint32 | x, | |
UT_sint32 | y, | |||
PT_DocPosition & | pos, | |||
bool & | bBOL, | |||
bool & | bEOL, | |||
bool & | isTOC | |||
) | [virtual] |
Find document position from X and Y coordinates
x | X coordinate | |
y | Y coordinate |
pos | Document position | |
bBOL | True if position is at begining of line, otherwise false | |
bEOL | True if position is at end of line, otherwise false |
Implements fp_ContainerObject.
Reimplemented in fp_TableContainer, and fp_TOCContainer.
References fl_ContainerLayout::canContainPoint(), fp_Line::canContainPoint(), fp_Container::countCons(), FP_CONTAINER_CELL, FP_CONTAINER_COLUMN, FP_CONTAINER_TABLE, FP_CONTAINER_TOC, fp_Line::getBlock(), fp_CellContainer::getBrokenTable(), fp_Container::getContainer(), fp_ContainerObject::getContainerType(), fp_Page::getDocLayout(), fl_SectionLayout::getFirstBlock(), fl_BlockLayout::getFirstRun(), FL_DocLayout::getFirstSection(), fl_FrameLayout::getFrameType(), fp_ContainerObject::getHeight(), fp_CellContainer::getLeftAttach(), fp_Run::getLine(), fp_Line::getMaxWidth(), fp_Container::getNext(), fl_ContainerLayout::getNextBlockInDocument(), fp_Container::getNthCon(), fp_Container::getPage(), fl_ContainerLayout::getPosition(), fl_ContainerLayout::getPrevBlockInDocument(), fp_ContainerObject::getSectionLayout(), fp_Line::getX(), fp_ContainerObject::getX(), getX(), fp_Line::getY(), getY(), fp_ContainerObject::getY(), fp_TableContainer::getYBottom(), fp_Line::isSameYAsPrevious(), fp_Line::isWrapped(), fp_Line::mapXYToPosition(), fp_ContainerObject::mapXYToPosition(), fp_TableContainer::mapXYToPosition(), UT_ASSERT_HARMLESS, UT_MIN, UT_return_if_fail, UT_SHOULD_NOT_HAPPEN, and xxx_UT_DEBUGMSG.
Referenced by fp_TableContainer::mapXYToPosition(), and fp_Page::mapXYToPosition().
void fp_VerticalContainer::markDirtyOverlappingRuns | ( | const UT_Rect & | recScreen | ) | [virtual] |
Marks Dirty any runs that overlap the supplied rectangle. This rectangle is relative to the screen.
Implements fp_ContainerObject.
References fp_Container::countCons(), fp_Container::getNthCon(), getScreenRect(), UT_Rect::intersectsRect(), and fp_ContainerObject::markDirtyOverlappingRuns().
Referenced by fp_Page::markDirtyOverlappingRuns().
void fp_VerticalContainer::recalcMaxWidth | ( | bool | bDontClearIfNeeded = false |
) | [inline, virtual] |
void fp_VerticalContainer::removeAll | ( | void | ) |
remove all contains from this.
References fp_Container::countCons(), and fp_Container::deleteNthCon().
Referenced by fl_DocSectionLayout::format().
void fp_VerticalContainer::removeContainer | ( | fp_Container * | pContainer, | |
bool | bClear = false | |||
) |
Remove line from container
pContainer | Container | |
bClear | if true clear screen. |
References fp_ContainerObject::clearScreen(), fp_Container::countCons(), fp_Container::deleteNthCon(), fp_Container::findCon(), fp_ContainerObject::getContainerType(), fp_Container::setContainer(), UT_ASSERT, and xxx_UT_DEBUGMSG.
Referenced by fb_ColumnBreaker::_breakSection(), fl_BlockLayout::_removeLine(), fl_TOCLayout::collapse(), fl_CellLayout::collapse(), fl_TableLayout::collapse(), fl_DocSectionLayout::collapse(), and FL_DocLayout::removeEndnoteContainer().
virtual void fp_VerticalContainer::setAssignedScreenHeight | ( | UT_sint32 | ) | [inline, virtual] |
Implements fp_Container.
Reimplemented in fp_CellContainer.
void fp_VerticalContainer::setHeight | ( | UT_sint32 | iHeight | ) | [virtual] |
Set height
iHeight | Height of container |
Implements fp_ContainerObject.
Reimplemented in fp_FrameContainer, and fp_CellContainer.
References FP_CONTAINER_CELL, FP_CONTAINER_COLUMN, FP_CONTAINER_TABLE, FP_CONTAINER_TOC, fp_ContainerObject::getContainerType(), fp_Container::getFillType(), fp_ContainerObject::getGraphics(), fp_TOCContainer::getHeight(), fp_TableContainer::getHeight(), getMaxHeight(), fp_ContainerObject::getSectionLayout(), fp_TOCContainer::isThisBroken(), fp_TableContainer::isThisBroken(), m_iHeight, fg_FillType::setHeight(), fl_SectionLayout::setImageHeight(), UT_DEBUGMSG, and xxx_UT_DEBUGMSG.
Referenced by fl_TableLayout::doSimpleChange(), fp_HdrFtrContainer::fp_HdrFtrContainer(), fp_ShadowContainer::fp_ShadowContainer(), fp_TOCContainer::layout(), fp_EndnoteContainer::layout(), fp_AnnotationContainer::layout(), fp_FootnoteContainer::layout(), fp_HdrFtrContainer::layout(), fp_ShadowContainer::layout(), fp_Column::layout(), fp_TableContainer::setToAllocation(), fp_TOCContainer::VBreakAt(), and fp_TableContainer::VBreakAt().
void fp_VerticalContainer::setIntentionallyEmpty | ( | bool | b | ) | [inline] |
Set container's intentionally empty flag
virtual void fp_VerticalContainer::setLastWantedVBreak | ( | UT_sint32 | ) | [inline, virtual] |
Reimplemented in fp_TableContainer, and fp_TOCContainer.
Referenced by fb_ColumnBreaker::_checkVBreakableContainer().
void fp_VerticalContainer::setMaxHeight | ( | UT_sint32 | iMaxHeight | ) | [virtual] |
Set maximum height
iMaxHeight | Maximum height of container |
References m_iMaxHeight.
Referenced by fp_Page::_reformatColumns(), fl_TableLayout::doSimpleChange(), fp_ShadowContainer::fp_ShadowContainer(), fp_TableContainer::setToAllocation(), fp_CellContainer::setToAllocation(), and fp_Page::TopBotMarginChanged().
void fp_VerticalContainer::setWidth | ( | UT_sint32 | iWidth | ) | [virtual] |
Set width
iWidth | Width of container |
Implements fp_ContainerObject.
Reimplemented in fp_CellContainer.
References FP_CONTAINER_COLUMN, fp_ContainerObject::getContainerType(), fp_Container::getFillType(), fp_ContainerObject::getGraphics(), fp_ContainerObject::getSectionLayout(), m_iWidth, fl_SectionLayout::setImageWidth(), and fg_FillType::setWidth().
Referenced by fl_AnnotationLayout::_createAnnotationContainer(), fl_EndnoteLayout::_createEndnoteContainer(), fl_FootnoteLayout::_createFootnoteContainer(), fl_FrameLayout::_createFrameContainer(), fl_TOCLayout::_createTOCContainer(), fp_Page::_reformatColumns(), fl_TableLayout::createTableContainer(), fp_HdrFtrContainer::fp_HdrFtrContainer(), fp_ShadowContainer::fp_ShadowContainer(), fp_TOCContainer::setContainer(), fp_TableContainer::setContainer(), and fp_TableContainer::setToAllocation().
void fp_VerticalContainer::setX | ( | UT_sint32 | iX, | |
bool | bDontClearIfNeeded = false | |||
) | [virtual] |
Set X position of container
iX | New X position |
Before the postition of the container is changed, its content is first cleared from the screen.
Implements fp_ContainerObject.
References clearScreen(), and m_iX.
Referenced by fp_Page::_reformatAnnotations(), fp_Page::_reformatColumns(), fp_Page::_reformatFootnotes(), fp_TableContainer::layout(), fl_BlockLayout::setFramesOnPage(), fp_CellContainer::setToAllocation(), and fp_Page::updateColumnX().
void fp_VerticalContainer::setY | ( | UT_sint32 | iY | ) | [virtual] |
Set Y position of container
iY | New Y position |
Before the postition of the container is changed, its content is first cleared from the screen.
Implements fp_ContainerObject.
Reimplemented in fp_AnnotationContainer, fp_EndnoteContainer, fp_TableContainer, and fp_TOCContainer.
References clearScreen(), and m_iY.
Referenced by fp_Page::_reformatColumns(), fp_Page::_reformatFootnotes(), fl_TableLayout::doSimpleChange(), fp_CellContainer::doVertAlign(), fp_CellContainer::layout(), fl_BlockLayout::setFramesOnPage(), fp_Page::TopBotMarginChanged(), and fp_CellContainer::VBreakAt().
bool fp_VerticalContainer::validate | ( | void | ) |
virtual fp_ContainerObject* fp_VerticalContainer::VBreakAt | ( | UT_sint32 | ) | [inline, virtual] |
Implements fp_ContainerObject.
Reimplemented in fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
Referenced by fb_ColumnBreaker::_checkVBreakableContainer().
Implements fp_ContainerObject.
Reimplemented in fp_CellContainer, fp_TableContainer, and fp_TOCContainer.
Implements fp_ContainerObject.
Reimplemented in fp_TableContainer, and fp_TOCContainer.
Referenced by fb_ColumnBreaker::_checkVBreakableContainer().
bool fp_VerticalContainer::m_bIntentionallyEmpty [private] |
Set if this container is intentionally left empty
The breakSection function that does page layout sometimes decides to leave sections empty for one reason or another. This needs to be flagged, or fl_DocSectionLayout::deleteEmptyColumns will delete the container.
UT_sint32 fp_VerticalContainer::m_iHeight [private] |
Height of the container
Referenced by distanceFromPoint(), fl_FrameLayout::getFrameHeight(), fl_FrameLayout::setFrameHeight(), and setHeight().
Referenced by _getMaxContainerHeight(), and _setMaxContainerHeight().
UT_sint32 fp_VerticalContainer::m_iMaxHeight [private] |
Maximum height of the container
Referenced by _drawBoundaries(), and setMaxHeight().
UT_sint32 fp_VerticalContainer::m_iRedrawHeight [protected] |
Referenced by draw(), and fp_Column::layout().
UT_sint32 fp_VerticalContainer::m_iWidth [private] |
Width of the container
Referenced by _drawBoundaries(), distanceFromPoint(), fl_FrameLayout::getFrameWidth(), fl_FrameLayout::setFrameWidth(), and setWidth().
UT_sint32 fp_VerticalContainer::m_iX [private] |
X coordinate of container
Referenced by distanceFromPoint(), getX(), and setX().
UT_sint32 fp_VerticalContainer::m_iY [private] |
Y coordinate of container
Reimplemented in fp_EndnoteContainer.
Referenced by distanceFromPoint(), getY(), and setY().