summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Lange [tl] <tl@openoffice.org>2009-12-07 14:11:32 +0100
committerThomas Lange [tl] <tl@openoffice.org>2009-12-07 14:11:32 +0100
commitbd1f0fb6ac0427a68d4db389a13be1d52a8ba679 (patch)
treec70d80c94b522d65dde1b8a44d5fb5ab3c5ac05b
parent886cb61eafe2e56b12241bf14bf0ff5ec38b2c3b (diff)
#i104312# fixed print objetcs for pictures and graphics; nopw works for drawing objects as well and does not effect form controls
-rwxr-xr-x[-rw-r--r--]svx/inc/svx/svdpntv.hxx9
-rwxr-xr-x[-rw-r--r--]svx/source/sdr/contact/viewobjectcontactofsdrobj.cxx12
-rwxr-xr-x[-rw-r--r--]svx/source/svdraw/svdpntv.cxx3
3 files changed, 18 insertions, 6 deletions
diff --git a/svx/inc/svx/svdpntv.hxx b/svx/inc/svx/svdpntv.hxx
index 33fd3d0812..faec11d50c 100644..100755
--- a/svx/inc/svx/svdpntv.hxx
+++ b/svx/inc/svx/svdpntv.hxx
@@ -214,10 +214,11 @@ protected:
// is this a preview renderer?
unsigned mbPreviewRenderer : 1;
- // flags for calc for suppressing OLE, CHART or DRAW objects
+ // flags for calc and sw for suppressing OLE, CHART or DRAW objects
unsigned mbHideOle : 1;
unsigned mbHideChart : 1;
- unsigned mbHideDraw : 1;
+ unsigned mbHideDraw : 1; // hide draw objects other than form controls
+ unsigned mbHideFormControl : 1; // hide form controls only
public:
// #114898#
@@ -431,13 +432,15 @@ public:
sal_Bool IsPreviewRenderer() const { return (sal_Bool )mbPreviewRenderer; }
void SetPreviewRenderer(bool bOn) { if((unsigned)bOn != mbPreviewRenderer) { mbPreviewRenderer=bOn; }}
- // access methods for calc hide object modes
+ // access methods for calc and sw hide object modes
bool getHideOle() const { return mbHideOle; }
bool getHideChart() const { return mbHideChart; }
bool getHideDraw() const { return mbHideDraw; }
+ bool getHideFormControl() const { return mbHideFormControl; }
void setHideOle(bool bNew) { if(bNew != (bool)mbHideOle) mbHideOle = bNew; }
void setHideChart(bool bNew) { if(bNew != (bool)mbHideChart) mbHideChart = bNew; }
void setHideDraw(bool bNew) { if(bNew != (bool)mbHideDraw) mbHideDraw = bNew; }
+ void setHideFormControl(bool bNew) { if(bNew != (bool)mbHideFormControl) mbHideFormControl = bNew; }
void SetGridCoarse(const Size& rSiz) { aGridBig=rSiz; }
void SetGridFine(const Size& rSiz) { aGridFin=rSiz; if (aGridFin.Height()==0) aGridFin.Height()=aGridFin.Width(); if (bGridVisible) InvalidateAllWin(); } // #40479#
diff --git a/svx/source/sdr/contact/viewobjectcontactofsdrobj.cxx b/svx/source/sdr/contact/viewobjectcontactofsdrobj.cxx
index 21b544a91d..fbffa0b23a 100644..100755
--- a/svx/source/sdr/contact/viewobjectcontactofsdrobj.cxx
+++ b/svx/source/sdr/contact/viewobjectcontactofsdrobj.cxx
@@ -40,6 +40,8 @@
#include <svx/svdoole2.hxx>
#include <svx/svdview.hxx>
+#include "fmobj.hxx"
+
//////////////////////////////////////////////////////////////////////////////
namespace sdr
@@ -91,8 +93,9 @@ namespace sdr
const bool bHideOle(rSdrView.getHideOle());
const bool bHideChart(rSdrView.getHideChart());
const bool bHideDraw(rSdrView.getHideDraw());
+ const bool bHideFormControl(rSdrView.getHideFormControl());
- if(bHideOle || bHideChart || bHideDraw)
+ if(bHideOle || bHideChart || bHideDraw || bHideFormControl)
{
if(OBJ_OLE2 == rObject.GetObjIdentifier())
{
@@ -123,8 +126,13 @@ namespace sdr
}
else
{
+ const bool bIsFormControl = dynamic_cast< const FmFormObj * >( &rObject ) != 0;
+ if(bIsFormControl && bHideFormControl)
+ {
+ return false;
+ }
// any other draw object
- if(bHideDraw)
+ if(!bIsFormControl && bHideDraw)
{
return false;
}
diff --git a/svx/source/svdraw/svdpntv.cxx b/svx/source/svdraw/svdpntv.cxx
index cf0034903e..9f0dc043a1 100644..100755
--- a/svx/source/svdraw/svdpntv.cxx
+++ b/svx/source/svdraw/svdpntv.cxx
@@ -275,7 +275,8 @@ SdrPaintView::SdrPaintView(SdrModel* pModel1, OutputDevice* pOut)
mbPagePaintingAllowed(true),
mbHideOle(false),
mbHideChart(false),
- mbHideDraw(false)
+ mbHideDraw(false),
+ mbHideFormControl(false)
{
DBG_CTOR(SdrPaintView,NULL);
pMod=pModel1;