summaryrefslogtreecommitdiff
path: root/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/sdr/contact/viewobjectcontactofpageobj.cxx')
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofpageobj.cxx254
1 files changed, 128 insertions, 126 deletions
diff --git a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
index a2cce0b2fa..6f904d8910 100644
--- a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
+++ b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
@@ -8,7 +8,7 @@
*
* $RCSfile: viewobjectcontactofpageobj.cxx,v $
*
- * $Revision: 1.2 $
+ * $Revision: 1.2.18.1 $
*
* This file is part of OpenOffice.org.
*
@@ -51,149 +51,151 @@ using namespace com::sun::star;
//////////////////////////////////////////////////////////////////////////////
-namespace
+namespace sdr
{
- class PagePrimitiveExtractor : public sdr::contact::ObjectContactOfPagePainter, public Timer
- {
- private:
- // the ViewObjectContactOfPageObj using this painter
- sdr::contact::ViewObjectContactOfPageObj& mrViewObjectContactOfPageObj;
+ namespace contact
+ {
+ class PagePrimitiveExtractor : public ObjectContactOfPagePainter, public Timer
+ {
+ private:
+ // the ViewObjectContactOfPageObj using this painter
+ ViewObjectContactOfPageObj& mrViewObjectContactOfPageObj;
+
+ public:
+ // basic constructor/destructor
+ PagePrimitiveExtractor(ViewObjectContactOfPageObj& rVOC);
+ virtual ~PagePrimitiveExtractor();
+
+ // LazyInvalidate request. Supported here to not automatically
+ // invalidate the second interaction state all the time at the
+ // original OC
+ virtual void setLazyInvalidate(ViewObjectContact& rVOC);
+
+ // From baseclass Timer, the timeout call triggered by te LazyInvalidate mechanism
+ virtual void Timeout();
+
+ // get primitive visualization
+ drawinglayer::primitive2d::Primitive2DSequence createPrimitive2DSequenceForPage(const DisplayInfo& rDisplayInfo);
+
+ // Own reaction on changes which will be forwarded to the OC of the owner-VOC
+ virtual void InvalidatePartOfView(const basegfx::B2DRange& rRange) const;
+
+ // forward access to SdrPageView of ViewObjectContactOfPageObj
+ virtual bool isOutputToPrinter() const;
+ virtual bool isOutputToWindow() const;
+ virtual bool isOutputToVirtualDevice() const;
+ virtual bool isOutputToRecordingMetaFile() const;
+ virtual bool isDrawModeGray() const;
+ virtual bool isDrawModeBlackWhite() const;
+ virtual bool isDrawModeHighContrast() const;
+ virtual SdrPageView* TryToGetSdrPageView() const;
+ virtual OutputDevice* TryToGetOutputDevice() const;
+ };
+
+ PagePrimitiveExtractor::PagePrimitiveExtractor(
+ ViewObjectContactOfPageObj& rVOC)
+ : ObjectContactOfPagePainter(0, rVOC.GetObjectContact()),
+ mrViewObjectContactOfPageObj(rVOC)
+ {
+ // make this renderer a preview renderer
+ setPreviewRenderer(true);
- public:
- // basic constructor/destructor
- PagePrimitiveExtractor(
- sdr::contact::ViewObjectContactOfPageObj& rVOC);
- virtual ~PagePrimitiveExtractor();
+ // init timer
+ SetTimeout(1);
+ Stop();
+ }
- // LazyInvalidate request. Supported here to not automatically
- // invalidate the second interaction state all the time at the
- // original OC
- virtual void setLazyInvalidate(sdr::contact::ViewObjectContact& rVOC);
+ PagePrimitiveExtractor::~PagePrimitiveExtractor()
+ {
+ // execute missing LazyInvalidates and stop timer
+ Timeout();
+ }
+
+ void PagePrimitiveExtractor::setLazyInvalidate(ViewObjectContact& /*rVOC*/)
+ {
+ // do NOT call parent, but remember that something is to do by
+ // starting the LazyInvalidateTimer
+ Start();
+ }
// From baseclass Timer, the timeout call triggered by te LazyInvalidate mechanism
- virtual void Timeout();
-
- // get primitive visualization
- drawinglayer::primitive2d::Primitive2DSequence createPrimitive2DSequenceForPage(const sdr::contact::DisplayInfo& rDisplayInfo);
-
- // Own reaction on changes which will be forwarded to the OC of the owner-VOC
- virtual void InvalidatePartOfView(const basegfx::B2DRange& rRange) const;
-
- // forward access to SdrPageView of ViewObjectContactOfPageObj
- virtual bool isOutputToPrinter() const;
- virtual bool isOutputToWindow() const;
- virtual bool isOutputToVirtualDevice() const;
- virtual bool isOutputToRecordingMetaFile() const;
- virtual bool isDrawModeGray() const;
- virtual bool isDrawModeBlackWhite() const;
- virtual bool isDrawModeHighContrast() const;
- virtual SdrPageView* TryToGetSdrPageView() const;
- virtual OutputDevice* TryToGetOutputDevice() const;
- };
-
- PagePrimitiveExtractor::PagePrimitiveExtractor(
- sdr::contact::ViewObjectContactOfPageObj& rVOC)
- : sdr::contact::ObjectContactOfPagePainter(0, rVOC.GetObjectContact()),
- mrViewObjectContactOfPageObj(rVOC)
- {
- // make this renderer a preview renderer
- setPreviewRenderer(true);
-
- // init timer
- SetTimeout(1);
- Stop();
- }
-
- PagePrimitiveExtractor::~PagePrimitiveExtractor()
- {
- // execute missing LazyInvalidates and stop timer
- Timeout();
- }
-
- void PagePrimitiveExtractor::setLazyInvalidate(sdr::contact::ViewObjectContact& /*rVOC*/)
- {
- // do NOT call parent, but remember that something is to do by
- // starting the LazyInvalidateTimer
- Start();
- }
-
- // From baseclass Timer, the timeout call triggered by te LazyInvalidate mechanism
- void PagePrimitiveExtractor::Timeout()
- {
- // stop the timer
- Stop();
+ void PagePrimitiveExtractor::Timeout()
+ {
+ // stop the timer
+ Stop();
- // invalidate all LazyInvalidate VOCs new situations
- const sal_uInt32 nVOCCount(getViewObjectContactCount());
+ // invalidate all LazyInvalidate VOCs new situations
+ const sal_uInt32 nVOCCount(getViewObjectContactCount());
- for(sal_uInt32 a(0); a < nVOCCount; a++)
- {
- sdr::contact::ViewObjectContact* pCandidate = getViewObjectContact(a);
- pCandidate->triggerLazyInvalidate();
+ for(sal_uInt32 a(0); a < nVOCCount; a++)
+ {
+ ViewObjectContact* pCandidate = getViewObjectContact(a);
+ pCandidate->triggerLazyInvalidate();
+ }
}
- }
-
- drawinglayer::primitive2d::Primitive2DSequence PagePrimitiveExtractor::createPrimitive2DSequenceForPage(const sdr::contact::DisplayInfo& /*rDisplayInfo*/)
- {
- drawinglayer::primitive2d::Primitive2DSequence xRetval;
- const SdrPage* pStartPage = GetStartPage();
- if(pStartPage)
+ drawinglayer::primitive2d::Primitive2DSequence PagePrimitiveExtractor::createPrimitive2DSequenceForPage(const DisplayInfo& /*rDisplayInfo*/)
{
- // update own ViewInformation2D for visualized page
- const drawinglayer::geometry::ViewInformation2D& rOriginalViewInformation = mrViewObjectContactOfPageObj.GetObjectContact().getViewInformation2D();
- const drawinglayer::geometry::ViewInformation2D aNewViewInformation2D(
- rOriginalViewInformation.getObjectTransformation(),
- rOriginalViewInformation.getViewTransformation(),
- rOriginalViewInformation.getViewport(),
- GetXDrawPageForSdrPage(const_cast< SdrPage* >(pStartPage)),
- 0.0, // no time; page previews are not animated
- rOriginalViewInformation.getExtendedInformationSequence());
- updateViewInformation2D(aNewViewInformation2D);
-
- // create copy of DisplayInfo to set PagePainting
- sdr::contact::DisplayInfo aDisplayInfo;
-
- // get page's VOC
- sdr::contact::ViewObjectContact& rDrawPageVOContact = pStartPage->GetViewContact().GetViewObjectContact(*this);
-
- // get whole Primitive2DSequence
- xRetval = rDrawPageVOContact.getPrimitive2DSequenceHierarchy(aDisplayInfo);
- }
+ drawinglayer::primitive2d::Primitive2DSequence xRetval;
+ const SdrPage* pStartPage = GetStartPage();
- return xRetval;
- }
+ if(pStartPage)
+ {
+ // update own ViewInformation2D for visualized page
+ const drawinglayer::geometry::ViewInformation2D& rOriginalViewInformation = mrViewObjectContactOfPageObj.GetObjectContact().getViewInformation2D();
+ const drawinglayer::geometry::ViewInformation2D aNewViewInformation2D(
+ rOriginalViewInformation.getObjectTransformation(),
+ rOriginalViewInformation.getViewTransformation(),
+ rOriginalViewInformation.getViewport(),
+ GetXDrawPageForSdrPage(const_cast< SdrPage* >(pStartPage)),
+ 0.0, // no time; page previews are not animated
+ rOriginalViewInformation.getExtendedInformationSequence());
+ updateViewInformation2D(aNewViewInformation2D);
+
+ // create copy of DisplayInfo to set PagePainting
+ DisplayInfo aDisplayInfo;
+
+ // get page's VOC
+ ViewObjectContact& rDrawPageVOContact = pStartPage->GetViewContact().GetViewObjectContact(*this);
+
+ // get whole Primitive2DSequence
+ xRetval = rDrawPageVOContact.getPrimitive2DSequenceHierarchy(aDisplayInfo);
+ }
- void PagePrimitiveExtractor::InvalidatePartOfView(const basegfx::B2DRange& rRange) const
- {
- // an invalidate is called at this view, this needs to be translated to an invalidate
- // for the using VOC. Coordinates are in page coordinate system.
- const SdrPage* pStartPage = GetStartPage();
+ return xRetval;
+ }
- if(pStartPage && !rRange.isEmpty())
+ void PagePrimitiveExtractor::InvalidatePartOfView(const basegfx::B2DRange& rRange) const
{
- const basegfx::B2DRange aPageRange(0.0, 0.0, (double)pStartPage->GetWdt(), (double)pStartPage->GetHgt());
+ // an invalidate is called at this view, this needs to be translated to an invalidate
+ // for the using VOC. Coordinates are in page coordinate system.
+ const SdrPage* pStartPage = GetStartPage();
- if(rRange.overlaps(aPageRange))
+ if(pStartPage && !rRange.isEmpty())
{
- // if object on the page is inside or overlapping with page, create ActionChanged() for
- // involved VOC
- mrViewObjectContactOfPageObj.ActionChanged();
+ const basegfx::B2DRange aPageRange(0.0, 0.0, (double)pStartPage->GetWdt(), (double)pStartPage->GetHgt());
+
+ if(rRange.overlaps(aPageRange))
+ {
+ // if object on the page is inside or overlapping with page, create ActionChanged() for
+ // involved VOC
+ mrViewObjectContactOfPageObj.ActionChanged();
+ }
}
}
- }
-
- // forward access to SdrPageView to VOCOfPageObj
- bool PagePrimitiveExtractor::isOutputToPrinter() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToPrinter(); }
- bool PagePrimitiveExtractor::isOutputToWindow() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToWindow(); }
- bool PagePrimitiveExtractor::isOutputToVirtualDevice() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToVirtualDevice(); }
- bool PagePrimitiveExtractor::isOutputToRecordingMetaFile() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToRecordingMetaFile(); }
- bool PagePrimitiveExtractor::isDrawModeGray() const { return mrViewObjectContactOfPageObj.GetObjectContact().isDrawModeGray(); }
- bool PagePrimitiveExtractor::isDrawModeBlackWhite() const { return mrViewObjectContactOfPageObj.GetObjectContact().isDrawModeBlackWhite(); }
- bool PagePrimitiveExtractor::isDrawModeHighContrast() const { return mrViewObjectContactOfPageObj.GetObjectContact().isDrawModeHighContrast(); }
- SdrPageView* PagePrimitiveExtractor::TryToGetSdrPageView() const { return mrViewObjectContactOfPageObj.GetObjectContact().TryToGetSdrPageView(); }
- OutputDevice* PagePrimitiveExtractor::TryToGetOutputDevice() const { return mrViewObjectContactOfPageObj.GetObjectContact().TryToGetOutputDevice(); }
-} // end of anonymous namespace
+
+ // forward access to SdrPageView to VOCOfPageObj
+ bool PagePrimitiveExtractor::isOutputToPrinter() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToPrinter(); }
+ bool PagePrimitiveExtractor::isOutputToWindow() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToWindow(); }
+ bool PagePrimitiveExtractor::isOutputToVirtualDevice() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToVirtualDevice(); }
+ bool PagePrimitiveExtractor::isOutputToRecordingMetaFile() const { return mrViewObjectContactOfPageObj.GetObjectContact().isOutputToRecordingMetaFile(); }
+ bool PagePrimitiveExtractor::isDrawModeGray() const { return mrViewObjectContactOfPageObj.GetObjectContact().isDrawModeGray(); }
+ bool PagePrimitiveExtractor::isDrawModeBlackWhite() const { return mrViewObjectContactOfPageObj.GetObjectContact().isDrawModeBlackWhite(); }
+ bool PagePrimitiveExtractor::isDrawModeHighContrast() const { return mrViewObjectContactOfPageObj.GetObjectContact().isDrawModeHighContrast(); }
+ SdrPageView* PagePrimitiveExtractor::TryToGetSdrPageView() const { return mrViewObjectContactOfPageObj.GetObjectContact().TryToGetSdrPageView(); }
+ OutputDevice* PagePrimitiveExtractor::TryToGetOutputDevice() const { return mrViewObjectContactOfPageObj.GetObjectContact().TryToGetOutputDevice(); }
+ } // end of namespace contact
+} // end of namespace sdr
//////////////////////////////////////////////////////////////////////////////