LibreOffice Module sw (master)  1
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
SwLayAction Class Reference

The usage of LayAction is always the same: More...

#include <layact.hxx>

Collaboration diagram for SwLayAction:
[legend]

Public Member Functions

 SwLayAction (SwRootFrame *pRt, SwViewShellImp *pImp)
 
 ~SwLayAction ()
 
void SetIdle (bool bNew)
 
void SetCheckPages (bool bNew)
 
void SetBrowseActionStop (bool bNew)
 
void SetNextCycle (bool bNew)
 
bool IsWaitAllowed () const
 
bool IsNextCycle () const
 
bool IsInput () const
 
bool IsPaint () const
 
bool IsIdle () const
 
bool IsReschedule () const
 
bool IsPaintExtraData () const
 
bool IsInterrupt () const
 
VclInputFlags GetInputType () const
 
void SetPaint (bool bNew)
 
void SetComplete (bool bNew)
 
void SetStatBar (bool bNew)
 
void SetInputType (VclInputFlags nNew)
 
void SetCalcLayout (bool bNew)
 
void SetReschedule (bool bNew)
 
void SetWaitAllowed (bool bNew)
 
void SetAgain ()
 
void SetUpdateExpFields ()
 
void SetCheckPageNum (sal_uInt16 nNew)
 
void SetCheckPageNumDirect (sal_uInt16 nNew)
 
void Action (OutputDevice *pRenderContext)
 
void Reset ()
 
bool IsAgain () const
 
bool IsComplete () const
 
bool IsExpFields () const
 
bool IsCalcLayout () const
 
bool IsCheckPages () const
 
bool IsBrowseActionStop () const
 
bool IsActionInProgress () const
 
sal_uInt16 GetCheckPageNum () const
 
void CheckWaitCursor ()
 
void FormatLayoutFly (SwFlyFrame *)
 
void FormatFlyContent (const SwFlyFrame *)
 

Private Member Functions

void PaintContent (const SwContentFrame *, const SwPageFrame *, const SwRect &rOldRect, long nOldBottom)
 Depending of the type, the Content is output according to its changes, or the area to be outputted is registered with the region, respectively. More...
 
bool PaintWithoutFlys (const SwRect &, const SwContentFrame *, const SwPageFrame *)
 
bool PaintContent_ (const SwContentFrame *, const SwPageFrame *, const SwRect &)
 
bool FormatLayout (OutputDevice *pRenderContext, SwLayoutFrame *, bool bAddRect=true)
 
bool FormatLayoutTab (SwTabFrame *, bool bAddRect)
 
bool FormatContent (const SwPageFrame *pPage)
 
void FormatContent_ (const SwContentFrame *pContent, const SwPageFrame *pPage)
 
bool IsShortCut (SwPageFrame *&)
 
bool TurboAction ()
 
bool TurboAction_ (const SwContentFrame *)
 
void InternalAction (OutputDevice *pRenderContext)
 
bool RemoveEmptyBrowserPages ()
 
void CheckIdleEnd ()
 

Static Private Member Functions

static SwPageFrameCheckFirstVisPage (SwPageFrame *pPage)
 

Private Attributes

SwRootFramem_pRoot
 
SwViewShellImpm_pImp
 
const SwTabFramem_pOptTab
 
std::unique_ptr< SwWaitm_pWait
 
sal_uInt16 m_nPreInvaPage
 
std::clock_t m_nStartTicks
 
VclInputFlags m_nInputType
 
sal_uInt16 m_nEndPage
 
sal_uInt16 m_nCheckPageNum
 
bool m_bPaint
 
bool m_bComplete
 
bool m_bCalcLayout
 
bool m_bAgain
 
bool m_bNextCycle
 
bool m_bInput
 
bool m_bIdle
 
bool m_bReschedule
 
bool m_bCheckPages
 
bool m_bUpdateExpFields
 
bool m_bBrowseActionStop
 
bool m_bWaitAllowed
 
bool m_bPaintExtraData
 
bool m_bActionInProgress
 
bool mbFormatContentOnInterrupt
 
const SwPageFramem_pCurPage
 
sal_uInt16 m_nTabLevel
 
sal_uInt32 m_nCallCount
 

Detailed Description

The usage of LayAction is always the same:

  1. Generation of the LayAction object.
  2. Specifying the wanted behaviour via the Set-methods
  3. Calling Action()
  4. Soon after that the destruction of the object

The object registers at the SwViewShellImp in the ctor and deregisters not until the dtor! It's a typical stack object.

Definition at line 55 of file layact.hxx.

Constructor & Destructor Documentation

SwLayAction::SwLayAction ( SwRootFrame pRt,
SwViewShellImp pImp 
)
SwLayAction::~SwLayAction ( )

Definition at line 279 of file layact.cxx.

References m_pImp, SwViewShellImp::m_pLayAction, and m_pWait.

Member Function Documentation

void SwLayAction::Action ( OutputDevice pRenderContext)
SwPageFrame * SwLayAction::CheckFirstVisPage ( SwPageFrame pPage)
staticprivate
void SwLayAction::CheckIdleEnd ( )
inlineprivate
void SwLayAction::CheckWaitCursor ( )
bool SwLayAction::FormatContent ( const SwPageFrame pPage)
private
void SwLayAction::FormatContent_ ( const SwContentFrame pContent,
const SwPageFrame pPage 
)
private
void SwLayAction::FormatFlyContent ( const SwFlyFrame pFly)
bool SwLayAction::FormatLayout ( OutputDevice pRenderContext,
SwLayoutFrame pLay,
bool  bAddRect = true 
)
private

Definition at line 1179 of file layact.cxx.

References SwViewShell::AddPaintRect(), SwRect::Bottom(), SwFrame::Calc(), SwRegionRects::ChangeOrigin(), CheckWaitCursor(), SwViewOption::defGapBetweenPages, SwFootnoteBossFrame::FindFootnoteCont(), SwFrame::FindPageFrame(), FormatLayoutTab(), SwPageFrame::GetBorderAndShadowBoundRect(), SwPageFrame::GetBoundRect(), SwViewOption::getBrowseMode(), SwRootFrame::GetCurrShell(), SwFrameAreaDefinition::getFrameArea(), SwViewOption::GetGapBetweenPages(), SwFrame::GetNext(), SwFrame::GetPaintArea(), SwFrame::GetPrev(), SwRectFnSet::GetPrtBottom(), SwFrame::getRootFrame(), SwViewShellImp::GetShell(), SwFrame::GetUpper(), SwViewShell::GetViewOptions(), SwRect::Height(), i, IsAgain(), SwFrame::IsCompletePaint(), SwFrame::IsFootnoteFrame(), SwFrameAreaDefinition::isFrameAreaDefinitionValid(), SwFrame::IsLayoutFrame(), SwPageFrame::IsLeftShadowNeeded(), SwRootFrame::IsLeftToRightViewLayout(), SwFrame::IsPageBodyFrame(), SwFrame::IsPageFrame(), IsPaint(), SwViewShell::IsPaintLocked(), SwFrame::IsRetouche(), SwFrame::IsRetoucheFrame(), SwPageFrame::IsRightShadowNeeded(), SwFrame::IsSctFrame(), SwFrame::IsTabFrame(), SwRect::Left(), SwLayoutFrame::Lower(), m_nCallCount, m_nTabLevel, m_pCurPage, m_pImp, m_pRoot, SwFrame::OptCalc(), SwRect::Pos(), SwFrame::ResetCompletePaint(), SwFrame::ResetRetouche(), sw::sidebarwindows::RIGHT, SwRect::Right(), SwFrame::SetCompletePaint(), SwRectFnSet::SetTop(), SwPageFrame::SidebarPosition(), SwRect::Top(), and SwRect::Width().

Referenced by FormatLayoutFly(), FormatLayoutTab(), InternalAction(), and IsShortCut().

void SwLayAction::FormatLayoutFly ( SwFlyFrame pFly)
bool SwLayAction::FormatLayoutTab ( SwTabFrame pTab,
bool  bAddRect 
)
private
sal_uInt16 SwLayAction::GetCheckPageNum ( ) const
inline

Definition at line 175 of file layact.hxx.

References m_nCheckPageNum.

Referenced by SwFrame::InsertPage().

VclInputFlags SwLayAction::GetInputType ( ) const
inline

Definition at line 147 of file layact.hxx.

References m_nInputType.

Referenced by CheckIdleEnd().

void SwLayAction::InternalAction ( OutputDevice pRenderContext)
private

Definition at line 424 of file layact.cxx.

References SwRootFrame::AssertFlyPages(), SwRect::Bottom(), SwFrame::Calc(), CheckFirstVisPage(), CheckIdleEnd(), SwFrame::CheckPageDescs(), SwRootFrame::DeleteEmptySct(), SwLayouter::EndLoopControl(), FileInit, FormatContent(), FormatLayout(), SwObjectFormatter::FormatObjsAtFrame(), SwFormat::GetDoc(), SwViewShell::GetDoc(), SwDoc::GetDocShell(), SwViewShellImp::GetFirstVisPage(), SwLayoutFrame::GetFormat(), SwFrameAreaDefinition::getFrameArea(), SwFormat::getIDocumentLayoutAccess(), IDocumentLayoutAccess::GetLayouter(), SwFrame::GetNext(), SwPageFrame::GetPhyPageNum(), SwFrame::GetPrev(), SwViewShellImp::GetShell(), SwPageFrame::GetSortedObjs(), SwPageFrame::InvalidateContent(), SwPageFrame::InvalidateFlyContent(), SwPageFrame::InvalidateFlyInCnt(), SwPageFrame::InvalidateFlyLayout(), IsAgain(), SwRootFrame::IsAssertFlyPages(), IsBrowseActionStop(), IsComplete(), IsIdle(), IsInput(), IsInterrupt(), SwPageFrame::IsInvalid(), SwPageFrame::IsInvalidContent(), SwPageFrame::IsInvalidFly(), SwPageFrame::IsInvalidLayout(), IsNextCycle(), SwFrame::IsPageFrame(), IsShortCut(), SwRootFrame::IsSuperfluous(), SwLayouter::LoopControl(), SwLayoutFrame::Lower(), m_bAgain, m_bInput, m_nCheckPageNum, m_nEndPage, m_nPreInvaPage, m_pImp, m_pOptTab, m_pRoot, mbFormatContentOnInterrupt, NONE, PROTOCOL, SwRootFrame::RemoveSuperfluous(), SetCheckPages(), SwViewShellImp::SetFirstVisPageInvalid(), SetNextCycle(), SetProgressState(), SwLayouter::StartLoopControl(), SwRect::Top(), unlockPositionOfObjects(), USHRT_MAX, SwPageFrame::ValidateContent(), SwPageFrame::ValidateFlyContent(), SwPageFrame::ValidateFlyInCnt(), SwPageFrame::ValidateFlyLayout(), SwPageFrame::ValidateLayout(), SwViewShell::VisArea(), and XCHECKPAGE.

Referenced by Action().

bool SwLayAction::IsActionInProgress ( ) const
inline

Definition at line 173 of file layact.hxx.

References m_bActionInProgress.

bool SwLayAction::IsAgain ( ) const
inline
bool SwLayAction::IsBrowseActionStop ( ) const
inline

Definition at line 172 of file layact.hxx.

References m_bBrowseActionStop.

Referenced by SwViewShell::CheckInvalidForPaint(), and InternalAction().

bool SwLayAction::IsCalcLayout ( ) const
inline
bool SwLayAction::IsCheckPages ( ) const
inline

Definition at line 171 of file layact.hxx.

References m_bCheckPages.

Referenced by SwFrame::CheckPageDescs(), and SwFrame::InsertPage().

bool SwLayAction::IsComplete ( ) const
inline

Definition at line 168 of file layact.hxx.

References m_bComplete.

Referenced by FormatContent(), InternalAction(), and SwFlowFrame::MoveSubTree().

bool SwLayAction::IsExpFields ( ) const
inline

Definition at line 169 of file layact.hxx.

References m_bUpdateExpFields.

Referenced by SwViewShell::CalcLayout().

bool SwLayAction::IsIdle ( ) const
inline

Definition at line 142 of file layact.hxx.

References m_bIdle.

Referenced by Action(), FormatContent(), and InternalAction().

bool SwLayAction::IsInput ( ) const
inline

Definition at line 140 of file layact.hxx.

References m_bInput.

Referenced by CheckIdleEnd(), InternalAction(), and IsInterrupt().

bool SwLayAction::IsInterrupt ( ) const
inline

Definition at line 145 of file layact.hxx.

References IsInput().

Referenced by FormatContent(), FormatFlyContent(), InternalAction(), and SwLayIdle::SwLayIdle().

bool SwLayAction::IsNextCycle ( ) const
inline

Definition at line 139 of file layact.hxx.

References m_bNextCycle.

Referenced by InternalAction().

bool SwLayAction::IsPaint ( ) const
inline
bool SwLayAction::IsPaintExtraData ( ) const
inline

Definition at line 144 of file layact.hxx.

References m_bPaintExtraData.

Referenced by FormatContent(), FormatFlyContent(), and TurboAction_().

bool SwLayAction::IsReschedule ( ) const
inline

Definition at line 143 of file layact.hxx.

References m_bReschedule.

Referenced by CheckWaitCursor(), and FormatContent().

bool SwLayAction::IsShortCut ( SwPageFrame *&  prPage)
private
bool SwLayAction::IsWaitAllowed ( ) const
inline

Definition at line 138 of file layact.hxx.

References m_bWaitAllowed.

Referenced by CheckWaitCursor().

void SwLayAction::PaintContent ( const SwContentFrame pCnt,
const SwPageFrame pPage,
const SwRect rOldRect,
long  nOldBottom 
)
private
bool SwLayAction::PaintContent_ ( const SwContentFrame pContent,
const SwPageFrame pPage,
const SwRect rRect 
)
inlineprivate
bool SwLayAction::PaintWithoutFlys ( const SwRect rRect,
const SwContentFrame pCnt,
const SwPageFrame pPage 
)
private
bool SwLayAction::RemoveEmptyBrowserPages ( )
private
void SwLayAction::Reset ( void  )
void SwLayAction::SetAgain ( )
inline
void SwLayAction::SetBrowseActionStop ( bool  bNew)
inline

Definition at line 135 of file layact.hxx.

Referenced by FormatContent().

void SwLayAction::SetCalcLayout ( bool  bNew)
inline

Definition at line 154 of file layact.hxx.

Referenced by SwViewShell::CalcLayout().

void SwLayAction::SetCheckPageNum ( sal_uInt16  nNew)
inline

Definition at line 214 of file layact.hxx.

References m_nCheckPageNum.

Referenced by SwFrame::CheckPageDescs().

void SwLayAction::SetCheckPageNumDirect ( sal_uInt16  nNew)
inline

Definition at line 162 of file layact.hxx.

Referenced by SwFrame::InsertPage().

void SwLayAction::SetCheckPages ( bool  bNew)
inline

Definition at line 134 of file layact.hxx.

Referenced by Action(), and InternalAction().

void SwLayAction::SetComplete ( bool  bNew)
inline

Definition at line 151 of file layact.hxx.

Referenced by SwViewShell::CheckInvalidForPaint(), and SwViewShell::ImplEndAction().

void SwLayAction::SetIdle ( bool  bNew)
inline

Definition at line 133 of file layact.hxx.

Referenced by SwLayIdle::SwLayIdle().

void SwLayAction::SetInputType ( VclInputFlags  nNew)
inline

Definition at line 153 of file layact.hxx.

Referenced by SwViewShell::ImplEndAction(), and SwLayIdle::SwLayIdle().

void SwLayAction::SetNextCycle ( bool  bNew)
inline

Definition at line 136 of file layact.hxx.

Referenced by FormatContent(), FormatLayoutTab(), and InternalAction().

void SwLayAction::SetPaint ( bool  bNew)
inline
void SwLayAction::SetReschedule ( bool  bNew)
inline

Definition at line 155 of file layact.hxx.

Referenced by SwViewShell::CalcLayout(), and SwViewShell::CalcPagesForPrint().

void SwLayAction::SetStatBar ( bool  bNew)

Definition at line 98 of file layact.cxx.

References SwRootFrame::GetPageNum(), m_nEndPage, m_pRoot, and USHRT_MAX.

Referenced by SwViewShell::CalcLayout().

void SwLayAction::SetUpdateExpFields ( )
inline

Definition at line 159 of file layact.hxx.

Referenced by SwViewShellImp::IsUpdateExpFields().

void SwLayAction::SetWaitAllowed ( bool  bNew)
inline

Definition at line 156 of file layact.hxx.

Referenced by SwViewShell::CalcPagesForPrint(), and SwLayIdle::SwLayIdle().

bool SwLayAction::TurboAction ( )
private

Definition at line 834 of file layact.cxx.

References CheckIdleEnd(), SwRootFrame::GetTurbo(), m_pRoot, SwRootFrame::ResetTurbo(), and TurboAction_().

Referenced by Action().

bool SwLayAction::TurboAction_ ( const SwContentFrame pCnt)
private

Member Data Documentation

bool SwLayAction::m_bActionInProgress
private

Definition at line 95 of file layact.hxx.

Referenced by Action(), IsActionInProgress(), and SwLayAction().

bool SwLayAction::m_bAgain
private

Definition at line 85 of file layact.hxx.

Referenced by Action(), InternalAction(), IsAgain(), Reset(), and SwLayAction().

bool SwLayAction::m_bBrowseActionStop
private

Definition at line 92 of file layact.hxx.

Referenced by IsBrowseActionStop(), Reset(), and SwLayAction().

bool SwLayAction::m_bCalcLayout
private

Definition at line 84 of file layact.hxx.

Referenced by IsCalcLayout(), Reset(), and SwLayAction().

bool SwLayAction::m_bCheckPages
private

Definition at line 90 of file layact.hxx.

Referenced by IsCheckPages(), Reset(), and SwLayAction().

bool SwLayAction::m_bComplete
private

Definition at line 83 of file layact.hxx.

Referenced by IsComplete(), Reset(), and SwLayAction().

bool SwLayAction::m_bIdle
private

Definition at line 88 of file layact.hxx.

Referenced by IsIdle(), Reset(), and SwLayAction().

bool SwLayAction::m_bInput
private

Definition at line 87 of file layact.hxx.

Referenced by CheckIdleEnd(), InternalAction(), IsInput(), Reset(), and SwLayAction().

bool SwLayAction::m_bNextCycle
private

Definition at line 86 of file layact.hxx.

Referenced by Action(), IsNextCycle(), Reset(), and SwLayAction().

bool SwLayAction::m_bPaint
private

Definition at line 82 of file layact.hxx.

Referenced by FormatContent(), IsPaint(), Reset(), and SwLayAction().

bool SwLayAction::m_bPaintExtraData
private

Definition at line 94 of file layact.hxx.

Referenced by IsPaintExtraData(), and SwLayAction().

bool SwLayAction::m_bReschedule
private

Definition at line 89 of file layact.hxx.

Referenced by IsReschedule(), Reset(), and SwLayAction().

bool SwLayAction::m_bUpdateExpFields
private

Definition at line 91 of file layact.hxx.

Referenced by IsExpFields(), Reset(), and SwLayAction().

bool SwLayAction::m_bWaitAllowed
private

Definition at line 93 of file layact.hxx.

Referenced by IsWaitAllowed(), Reset(), and SwLayAction().

sal_uInt32 SwLayAction::m_nCallCount
private

Definition at line 103 of file layact.hxx.

Referenced by FormatLayout().

sal_uInt16 SwLayAction::m_nCheckPageNum
private

Definition at line 79 of file layact.hxx.

Referenced by GetCheckPageNum(), InternalAction(), Reset(), and SetCheckPageNum().

sal_uInt16 SwLayAction::m_nEndPage
private

Definition at line 78 of file layact.hxx.

Referenced by InternalAction(), Reset(), and SetStatBar().

VclInputFlags SwLayAction::m_nInputType
private

Definition at line 77 of file layact.hxx.

Referenced by GetInputType(), and Reset().

sal_uInt16 SwLayAction::m_nPreInvaPage
private

Definition at line 72 of file layact.hxx.

Referenced by FormatContent(), InternalAction(), and Reset().

std::clock_t SwLayAction::m_nStartTicks
private

Definition at line 74 of file layact.hxx.

Referenced by CheckWaitCursor(), and Reset().

sal_uInt16 SwLayAction::m_nTabLevel
private

Definition at line 102 of file layact.hxx.

Referenced by FormatLayout().

const SwPageFrame* SwLayAction::m_pCurPage
private

Definition at line 101 of file layact.hxx.

Referenced by FormatLayout(), and Reset().

SwViewShellImp* SwLayAction::m_pImp
private
const SwTabFrame* SwLayAction::m_pOptTab
private

Definition at line 65 of file layact.hxx.

Referenced by FormatContent(), FormatLayoutTab(), InternalAction(), and Reset().

SwRootFrame* SwLayAction::m_pRoot
private
std::unique_ptr<SwWait> SwLayAction::m_pWait
private

Definition at line 67 of file layact.hxx.

Referenced by Action(), CheckWaitCursor(), and ~SwLayAction().

bool SwLayAction::mbFormatContentOnInterrupt
private

Definition at line 98 of file layact.hxx.

Referenced by FormatContent(), FormatFlyContent(), InternalAction(), and SwLayAction().


The documentation for this class was generated from the following files: