summaryrefslogtreecommitdiff
path: root/svx/source/sdr
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2005-09-27 11:29:16 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2005-09-27 11:29:16 +0000
commit4e4b4ed649efa3f0064cfef8ff9160062c7a2ff1 (patch)
tree95068195a0e835e1e6804f464241718fc88ce3ec /svx/source/sdr
parent5f38ac068e1322bd119b2c0089f90f2e00e1f026 (diff)
INTEGRATION: CWS aw032 (1.13.252); FILE MERGED
2005/08/03 16:57:28 aw 1.13.252.1: #i51798#
Diffstat (limited to 'svx/source/sdr')
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrpage.cxx34
1 files changed, 25 insertions, 9 deletions
diff --git a/svx/source/sdr/contact/viewcontactofsdrpage.cxx b/svx/source/sdr/contact/viewcontactofsdrpage.cxx
index be82db8077fc..81dccfa336d2 100644
--- a/svx/source/sdr/contact/viewcontactofsdrpage.cxx
+++ b/svx/source/sdr/contact/viewcontactofsdrpage.cxx
@@ -4,9 +4,9 @@
*
* $RCSfile: viewcontactofsdrpage.cxx,v $
*
- * $Revision: 1.14 $
+ * $Revision: 1.15 $
*
- * last change: $Author: rt $ $Date: 2005-09-09 00:06:35 $
+ * last change: $Author: hr $ $Date: 2005-09-27 12:29:16 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -302,6 +302,7 @@ namespace sdr
// look if the MasterPageBackgroundObject needs to be painted, else
// paint page as normal
sal_Bool bPaintMasterObject(sal_False);
+ sal_Bool bPaintPageBackground(sal_True);
SdrObject* pMasterPageObjectCandidate = 0L;
if(GetSdrPage().IsMasterPage())
@@ -314,15 +315,23 @@ namespace sdr
{
bPaintMasterObject = sal_True;
}
- }
- if(bPaintMasterObject)
- {
- // draw a MasterPage background for a MasterPage in MasterPage View
- Rectangle aRectangle;
- PaintBackgroundObject(*this, *pMasterPageObjectCandidate, rDisplayInfo, aRectangle, rAssociatedVOC);
+ if(bPaintMasterObject)
+ {
+ // #i51798# when the fill mode guarantees that the full page will
+ // be painted with PaintMasterObject, bPaintPageBackground may be
+ // set to false. This is the case for XFILL_SOLID and XFILL_GRADIENT
+ const SfxItemSet& rSet = pMasterPageObjectCandidate->GetMergedItemSet();
+ const XFillStyle eFillStyle = ((const XFillStyleItem&)(rSet.Get(XATTR_FILLSTYLE))).GetValue();
+
+ if(XFILL_SOLID == eFillStyle || XFILL_GRADIENT == eFillStyle)
+ {
+ bPaintPageBackground = sal_False;
+ }
+ }
}
- else
+
+ if(bPaintPageBackground)
{
// Set page color for Paper painting
if(pPageView->GetApplicationDocumentColor() != COL_AUTO)
@@ -349,6 +358,13 @@ namespace sdr
}
}
+ if(bPaintMasterObject)
+ {
+ // draw a MasterPage background for a MasterPage in MasterPage View
+ Rectangle aRectangle;
+ PaintBackgroundObject(*this, *pMasterPageObjectCandidate, rDisplayInfo, aRectangle, rAssociatedVOC);
+ }
+
// set page shadow color
const Color aShadowColor(rDisplayInfo.GetColorConfig().GetColorValue(svtools::FONTCOLOR).nColor);
pOut->SetFillColor(aShadowColor);