[Libreoffice-commits] .: binfilter/bf_sw binfilter/inc

Joseph Powers jpowers at kemper.freedesktop.org
Tue Sep 20 07:25:39 PDT 2011


 binfilter/bf_sw/source/core/doc/sw_notxtfrm.cxx    |    7 +++
 binfilter/bf_sw/source/core/inc/notxtfrm.hxx       |    1 
 binfilter/bf_sw/source/core/layout/sw_calcmove.cxx |   31 ++++++++++++++++
 binfilter/bf_sw/source/core/view/sw_viewsh.cxx     |   39 +++++++++++++++++++++
 binfilter/bf_sw/source/core/view/sw_vnew.cxx       |    5 ++
 binfilter/inc/bf_sw/viewsh.hxx                     |    8 ++++
 6 files changed, 91 insertions(+)

New commits:
commit 1b94742492067c23500c083b76fe7426cc877362
Author: Joseph Powers <jpowers27 at cox.net>
Date:   Tue Sep 20 07:25:27 2011 -0700

    Some more cleanup of bf_sw classes

diff --git a/binfilter/bf_sw/source/core/doc/sw_notxtfrm.cxx b/binfilter/bf_sw/source/core/doc/sw_notxtfrm.cxx
index d90978b..1f84bf8 100644
--- a/binfilter/bf_sw/source/core/doc/sw_notxtfrm.cxx
+++ b/binfilter/bf_sw/source/core/doc/sw_notxtfrm.cxx
@@ -302,6 +302,13 @@ extern void ClrContourCache( const SdrObject *pObj ); // TxtFly.Cxx
 /*N*/       pGrfNd->GetGrfObj().StopAnimation( pOut, long(this) );
 /*N*/ }
 
+
+/*N*/ BOOL SwNoTxtFrm::HasAnimation() const
+/*N*/ {
+/*N*/   const SwGrfNode* pGrfNd = GetNode()->GetGrfNode();
+/*N*/   return pGrfNd && pGrfNd->IsAnimated();
+/*N*/ }
+
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binfilter/bf_sw/source/core/inc/notxtfrm.hxx b/binfilter/bf_sw/source/core/inc/notxtfrm.hxx
index 044f075..d749d67 100644
--- a/binfilter/bf_sw/source/core/inc/notxtfrm.hxx
+++ b/binfilter/bf_sw/source/core/inc/notxtfrm.hxx
@@ -73,6 +73,7 @@ public:
     void GetGrfArea( SwRect &rRect, SwRect * = 0, BOOL bMirror = TRUE ) const;
 
     void StopAnimation( OutputDevice* = 0 ) const;
+    BOOL HasAnimation()  const;
 
     // Routinen fuer den Grafik-Cache
     USHORT GetWeight() { return nWeight; }
diff --git a/binfilter/bf_sw/source/core/layout/sw_calcmove.cxx b/binfilter/bf_sw/source/core/layout/sw_calcmove.cxx
index e252511..644d285 100644
--- a/binfilter/bf_sw/source/core/layout/sw_calcmove.cxx
+++ b/binfilter/bf_sw/source/core/layout/sw_calcmove.cxx
@@ -485,6 +485,37 @@ namespace binfilter {
 |*  SwPageFrm::MakeAll()
 |*
 |*************************************************************************/
+
+/*N*/ void lcl_CheckObjects( SwSortDrawObjs* pSortedObjs, SwFrm* pFrm, long& rBot )
+/*N*/ {
+/*N*/   //Und dann kann es natuerlich noch Absatzgebundene
+/*N*/   //Rahmen geben, die unterhalb ihres Absatzes stehen.
+/*N*/   long nMax = 0;
+/*N*/   for ( USHORT i = 0; i < pSortedObjs->Count(); ++i )
+/*N*/   {
+/*N*/       SdrObject *pObj = (*pSortedObjs)[i];
+/*N*/       long nTmp = 0;
+/*N*/       if ( pObj->IsWriterFlyFrame() )
+/*N*/       {
+/*N*/           SwFlyFrm *pFly = ((SwVirtFlyDrawObj*)pObj)->GetFlyFrm();
+/*N*/           if( pFly->Frm().Top() != WEIT_WECH &&
+/*N*/               ( pFrm->IsPageFrm() ? pFly->IsFlyLayFrm() :
+/*N*/                 ( pFly->IsFlyAtCntFrm() &&
+/*N*/                   ( pFrm->IsBodyFrm() ? pFly->GetAnchor()->IsInDocBody() :
+/*N*/                                         pFly->GetAnchor()->IsInFtn() ) ) ) )
+/*N*/           {
+/*N*/               nTmp = pFly->Frm().Bottom();
+/*N*/           }
+/*N*/       }
+/*N*/       else
+/*N*/           nTmp = pObj->GetBoundRect().Bottom();
+/*N*/       nMax = Max( nTmp, nMax );
+/*N*/   }
+/*N*/   ++nMax; //Unterkante vs. Hoehe!
+/*N*/   rBot = Max( rBot, nMax );
+/*N*/ }
+
+
 /*N*/ void SwPageFrm::MakeAll()
 /*N*/ {
 /*N*/   PROTOCOL_ENTER( this, PROT_MAKEALL, 0, 0 )
diff --git a/binfilter/bf_sw/source/core/view/sw_viewsh.cxx b/binfilter/bf_sw/source/core/view/sw_viewsh.cxx
index 9e72015..cc539de 100644
--- a/binfilter/bf_sw/source/core/view/sw_viewsh.cxx
+++ b/binfilter/bf_sw/source/core/view/sw_viewsh.cxx
@@ -66,6 +66,45 @@ bool bInSizeNotify = FALSE;
 
 /*N*/ TYPEINIT0(ViewShell);
 
+/******************************************************************************
+|*
+|*  ViewShell::InvalidateWindows()
+|*
+******************************************************************************/
+
+/*N*/ void ViewShell::InvalidateWindows( const SwRect &rRect )
+/*N*/ {
+/*N*/     ViewShell *pSh = this;
+/*N*/     do
+/*N*/     {
+/*N*/         if ( pSh->GetWin() )
+/*N*/         {
+/*N*/             if ( pSh->IsPreView() )
+/*?*/                 DBG_BF_ASSERT(0, "STRIP");
+/*N*/             else if ( pSh->VisArea().IsOver( rRect ) )
+/*N*/                 pSh->GetWin()->Invalidate( rRect.SVRect() );
+/*N*/         }
+/*N*/         pSh = (ViewShell*)pSh->GetNext();
+/*N*/
+/*N*/     } while ( pSh != this );
+/*N*/ }
+
+/******************************************************************************
+|*
+|*  ViewShell::SetFirstVisPageInvalid()
+|*
+******************************************************************************/
+
+/*N*/ void ViewShell::SetFirstVisPageInvalid()
+/*N*/ {
+/*N*/   ViewShell *pSh = this;
+/*N*/   do
+/*N*/   {   pSh->Imp()->SetFirstVisPageInvalid();
+/*N*/       pSh = (ViewShell*)pSh->GetNext();
+/*N*/
+/*N*/   } while ( pSh != this );
+/*N*/ }
+
 /*N*/ OutputDevice& ViewShell::GetRefDev() const
 /*N*/ {
 /*N*/     OutputDevice* pTmpOut = 0;
diff --git a/binfilter/bf_sw/source/core/view/sw_vnew.cxx b/binfilter/bf_sw/source/core/view/sw_vnew.cxx
index 2fa4968..843b78f 100644
--- a/binfilter/bf_sw/source/core/view/sw_vnew.cxx
+++ b/binfilter/bf_sw/source/core/view/sw_vnew.cxx
@@ -118,6 +118,11 @@ namespace binfilter {
 /*N*/     delete mpTmpRef;
 /*N*/     delete pAccOptions;
 /*N*/ }
+
+/*N*/ BOOL ViewShell::HasDrawView() const
+/*N*/ {
+/*N*/   return Imp()->HasDrawView();
+/*N*/ }
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binfilter/inc/bf_sw/viewsh.hxx b/binfilter/inc/bf_sw/viewsh.hxx
index cc8e613..31c74e5 100644
--- a/binfilter/inc/bf_sw/viewsh.hxx
+++ b/binfilter/inc/bf_sw/viewsh.hxx
@@ -131,8 +131,13 @@ public:
           SwViewImp *Imp() { return pImp; }
     const SwViewImp *Imp() const { return pImp; }
 
+    void InvalidateWindows( const SwRect &rRect );
+
     const SwRect &VisArea() const { return aVisArea; }
 
+    //Invalidierung der ersten Sichtbaren Seite fuer alle Shells im Ring.
+    void SetFirstVisPageInvalid();
+
     inline SwDoc *GetDoc()  const { return pDoc; }  //niemals 0.
 
     // 1. GetPrt:      The printer at the document
@@ -181,6 +186,9 @@ public:
                            SfxProgress& rProgress,
                            const SwPagePreViewPrtData* = 0 );
 
+    // Abfragen/Erzeugen DrawView + PageView
+    sal_Bool HasDrawView() const;
+
     //sorge dafuer, das auf jedenfall die MarkListe aktuell ist (Bug 57153)
 
     sal_Bool IsPreView() const { return bPreView; }


More information about the Libreoffice-commits mailing list