LibreOffice Module sw (master) 1
|
#include <swtypes.hxx>
#include <frameformats.hxx>
#include <BorderCacheOwner.hxx>
#include "frame.hxx"
#include "txtfrm.hxx"
#include "swcache.hxx"
#include <swatrset.hxx>
Go to the source code of this file.
Classes | |
class | sw::FlyCreationSuppressor |
class | SwFrameNotify |
class | SwLayNotify |
class | SwFlyNotify |
class | SwContentNotify |
class | SwBorderAttrs |
class | SwBorderAttrAccess |
class | SwOrderIter |
class | StackHack |
class | SwDeletionChecker |
helper class to check if a frame has been deleted during an operation WARNING! This should only be used as a last and desperate means to make the code robust. More... | |
Namespaces | |
namespace | sw |
Dialog to specify the properties of date form field. | |
namespace | basegfx |
namespace | basegfx::utils |
Macros | |
#define | FAR_AWAY (SAL_MAX_INT32 - 20000) |
#define | GRFNUM_NO 0 |
#define | GRFNUM_YES 1 |
#define | GRFNUM_REPLACE 2 |
Functions | |
void | AppendObjs (const sw::FrameFormats< sw::SpzFrameFormat * > *pSpz, SwNodeOffset nIndex, SwFrame *pFrame, SwPageFrame *pPage, SwDoc *doc) |
void | AppendObjsOfNode (sw::FrameFormats< sw::SpzFrameFormat * > const *pTable, SwNodeOffset nIndex, SwFrame *pFrame, SwPageFrame *pPage, SwDoc *pDoc, std::vector< sw::Extent >::const_iterator const *pIter, std::vector< sw::Extent >::const_iterator const *pEnd, SwTextNode const *pFirstNode, SwTextNode const *pLastNode) |
void | RemoveHiddenObjsOfNode (SwTextNode const &rNode, std::vector< sw::Extent >::const_iterator const *pIter, std::vector< sw::Extent >::const_iterator const *pEnd, SwTextNode const *pFirstNode, SwTextNode const *pLastNode) |
bool | IsAnchoredObjShown (SwTextFrame const &rFrame, SwFormatAnchor const &rAnchor) |
void | AppendAllObjs (const sw::FrameFormats< sw::SpzFrameFormat * > *pSpzs, const SwFrame *pSib) |
void | DrawGraphic (const SvxBrushItem *, vcl::RenderContext &, const SwRect &rOrg, const SwRect &rOut, const sal_uInt8 nGrfNum=GRFNUM_NO, const bool bConsiderBackgroundTransparency=false) |
bool | DrawFillAttributes (const drawinglayer::attribute::SdrAllFillAttributesHelperPtr &rFillAttributes, const SwRect &rOriginalLayoutRect, const SwRegionRects &rPaintRegion, const basegfx::utils::B2DClipState &rClipState, vcl::RenderContext &rOut) |
void | paintGraphicUsingPrimitivesHelper (vcl::RenderContext &rOutputDevice, GraphicObject const &rGraphicObj, GraphicAttr const &rGraphicAttr, const basegfx::B2DHomMatrix &rGraphicTransform, const OUString &rName, const OUString &rTitle, const OUString &rDescription) |
void | paintGraphicUsingPrimitivesHelper (vcl::RenderContext &rOutputDevice, drawinglayer::primitive2d::Primitive2DContainer &rContent, const basegfx::B2DHomMatrix &rGraphicTransform, const OUString &rName, const OUString &rTitle, const OUString &rDescription) |
void | SwAlignRect (SwRect &rRect, const SwViewShell *pSh, const vcl::RenderContext *pRenderContext) |
Function <SwAlignRect(..)> is also used outside this file. More... | |
void | SwAlignGrfRect (SwRect *pGrfRect, const vcl::RenderContext &rOut) |
Method to pixel-align rectangle for drawing graphic object. More... | |
void | PaintCharacterBorder (const SwFont &rFont, const SwRect &rPaintArea, const bool bVerticalLayout, const bool bVerticalLayoutLRBT, const bool bJoinWithPrev, const bool bJoinWithNext) |
Paint border around a run of characters using frame painting code. More... | |
SwFlyFrame * | GetFlyFromMarked (const SdrMarkList *pLst, SwViewShell *pSh) |
SwFrame * | SaveContent (SwLayoutFrame *pLay, SwFrame *pStart=nullptr) |
void | RestoreContent (SwFrame *pSav, SwLayoutFrame *pParent, SwFrame *pSibling) |
void | InsertCnt_ (SwLayoutFrame *pLay, SwDoc *pDoc, SwNodeOffset nIndex, bool bPages=false, SwNodeOffset nEndIndex=SwNodeOffset(0), SwFrame *pPrv=nullptr, sw::FrameMode eMode=sw::FrameMode::New) |
void | MakeFrames (SwDoc *pDoc, SwNode &rSttIdx, SwNode &rEndIdx) |
SwTwips | CalcRowRstHeight (SwLayoutFrame *pRow) |
tools::Long | CalcHeightWithFlys (const SwFrame *pFrame) |
bool | sw::HasPageBreakBefore (SwPageFrame const &rPage) |
bool | sw::IsRightPageByNumber (SwRootFrame const &rLayout, sal_uInt16 nPageNum) |
SwPageFrame * | InsertNewPage (SwPageDesc &rDesc, SwFrame *pUpper, bool isRightPage, bool bFirst, bool bInsertEmpty, bool bFootnote, SwFrame *pSibling, bool bVeryFirstPage=false) |
void | RegistFlys (SwPageFrame *, const SwLayoutFrame *) |
void | Notify (SwFlyFrame *pFly, SwPageFrame *pOld, const SwRect &rOld, const SwRect *pOldRect=nullptr) |
Notify the background based on the difference between old and new rectangle. More... | |
void | Notify_Background (const SdrObject *pObj, SwPageFrame *pPage, const SwRect &rRect, const PrepareHint eHint, const bool bInva) |
const SwFrame * | GetVirtualUpper (const SwFrame *pFrame, const Point &rPos) |
Provides the Upper of an anchor in paragraph-bound objects. More... | |
bool | Is_Lower_Of (const SwFrame *pCurrFrame, const SdrObject *pObj) |
const SwFrame * | FindContext (const SwFrame *pFrame, SwFrameType nAdditionalContextTyp) |
provides the area of a frame in that no Fly from another area can overlap More... | |
bool | IsFrameInSameContext (const SwFrame *pInnerFrame, const SwFrame *pFrame) |
const SwFrame * | FindPage (const SwRect &rRect, const SwFrame *pPage) |
SwFrame * | GetFrameOfModify (const SwRootFrame *pLayout, sw::BroadcastingModify const &, SwFrameType const nFrameType, const SwPosition *pPos=nullptr, std::pair< Point, bool > const *pViewPosAndCalcFrame=nullptr) |
bool | IsExtraData (const SwDoc *pDoc) |
void | CalcContent (SwLayoutFrame *pLay, bool bNoColl=false) |
void | GetSpacingValuesOfFrame (const SwFrame &rFrame, SwTwips &onLowerSpacing, SwTwips &onLineSpacing, bool &obIsLineSpacingProportional, bool bIdenticalStyles) |
method to determine the spacing values of a frame More... | |
const SwContentFrame * | GetCellContent (const SwLayoutFrame &rCell_) |
method to get the content of the table cell More... | |
Variables | |
constexpr tools::Long | BROWSE_HEIGHT = 56700 * 10 |
bool | bObjsDirect |
bool | bSetCompletePaintOnInvalidate |
#define FAR_AWAY (SAL_MAX_INT32 - 20000) |
Definition at line 53 of file frmtool.hxx.
#define GRFNUM_NO 0 |
Definition at line 55 of file frmtool.hxx.
#define GRFNUM_REPLACE 2 |
Definition at line 57 of file frmtool.hxx.
#define GRFNUM_YES 1 |
Definition at line 56 of file frmtool.hxx.
void AppendAllObjs | ( | const sw::FrameFormats< sw::SpzFrameFormat * > * | pSpzs, |
const SwFrame * | pSib | ||
) |
Definition at line 1382 of file frmtool.cxx.
References SwNode::GetDoc(), SwFrame::getRootFrame(), SwDoc::IsInHeaderFooter(), and sw::FrameFormats< value_type >::size().
Referenced by InsertCnt_(), MakeFrames(), UnHide(), and sw::UpdateFramesForRemoveDeleteRedline().
void AppendObjs | ( | const sw::FrameFormats< sw::SpzFrameFormat * > * | pSpz, |
SwNodeOffset | nIndex, | ||
SwFrame * | pFrame, | ||
SwPageFrame * | pPage, | ||
SwDoc * | doc | ||
) |
Definition at line 1279 of file frmtool.cxx.
References AppendObjsOfNode(), SwNode::GetIndex(), SwTextFrame::GetMergedPara(), SwNode::GetNodes(), SwNode::GetRedlineMergeFlag(), i, SwFrame::IsTextFrame(), nIndex, and SwNode::NonFirst.
Referenced by InsertCnt_(), and SwTabFrame::Split().
void AppendObjsOfNode | ( | sw::FrameFormats< sw::SpzFrameFormat * > const * | pTable, |
SwNodeOffset | nIndex, | ||
SwFrame * | pFrame, | ||
SwPageFrame * | pPage, | ||
SwDoc * | pDoc, | ||
std::vector< sw::Extent >::const_iterator const * | pIter, | ||
std::vector< sw::Extent >::const_iterator const * | pEnd, | ||
SwTextNode const * | pFirstNode, | ||
SwTextNode const * | pLastNode | ||
) |
Definition at line 1233 of file frmtool.cxx.
References AppendObj(), SwFormat::GetAnchor(), SwNode::GetAnchoredFlys(), SwFormatAnchor::GetAnchorNode(), SwDoc::GetNodes(), IsShown(), and nIndex.
Referenced by AddRemoveFlysForNode(), and AppendObjs().
void CalcContent | ( | SwLayoutFrame * | pLay, |
bool | bNoColl = false |
||
) |
Definition at line 1550 of file fly.cxx.
Referenced by SwFlyFreeFrame::CheckClip(), SwSectionFrame::CheckClipping(), SwSectionFrame::Format(), SwLayoutFrame::FormatWidthCols(), and SAL_LOPLUGIN_ANNOTATE().
tools::Long CalcHeightWithFlys | ( | const SwFrame * | pFrame | ) |
Definition at line 4208 of file tabfrm.cxx.
References FAR_AWAY, SwContentFrame::FindMaster(), SwFrame::FindNextCnt(), SwFrame::FindPageFrame(), IDocumentSettingAccess::get(), SwFormat::GetAnchor(), SwFormatAnchor::GetAnchorId(), SwRectFnSet::GetBottom(), SwFrame::GetDrawObjs(), SwFormat::GetFollowTextFlow(), SwPageFrame::GetFormatPage(), SwFrameAreaDefinition::getFrameArea(), SwFormat::GetFrameSize(), SwRectFnSet::GetHeight(), SwFormatFrameSize::GetHeightPercent(), SwFormat::getIDocumentSettingAccess(), SwFormat::GetOpaque(), SwPageFrame::GetPhyPageNum(), SwFrame::GetPrev(), SwFormat::GetSurround(), SwRectFnSet::GetTop(), SfxBoolItem::GetValue(), SfxEnumItem< typename EnumT >::GetValue(), SwFrame::IsInTab(), SwFrame::IsPageFrame(), SwFrame::IsSctFrame(), SwFrame::IsTextFrame(), SwRectFnSet::IsVert(), USE_FORMER_TEXT_WRAPPING, and SwRectFnSet::YDiff().
Referenced by lcl_CalcCellRstHeight(), and lcl_CalcMinCellHeight().
SwTwips CalcRowRstHeight | ( | SwLayoutFrame * | pRow | ) |
Definition at line 3735 of file frmtool.cxx.
References SwFrame::GetNext(), SwFrame::IsLayoutFrame(), lcl_CalcCellRstHeight(), LONG_MAX, SwLayoutFrame::Lower(), and min().
Referenced by lcl_CalcCellRstHeight(), lcl_SetOtherLineHeight(), lcl_SetSelLineHeight(), SetLineHeight(), and SwTable::SetRowHeight().
bool DrawFillAttributes | ( | const drawinglayer::attribute::SdrAllFillAttributesHelperPtr & | rFillAttributes, |
const SwRect & | rOriginalLayoutRect, | ||
const SwRegionRects & | rPaintRegion, | ||
const basegfx::utils::B2DClipState & | rClipState, | ||
vcl::RenderContext & | rOut | ||
) |
Definition at line 1734 of file paintfrm.cxx.
References SwRect::Bottom(), drawinglayer::processor2d::createProcessor2DFromOutputDevice(), basegfx::fTools::equalZero(), basegfx::Range2D< typename TYPE, typename TRAITS >::expand(), basegfx::utils::B2DClipState::getClipPoly(), basegfx::Range2D< typename TYPE, typename TRAITS >::getHeight(), OutputDevice::GetInverseViewTransformation(), basegfx::B2DRange::getMaximum(), basegfx::B2DRange::getMinimum(), SwRegionRects::GetOrigin(), OutputDevice::GetViewTransformation(), basegfx::Range2D< typename TYPE, typename TRAITS >::getWidth(), SvtOptionsDrawinglayer::IsAntiAliasing(), basegfx::Range2D< typename TYPE, typename TRAITS >::isEmpty(), utl::ConfigManager::IsFuzzing(), SwRect::Left(), SwRect::Right(), drawinglayer::geometry::ViewInformation2D::setViewport(), drawinglayer::geometry::ViewInformation2D::setViewTransformation(), and SwRect::Top().
Referenced by lcl_ClearArea(), and SwFrame::PaintSwFrameBackground().
void DrawGraphic | ( | const SvxBrushItem * | pBrush, |
vcl::RenderContext & | rOutDev, | ||
const SwRect & | rOrg, | ||
const SwRect & | rOut, | ||
const sal_uInt8 | nGrfNum = GRFNUM_NO , |
||
const bool | bConsiderBackgroundTransparency = false |
||
) |
init variable <bGrfBackgrdAlreadDrawn> to indicate, if background of graphic is already drawn or not.
Definition at line 1823 of file paintfrm.cxx.
References aGlobalRetoucheColor, SwRect::Bottom(), vcl::CLIPREGION, COL_TRANSPARENT(), SwRect::Contains(), Default, Graphic::DrawEx(), OutputDevice::DrawRect(), GraphicObject::DrawTiled(), OutputDevice::DrawTransparent(), ePos, vcl::FILLCOLOR, Color::GetAlpha(), GraphicAttr::GetAlpha(), GraphicObject::GetAttr(), SvxBrushItem::GetColor(), SwViewShell::GetDoc(), OutputDevice::GetDrawMode(), OutputDevice::GetFillColor(), OutputDevice::GetFont(), SvxBrushItem::GetGraphic(), SvxBrushItem::GetGraphicObject(), SvxBrushItem::GetGraphicPos(), GetGraphicSizeTwip(), StyleSettings::GetHighContrastMode(), SfxObjectShell::GetMedium(), SfxMedium::GetName(), SwDoc::GetPersist(), SwViewShell::GetReplacementBitmap(), Color::GetRGBColor(), Application::GetSettings(), AllSettings::GetStyleSettings(), Graphic::GetType(), SwViewShell::GetViewOptions(), GPOS_AREA, GPOS_LB, GPOS_LM, GPOS_LT, GPOS_MB, GPOS_MM, GPOS_MT, GPOS_NONE, GPOS_RB, GPOS_RM, GPOS_RT, GPOS_TILED, gProp, GRFNUM_NO, GRFNUM_REPLACE, SwRect::HasArea(), SfxObjectShell::HasName(), Size::Height(), SwRect::Height(), i, tools::PolyPolygon::Insert(), OutputDevice::IntersectClipRegion(), SwRect::Intersection(), SwViewOption::IsGraphic(), Graphic::IsSupportedGraphic(), Color::IsTransparent(), GraphicAttr::IsTransparent(), GraphicObject::IsTransparent(), lcl_DrawGraphic(), lcl_DrawGraphicBackground(), SwRect::Left(), vcl::LINECOLOR, SwRect::Overlaps(), OutputDevice::Pop(), SwRect::Pos(), OutputDevice::Push(), SwRect::Right(), OutputDevice::SetDrawMode(), OutputDevice::SetFillColor(), OutputDevice::SetLineColor(), SwRect::SSize(), SwRect::SVRect(), SwAlignRect(), SwRect::Top(), Transparent, Size::Width(), SwRect::Width(), Point::X(), and Point::Y().
Referenced by lcl_ClearArea(), SwGrfNumPortion::Paint(), and SwFrame::PaintSwFrameBackground().
const SwFrame * FindContext | ( | const SwFrame * | pFrame, |
SwFrameType | nAdditionalContextTyp | ||
) |
provides the area of a frame in that no Fly from another area can overlap
Definition at line 3654 of file frmtool.cxx.
References Cell, Fly, Footer, Ftn, FtnCont, SwFrame::GetType(), SwFrame::GetUpper(), Header, Root, Row, and Tab.
Referenced by objectpositioning::SwAnchoredObjectPosition::AdjustHoriRelPosForDrawAside(), objectpositioning::SwAnchoredObjectPosition::DrawAsideFly(), SwTextFly::GetTop(), and IsFrameInSameContext().
Definition at line 3751 of file frmtool.cxx.
References SwFrameAreaDefinition::getFrameArea(), SwRootFrame::GetPageAtPos(), SwFrame::GetUpper(), SwRect::Overlaps(), SwRect::SSize(), and SwRect::TopLeft().
Referenced by FindAnchor(), lcl_NotifyBackgroundOfObj(), and SwFlyAtContentFrame::SetAbsPos().
const SwContentFrame * GetCellContent | ( | const SwLayoutFrame & | rCell | ) |
method to get the content of the table cell
Content from any nested tables will be omitted. Note: line spacing value is only determined for text frames
rCell_ | input parameter - the cell which should be searched for content. |
return pointer to the found content frame or 0
method to get the content of the table cell
Definition at line 3997 of file frmtool.cxx.
References SwLayoutFrame::ContainsContent(), SwTabFrame::FindLastContentOrTable(), SwFrame::FindNextCnt(), SwFrame::FindTabFrame(), and SwLayoutFrame::IsAnLower().
Referenced by SwDoc::GetTabRows(), SwFEShell::SelTableRowCol(), and SwDoc::SetTabRows().
SwFlyFrame * GetFlyFromMarked | ( | const SdrMarkList * | pLst, |
SwViewShell * | pSh | ||
) |
Definition at line 109 of file feshview.cxx.
References SwViewShellImp::GetDrawView(), SdrMarkList::GetMark(), SdrMarkList::GetMarkCount(), SdrMarkView::GetMarkedObjectList(), SdrMark::GetMarkedSdrObj(), SwViewShell::HasDrawView(), and SwViewShell::Imp().
Referenced by SwFEShell::EndMark(), SwFlyFrame::FinitDrawObj(), SwFEShell::GetAnyCurRect(), SwFEShell::GetSelFrameType(), SwNoTextFrame::ImplPaintPictureGraphic(), SwFEShell::IsFrameSelected(), SwFEShell::SelectionToBottom(), SwFEShell::SelectionToTop(), SwFEShell::SelectObj(), and SwFEShell::SelFlyGrabCursor().
SwFrame * GetFrameOfModify | ( | const SwRootFrame * | pLayout, |
sw::BroadcastingModify const & | rMod, | ||
SwFrameType const | nFrameType, | ||
const SwPosition * | pPos = nullptr , |
||
std::pair< Point, bool > const * | pViewPosAndCalcFrame = nullptr |
||
) |
pPos | Document model position; for a text frame, the returned frame will be one containing this position. |
pViewPosAndCalcFrame | First is a point in the document view; the returned frame will be the one with the minimal distance to this point. To get the first frame in the document, pass in a default-initialized Point with coordinates 0,0. Second indicates whether the frames should be formatted before retrieving their position for the test; this cannot be done by every caller so use with care! |
Definition at line 3813 of file frmtool.cxx.
References a, SwRect::Center(), SwRect::Contains(), FAR_AWAY, SwIterator< TElementType, TSource, eMode >::First(), Fly, SwObjectFormatter::FormatObj(), SwAnchoredObject::GetAnchorFrame(), SwRootFrame::GetCurrShell(), SwFrameAreaDefinition::getFrameArea(), SwViewShell::GetOut(), SwFrame::getRootFrame(), Point::getX(), Point::getY(), sw::ClientIteratorBase::IsChanged(), SwFrame::IsTextFrame(), SwIterator< TElementType, TSource, eMode >::Next(), and SwRect::Pos().
Referenced by SwEnhancedPDFExportHelper::EnhancedPDFExport(), SwFrameFormat::FindLayoutRect(), SwContentNode::FindLayoutRect(), SwContentNode::FindPageFrameRect(), SwFrameFormat::FindRealSdrObject(), SwNode2LayImpl::GetFrame(), SwFlyFrameFormat::GetFrame(), SwContentNode::getLayoutFrame(), and lcl_GetFrameOfNode().
void GetSpacingValuesOfFrame | ( | const SwFrame & | rFrame, |
SwTwips & | onLowerSpacing, | ||
SwTwips & | onLineSpacing, | ||
bool & | obIsLineSpacingProportional, | ||
bool | bIdenticalStyles | ||
) |
method to determine the spacing values of a frame
#i28701# Values only provided for flow frames (table, section or text frames) Note: line spacing value is only determined for text frames #i102458# Add output parameter <obIsLineSpacingProportional>
rFrame | input parameter - frame, for which the spacing values are determined. |
onPrevLowerSpacing | output parameter - lower spacing of the frame in SwTwips |
onPrevLineSpacing | output parameter - line spacing of the frame in SwTwips |
obIsLineSpacingProportional | |
bIdenticalStyles | true if the styles of the actual and the next paragraphs (text-frames) are the same |
OD 2004-03-10 #i28701# OD 2009-08-28 #i102458# Add output parameter <obIsLineSpacingProportional>
Definition at line 3961 of file frmtool.cxx.
References SwFrame::GetAttrSet(), SvxULSpaceItem::GetContext(), SvxULSpaceItem::GetLower(), SwAttrSet::GetULSpace(), SwFrame::IsFlowFrame(), and SwFrame::IsTextFrame().
Provides the Upper of an anchor in paragraph-bound objects.
If the latter is a chained border or a footnote, the "virtual" Upper might be returned.
Definition at line 3590 of file frmtool.cxx.
References SwRect::Contains(), SwFrame::FindFlyFrame(), SwFootnoteFrame::GetFollow(), SwFrameAreaDefinition::getFrameArea(), SwFlyFrame::GetNextLink(), SwFrame::GetUpper(), SwFrame::IsFootnoteFrame(), and SwFrame::IsTextFrame().
Referenced by SwTextFly::GetTop(), Is_Lower_Of(), and IsFrameInSameContext().
void InsertCnt_ | ( | SwLayoutFrame * | pLay, |
SwDoc * | pDoc, | ||
SwNodeOffset | nIndex, | ||
bool | bPages = false , |
||
SwNodeOffset | nEndIndex = SwNodeOffset(0) , |
||
SwFrame * | pPrv = nullptr , |
||
sw::FrameMode | eMode = sw::FrameMode::New |
||
) |
Definition at line 1491 of file frmtool.cxx.
References AppendAllObjs(), AppendObjs(), IDocumentTimerAccess::BlockIdling(), bObjsDirect, SwSection::CalcHiddenFlag(), SwFrame::CheckDirChange(), SwLayoutCache::ClearImpl(), SwLayoutCache::CompareLayout(), SwLayoutFrame::ContainsContent(), SwFrame::Cut(), SwFrame::DestroyFrame(), eMode, sw::FrameFormats< value_type >::empty(), SwNode::EndOfSectionIndex(), SwFrame::FindFlyFrame(), SwTabFrame::FindMaster(), SwFrame::FindNextCnt(), SwFrame::FindPageFrame(), SwFrame::FindPrevCnt(), SwFrame::FindSctFrame(), SwTable::GCLines(), SwRootFrame::GetCurrShell(), SwSection::GetFormat(), SwDoc::getIDocumentRedlineAccess(), SwDoc::getIDocumentTimerAccess(), SwViewShell::GetLayout(), SwDoc::GetLayoutCache(), SwContentNode::getLayoutFrame(), SwTextFrame::GetMergedPara(), SwFrame::GetNext(), SwFrame::GetNextLayoutLeaf(), SwPosition::GetNode(), SwDoc::GetNodes(), SwNode::GetNodes(), SwFrame::GetPrev(), IDocumentRedlineAccess::GetRedline(), SwNode::GetRedlineMergeFlag(), SwFrame::getRootFrame(), SwSectionFrame::GetSection(), SwSectionNode::GetSection(), SwSectionFormat::GetSectionNode(), SwActualSection::GetSectionNode(), SwDoc::GetSpzFrameFormats(), SwTableNode::GetTable(), SwNode::GetTextNode(), SwTextFrame::GetTextNodeFirst(), SwRangeRedline::GetType(), SwFrame::GetUpper(), SwRootFrame::HasMergedParas(), SwNode::Hidden, SwFrame::ImplFindFootnoteFrame(), Init(), SwFrame::InsertBehind(), SwViewShell::InvalidateAccessibleParaFlowRelation(), SwPageFrame::InvalidateContent(), SwPageFrame::InvalidateFlyContent(), SwFrame::InvalidateInfFlags(), SwFrame::InvalidatePage(), SwRootFrame::IsAnyShellAccessible(), SwRootFrame::IsCallbackActionEnabled(), SwFrame::IsColumnFrame(), SwNode::IsContentNode(), SwNode::IsCreateFrameWhenHidingRedlines(), SwNode::IsEndNode(), SwRootFrame::IsHideRedlines(), SwViewShell::IsInConstructor(), SwFrame::IsInFly(), SwFrame::IsInFootnote(), SwFrame::IsInSct(), SwFrame::IsInTab(), SwFrame::IsLayoutFrame(), SwFrame::IsSctFrame(), SwNode::IsSectionNode(), SwNode::IsStartNode(), SwNode::IsTableNode(), SwFrame::IsTextFrame(), SwNode::IsTextNode(), lcl_SetPos(), Lower, SwLayoutFrame::Lower(), SwTableNode::MakeFrame(), SwSectionNode::MakeFrame(), SwContentNode::MakeFrame(), sw::MakeTextFrame(), nIndex, SwNode::NonFirst, SwFrame::Paste(), SwTextFrame::Prepare(), QuoVadis, RegistFlys(), SwFrame::RemoveFromLayout(), SAL_WARN, SwRootFrame::SetCallbackActionEnabled(), SwActualSection::SetUpper(), SwPaM::Start(), SwNode::StartOfSectionNode(), SwFlyStartNode, SwTable::SwitchFormulasToInternalRepresentation(), and IDocumentTimerAccess::UnblockIdling().
Referenced by SwFootnoteBossFrame::AppendFootnote(), SwTextFrame::ConnectFootnote(), SwRootFrame::Init(), SwFlyFrame::InsertCnt(), MakeFrames(), SwNode2LayImpl::RestoreUpperFrames(), SwCellFrame::SwCellFrame(), SwHeadFootFrame::SwHeadFootFrame(), and SwFlyFrame::UnchainFrames().
SwPageFrame * InsertNewPage | ( | SwPageDesc & | rDesc, |
SwFrame * | pUpper, | ||
bool | isRightPage, | ||
bool | bFirst, | ||
bool | bInsertEmpty, | ||
bool | bFootnote, | ||
SwFrame * | pSibling, | ||
bool | bVeryFirstPage = false |
||
) |
Definition at line 3136 of file frmtool.cxx.
References SwRootFrame::AssertPageFlys(), bFootnote, SwDoc::GetEmptyPageFormat(), SwPageDesc::GetFirstLeft(), SwPageDesc::GetFirstMaster(), SwFormat::GetFooter(), GetFormat(), SwFormat::GetHeader(), SwPageDesc::GetLeft(), SwPageDesc::GetLeftFormat(), SwFormat::GetLRSpace(), SwPageDesc::GetMaster(), SwFrame::GetNext(), SwFrame::GetPrev(), SwPageDesc::GetRightFormat(), SwPageDesc::IsFirstShared(), SwFrame::IsRootFrame(), Lower, SwPageFrame::Paste(), SwPageFrame::PreparePage(), SAL_INFO, and SwFormat::SetFormatAttr().
Referenced by SwFootnoteBossFrame::AppendFootnote(), SwLayHelper::CheckInsertPage(), and SwRootFrame::Init().
Definition at line 3622 of file frmtool.cxx.
References SwAnchoredObject::GetAnchorFrame(), SdrObject::GetCurrentBoundRect(), SwFrameAreaDefinition::getFrameArea(), SwFrame::GetUpper(), GetUserCall(), GetVirtualUpper(), SwFrame::IsFlyFrame(), SwRect::Pos(), and tools::Rectangle::TopLeft().
Referenced by SwTextFly::GetTop().
bool IsAnchoredObjShown | ( | SwTextFrame const & | rFrame, |
SwFormatAnchor const & | rAnchor | ||
) |
Definition at line 1330 of file frmtool.cxx.
References SwFormatAnchor::GetAnchorContentOffset(), SwFormatAnchor::GetAnchorId(), SwFormatAnchor::GetAnchorNode(), SwNode::GetIndex(), SwTextFrame::GetMergedPara(), SwNode::GetRedlineMergeFlag(), SwNode::Hidden, and IsShown().
Referenced by SwDrawContact::ConnectToLayout(), and SwFlyFrameFormat::MakeFrames().
bool IsExtraData | ( | const SwDoc * | pDoc | ) |
Definition at line 3913 of file frmtool.cxx.
References SwRedlineTable::empty(), SwDoc::GetEditShell(), SwDoc::getIDocumentRedlineAccess(), SwDoc::GetLineNumberInfo(), IDocumentRedlineAccess::GetRedlineTable(), SwViewShell::GetViewOptions(), SwLineNumberInfo::IsCountInFlys(), SwLineNumberInfo::IsPaintLineNumbers(), SwViewOption::IsShowOutlineContentVisibilityButton(), SwPostItHelper::NONE, and SW_MOD.
Referenced by SwEditShell::AcceptRedline(), SwViewShell::ImplEndAction(), SwRootFrame::PaintSwFrame(), SwEditShell::RejectRedline(), and SwLayAction::SwLayAction().
Definition at line 3668 of file frmtool.cxx.
References Cell, FindContext(), Fly, Footer, Ftn, FtnCont, SwFrameAreaDefinition::getFrameArea(), SwFrame::GetType(), SwFrame::GetUpper(), GetVirtualUpper(), Header, SwFrame::IsCellFrame(), SwFrame::IsFlyFrame(), None, SwRect::Pos(), Root, Row, and Tab.
Referenced by SwTextFly::GetTop().
Definition at line 2026 of file frmtool.cxx.
References AppendAllObjs(), bObjsDirect, SwFrame::CheckPageDescs(), SwFootnoteFrame::ColLock(), SwSectionFrame::ColLock(), SwFootnoteFrame::ColUnlock(), SwSectionFrame::ColUnlock(), SwLayoutFrame::ContainsAny(), SwLayoutFrame::ContainsContent(), SwSectionFrame::DelEmpty(), SwFrame::DestroyFrame(), eMode, sw::FrameFormats< value_type >::empty(), sw::Existing, SwFrame::FindColFrame(), SwFrame::FindFootnoteFrame(), SwFrame::FindPageFrame(), SwNodes::FindPrvNxtFrameNode(), SwFrame::FindSctFrame(), IDocumentLayoutAccess::GetCurrentLayout(), SwDoc::getIDocumentLayoutAccess(), SwNode::GetIndex(), SwFrame::GetIndNext(), SwFrame::GetNext(), SwDoc::GetNodes(), SwFrame::GetPrev(), SwFrame::getRootFrame(), SwSectionFrame::GetSection(), SwDoc::GetSpzFrameFormats(), SwFrame::GetUpper(), InsertCnt_(), SwFrame::IsCellFrame(), SwFrame::IsColLocked(), SwFrame::IsContentFrame(), SwFrame::IsInFootnote(), SwFrame::IsInSct(), SwFrame::IsSctFrame(), SwFrame::IsTabFrame(), sw::New, SwNode2Layout::NextFrame(), and SwRootFrame::RemoveFromList().
Referenced by sw::DocumentContentOperationsManager::CopyWithFlyInFly(), SwWrtShell::MakeOutlineContentVisible(), SwWrtShell::MakeOutlineLevelsVisible(), SwSectionNode::MakeOwnFrames(), SAL_LOPLUGIN_ANNOTATE(), SwUndoDelete::UndoImpl(), UnHideRedlines(), and sw::UpdateFramesForRemoveDeleteRedline().
void Notify | ( | SwFlyFrame * | pFly, |
SwPageFrame * | pOld, | ||
const SwRect & | rOld, | ||
const SwRect * | pOldRect = nullptr |
||
) |
Notify the background based on the difference between old and new rectangle.
Definition at line 3254 of file frmtool.cxx.
Referenced by SwFlyNotify::ImplDestroy().
void Notify_Background | ( | const SdrObject * | pObj, |
SwPageFrame * | pPage, | ||
const SwRect & | rRect, | ||
const PrepareHint | eHint, | ||
const bool | bInva | ||
) |
Definition at line 3412 of file frmtool.cxx.
References SwAnchoredObject::AnchorFrame(), SwRect::Bottom(), SwLayoutFrame::ContainsContent(), FAR_AWAY, SwFrame::FindFlyFrame(), SwFrame::FindFooterOrHeader(), SwFrame::FindTabFrame(), FlyFrameArrive, FlyFrameLeave, SwContact::GetAnchoredObj(), SwAnchoredObject::GetAnchorFrame(), SwRootFrame::GetCurrShell(), SwLayoutFrame::GetFormat(), SwFlyFrame::GetFormat(), SwFrameAreaDefinition::getFrameArea(), SwFormatHoriOrient::GetHoriOrient(), SwFormat::GetHoriOrient(), SdrObject::GetLastBoundRect(), SwContentFrame::GetNextContentFrame(), SdrObject::GetOrdNum(), SdrObject::GetOrdNumDirect(), SwFrame::GetPrev(), SwFormatHoriOrient::GetRelationOrient(), SwFrame::getRootFrame(), SwPageFrame::GetSortedObjs(), SwFormatSurround::GetSurround(), SwFormat::GetSurround(), SwFrame::GetUpper(), GetUserCall(), SwFormatVertOrient::GetVertOrient(), SwFormat::GetVertOrient(), SwFlyFrame::GetVirtDrawObj(), SwFrame::InvalidatePos(), SwFrame::InvalidatePrt(), SwFrame::InvalidateSize(), SwViewShell::InvalidateWindows(), SwLayoutFrame::IsAnLower(), SwFlyFrame::IsAutoPos(), SwFrame::IsCellFrame(), SwFrame::IsColumnFrame(), SwFlyFrame::IsFlyAtContentFrame(), SwFlyFrame::IsFlyLayFrame(), SwFrame::IsInFly(), SwFrame::IsInTab(), SwFlyFrame::IsLowerOf(), lcl_CheckFlowBack(), lcl_NotifyContent(), SwRect::Left(), SwLayoutFrame::Lower(), SwPostItHelper::NONE, SwRect::Overlaps(), SwRect::Right(), and SwRect::Top().
Referenced by SwTextFrame::Format(), SwLayAction::FormatContent(), lcl_NotifyBackgroundOfObj(), SwContact::MoveObjToInvisibleLayer(), SwContact::MoveObjToVisibleLayer(), SwAnchoredDrawObject::NotifyBackground(), SwFlyFreeFrame::NotifyBackground(), SwDrawContact::NotifyBackgroundOfAllVirtObjs(), and SwFlyAtContentFrame::SetAbsPos().
void PaintCharacterBorder | ( | const SwFont & | rFont, |
const SwRect & | rPaintArea, | ||
const bool | bVerticalLayout, | ||
const bool | bVerticalLayoutLRBT, | ||
const bool | bJoinWithPrev, | ||
const bool | bJoinWithNext | ||
) |
Paint border around a run of characters using frame painting code.
[in] | rFont | font object of actual text, which specify the border |
[in] | rPaintArea | rectangle area in which line portion takes place |
[in] | bVerticalLayout | corresponding text frame verticality |
[in] | bVerticalLayoutLRBT | corresponding text frame verticality (LRBT subset) |
[in] | bJoinWithPrev | leave border with which actual border joins to the previous portion |
[in] | bJoinWithNext | leave border with which actual border joins to the next portion |
Definition at line 5040 of file paintfrm.cxx.
References drawinglayer::primitive2d::Primitive2DContainer::append(), basegfx::utils::createScaleTranslateB2DHomMatrix(), o3tl::strong_int< typename UNDERLYING_TYPE, typename PHANTOM_TYPE >::get(), SwFont::GetAbsBottomBorder(), SwFont::GetAbsLeftBorder(), SwFont::GetAbsRightBorder(), SwFont::GetAbsShadowLocation(), SwFont::GetAbsTopBorder(), SvxShadowItem::GetLocation(), SwFont::GetOrientation(), SwFont::GetShadowColor(), SwFont::GetShadowWidth(), gProp, SwRect::Height(), lcl_PaintShadow(), SwRect::Left(), SwAlignRect(), SwRect::Top(), and SwRect::Width().
Referenced by SwTextPaintInfo::DrawBorder().
void paintGraphicUsingPrimitivesHelper | ( | vcl::RenderContext & | rOutputDevice, |
drawinglayer::primitive2d::Primitive2DContainer & | rContent, | ||
const basegfx::B2DHomMatrix & | rGraphicTransform, | ||
const OUString & | rName, | ||
const OUString & | rTitle, | ||
const OUString & | rDescription | ||
) |
Definition at line 945 of file notxtfrm.cxx.
References basegfx::B2DPolyPolygon::count(), vcl::Region::GetAsB2DPolyPolygon(), OutputDevice::GetClipRegion(), OutputDevice::IsClipRegion(), paintUsingPrimitivesHelper(), and basegfx::B2DRange::transform().
void paintGraphicUsingPrimitivesHelper | ( | vcl::RenderContext & | rOutputDevice, |
GraphicObject const & | rGraphicObj, | ||
GraphicAttr const & | rGraphicAttr, | ||
const basegfx::B2DHomMatrix & | rGraphicTransform, | ||
const OUString & | rName, | ||
const OUString & | rTitle, | ||
const OUString & | rDescription | ||
) |
Definition at line 915 of file notxtfrm.cxx.
References paintGraphicUsingPrimitivesHelper().
Referenced by SwNoTextFrame::ImplPaintPictureGraphic(), lcl_DrawGraphic(), and paintGraphicUsingPrimitivesHelper().
void RegistFlys | ( | SwPageFrame * | pPage, |
const SwLayoutFrame * | pLay | ||
) |
Definition at line 3238 of file frmtool.cxx.
References SwFrame::GetDrawObjs(), SwFrame::GetNext(), SwFrame::IsLayoutFrame(), lcl_Regist(), SwLayoutFrame::Lower(), and RegistFlys().
Referenced by SwFootnoteBossFrame::AppendFootnote(), SwLayHelper::CheckInsert(), InsertCnt_(), lcl_MakeObjs(), lcl_Regist(), SwFlyFrameFormat::MakeFrames(), SwPageFrame::PlaceFly(), SwPageFrame::PrepareFooter(), SwPageFrame::PrepareHeader(), SwPageFrame::PreparePage(), RegistFlys(), and SwNode2LayImpl::RestoreUpperFrames().
void RemoveHiddenObjsOfNode | ( | SwTextNode const & | rNode, |
std::vector< sw::Extent >::const_iterator const * | pIter, | ||
std::vector< sw::Extent >::const_iterator const * | pEnd, | ||
SwTextNode const * | pFirstNode, | ||
SwTextNode const * | pLastNode | ||
) |
Definition at line 1212 of file frmtool.cxx.
References SwNode::GetAnchoredFlys(), SwFormatAnchor::GetAnchorId(), SwFormatAnchor::GetAnchorNode(), SwNode::GetIndex(), and IsShown().
Referenced by AddRemoveFlysForNode().
void RestoreContent | ( | SwFrame * | pSav, |
SwLayoutFrame * | pParent, | ||
SwFrame * | pSibling | ||
) |
Definition at line 3035 of file frmtool.cxx.
Referenced by lcl_MoveRowContent().
SwFrame * SaveContent | ( | SwLayoutFrame * | pLay, |
SwFrame * | pStart = nullptr |
||
) |
Definition at line 2873 of file frmtool.cxx.
Referenced by lcl_MoveRowContent().
void SwAlignGrfRect | ( | SwRect * | pGrfRect, |
const vcl::RenderContext & | rOut | ||
) |
Method to pixel-align rectangle for drawing graphic object.
Because we are drawing graphics from the left-top-corner in conjunction with size coordinates, these coordinates have to be calculated at a pixel level. Thus, we convert the rectangle to pixel and then convert to left-top-corner and then get size of pixel rectangle back to logic. This calculation is necessary, because there's a different between the conversion from logic to pixel of a normal rectangle with its left-top- and right-bottom-corner and the same conversion of the same rectangle with left-top-corner and size.
NOTE: Call this method before each <GraphicObject.Draw(...)>
Definition at line 1241 of file paintfrm.cxx.
References tools::Rectangle::GetSize(), OutputDevice::LogicToPixel(), OutputDevice::PixelToLogic(), SwRect::Pos(), SwRect::SSize(), SwRect::SVRect(), and tools::Rectangle::TopLeft().
Referenced by lcl_DrawGraphic(), and SwNoTextFrame::PaintPicture().
void SwAlignRect | ( | SwRect & | rRect, |
const SwViewShell * | pSh, | ||
const vcl::RenderContext * | pRenderContext | ||
) |
Function <SwAlignRect(..)> is also used outside this file.
Correction: adjust rectangle on pixel level in order to make sure, that the border "leaves its original pixel", if it has to No prior adjustments for odd relation between pixel and twip
Definition at line 1135 of file paintfrm.cxx.
References SwRect::AddBottom(), SwRect::AddLeft(), SwRect::AddRight(), SwRect::AddTop(), SwRect::Bottom(), gProp, SwRect::HasArea(), SwRect::Height(), SwRect::Left(), pOut, SwRect::Right(), SwRect::SVRect(), SwRect::Top(), and SwRect::Width().
Referenced by SwTextPaintInfo::CalcRect(), SwTextFly::DrawFlyRect(), DrawGraphic(), SwFrame::GetBackgroundBrush(), SwPageFrame::GetBorderAndShadowBoundRect(), SwPageFrame::GetHorizontalShadowRect(), lcl_CalcBorderRect(), lcl_DrawGraphic(), SwPagePreviewLayout::MarkNewSelectedPage(), SwPagePreviewLayout::Paint(), SwPageFrame::PaintBorderAndShadow(), PaintCharacterBorder(), SwPageFrame::PaintNotesSidebar(), SwNoTextFrame::PaintPicture(), SwPagePreviewLayout::PaintSelectMarkAtPage(), SwLayoutFrame::PaintSubsidiaryLines(), SwColumnFrame::PaintSubsidiaryLines(), SwRootFrame::PaintSwFrame(), SwFrame::PaintSwFrameBackground(), SwFrame::PaintSwFrameShadowAndBorder(), SwPageFrame::RefreshExtraData(), and SwVisibleCursor::SetPosAndShow().
|
extern |
Definition at line 104 of file frmtool.cxx.
Referenced by InsertCnt_(), MakeFrames(), and SwHeadFootFrame::SwHeadFootFrame().
|
constexpr |
Definition at line 54 of file frmtool.hxx.
Referenced by SwFrame::AdjustNeighbourhood(), SwLayoutFrame::FormatWidthCols(), SwFootnoteBossFrame::GetVarSpace(), and SwPageFrame::MakeAll().
|
extern |
Definition at line 105 of file frmtool.cxx.
Referenced by SwContentNotify::ImplDestroy(), and SwFlyAtContentFrame::MakeAll().