diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-10-29 21:51:19 -0400 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-11-04 12:30:40 -0500 |
commit | 709784cf1d417b4b2df8c5228a4664f697e45a5c (patch) | |
tree | aebf751b13eefee9d0effc31b8119953ab6d459e /include/svx/sdrpagewindow.hxx | |
parent | 2ebf98e8225523186965a2ced928b0623020e41e (diff) |
Apply pimpl to SdrPageWindow.
Change-Id: I54554a229c03ff87096782344a728a49636c1de1
Diffstat (limited to 'include/svx/sdrpagewindow.hxx')
-rw-r--r-- | include/svx/sdrpagewindow.hxx | 68 |
1 files changed, 19 insertions, 49 deletions
diff --git a/include/svx/sdrpagewindow.hxx b/include/svx/sdrpagewindow.hxx index 078edaf0e201..82c82b006107 100644 --- a/include/svx/sdrpagewindow.hxx +++ b/include/svx/sdrpagewindow.hxx @@ -20,77 +20,51 @@ #ifndef INCLUDED_SVX_SDRPAGEWINDOW_HXX #define INCLUDED_SVX_SDRPAGEWINDOW_HXX -#include <com/sun/star/awt/XWindowListener.hpp> -#include <com/sun/star/beans/XPropertyChangeListener.hpp> -#include <com/sun/star/awt/XControlContainer.hpp> -#include <com/sun/star/util/XModeChangeListener.hpp> -#include <cppuhelper/implbase4.hxx> #include <svx/sdr/overlay/overlaymanager.hxx> #include <svx/svdtypes.hxx> -#include <svx/sdrpagewindow.hxx> #include <svx/svxdllapi.h> +#include <rtl/ref.hxx> -#include <vector> - +#include <com/sun/star/awt/XControlContainer.hpp> // predeclarations namespace vcl { class Region; } -class SdrUnoObj; -class SdrPageView; -// #110094# namespace sdr { namespace contact { class ObjectContact; class ViewObjectContactRedirector; - } // end of namespace contact + } +} - namespace overlay - { - class OverlayManager; - } // end of namespace overlay -} // end of namespace sdr - -namespace basegfx -{ - class B2DRange; -} // end of namespace basegfx +namespace basegfx { class B2DRange; } class SdrPaintWindow; -class Link; - - +class SdrPageView; class SVX_DLLPUBLIC SdrPageWindow { - // #110094# ObjectContact section - sdr::contact::ObjectContact* mpObjectContact; - - // the SdrPageView this window belongs to - SdrPageView& mrPageView; - - // the PaintWindow to paint on. Here is access to OutDev etc. - // #i72752# change to pointer to allow patcing it in DrawLayer() if necessary - SdrPaintWindow* mpPaintWindow; - SdrPaintWindow* mpOriginalPaintWindow; + struct Impl; - // UNO stuff for xControls - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer > mxControlContainer; + Impl* mpImpl; sdr::contact::ObjectContact* CreateViewSpecificObjectContact(); + SdrPageWindow( const SdrPageWindow& ); // disabled + SdrPageWindow& operator= ( const SdrPageWindow& ); // disabled + public: SdrPageWindow(SdrPageView& rNewPageView, SdrPaintWindow& rPaintWindow); ~SdrPageWindow(); // data read accesses - SdrPageView& GetPageView() const { return mrPageView; } - SdrPaintWindow& GetPaintWindow() const { return *mpPaintWindow; } - const SdrPaintWindow* GetOriginalPaintWindow() const { return mpOriginalPaintWindow; } - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer > GetControlContainer( bool _bCreateIfNecessary = true ) const; + SdrPageView& GetPageView() const; + SdrPaintWindow& GetPaintWindow() const; + const SdrPaintWindow* GetOriginalPaintWindow() const; + css::uno::Reference<css::awt::XControlContainer> GetControlContainer( bool _bCreateIfNecessary = true ) const; // OVERLAYMANAGER rtl::Reference< ::sdr::overlay::OverlayManager > GetOverlayManager() const; @@ -102,14 +76,15 @@ public: // the repaint method. For migration from pPaintProc, use one more parameter void PrePaint(); void PrepareRedraw(const vcl::Region& rReg); - void RedrawAll(sdr::contact::ViewObjectContactRedirector* pRedirector) const; - void RedrawLayer(const SdrLayerID* pId, sdr::contact::ViewObjectContactRedirector* pRedirector) const; + void RedrawAll( sdr::contact::ViewObjectContactRedirector* pRedirector ); + void RedrawLayer( const SdrLayerID* pId, sdr::contact::ViewObjectContactRedirector* pRedirector ); // Invalidate call, used from ObjectContact(OfPageView) in InvalidatePartOfView(...) void InvalidatePageWindow(const basegfx::B2DRange& rRange); // #110094# ObjectContact section - sdr::contact::ObjectContact& GetObjectContact() const; + const sdr::contact::ObjectContact& GetObjectContact() const; + sdr::contact::ObjectContact& GetObjectContact(); /// determines whether there already exists an ObjectContact bool HasObjectContact() const; @@ -121,11 +96,6 @@ public: void SetDesignMode( bool _bDesignMode ) const; }; -// typedefs for a list of SdrPageWindow -typedef ::std::vector< SdrPageWindow* > SdrPageWindowVector; - - - #endif // INCLUDED_SVX_SDRPAGEWINDOW_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |