LibreOffice Module drawinglayer (master) 1
|
PagePreviewPrimitive2D class. More...
#include <pagepreviewprimitive2d.hxx>
Public Member Functions | |
PagePreviewPrimitive2D (css::uno::Reference< css::drawing::XDrawPage > xDrawPage, basegfx::B2DHomMatrix aTransform, double fContentWidth, double fContentHeight, Primitive2DContainer &&rPageContent) | |
constructor More... | |
const css::uno::Reference< css::drawing::XDrawPage > & | getXDrawPage () const |
data read access More... | |
const Primitive2DContainer & | getPageContent () const |
const basegfx::B2DHomMatrix & | getTransform () const |
double | getContentWidth () const |
double | getContentHeight () const |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const override |
compare operator More... | |
virtual basegfx::B2DRange | getB2DRange (const geometry::ViewInformation2D &rViewInformation) const override |
own getB2DRange More... | |
virtual sal_uInt32 | getPrimitive2DID () const override |
provide unique ID More... | |
Public Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D | |
BufferedDecompositionPrimitive2D () | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override |
The getDecomposition default implementation will on demand use create2DDecomposition() if maBuffered2DDecomposition is empty. More... | |
void | setTransparenceForShadow (sal_uInt16 nTransparenceForShadow) |
sal_uInt16 | getTransparenceForShadow () const |
Public Member Functions inherited from drawinglayer::primitive2d::BasePrimitive2D | |
BasePrimitive2D () | |
virtual | ~BasePrimitive2D () override |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const |
the ==operator is mainly needed to allow testing newly-created primitives against their last incarnation which buffers/holds the made decompositions. More... | |
bool | operator!= (const BasePrimitive2D &rPrimitive) const |
virtual basegfx::B2DRange | getB2DRange (const geometry::ViewInformation2D &rViewInformation) const |
The default implementation will use getDecomposition results to create the range. More... | |
virtual sal_uInt32 | getPrimitive2DID () const =0 |
provide unique ID for fast identifying of known primitive implementations in renderers. More... | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const |
The default implementation will return an empty sequence. More... | |
Primitive2DContainer | getDecomposition (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) |
The getDecomposition implementation for UNO API will use getDecomposition from this implementation. More... | |
css::geometry::RealRectangle2D | getRange (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) |
The getRange implementation for UNO API will use getRange from this implementation. More... | |
virtual sal_Int64 | estimateUsage () |
Public Member Functions inherited from salhelper::SimpleReferenceObject | |
SimpleReferenceObject () | |
void | acquire () |
void | release () |
Private Member Functions | |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const override |
local decomposition. Implementation will just return children More... | |
Private Attributes | |
const css::uno::Reference< css::drawing::XDrawPage > | mxDrawPage |
the XDrawPage visualized by this primitive. More... | |
Primitive2DContainer | maPageContent |
the PageContent More... | |
basegfx::B2DHomMatrix | maTransform |
the own geometry More... | |
double | mfContentWidth |
content width and height More... | |
double | mfContentHeight |
Additional Inherited Members | |
Static Public Member Functions inherited from salhelper::SimpleReferenceObject | |
static void * | operator new (std::size_t nSize) |
static void * | operator new (std::size_t nSize, std::nothrow_t const &rNothrow) |
static void | operator delete (void *pPtr) |
static void | operator delete (void *pPtr, std::nothrow_t const &rNothrow) |
Protected Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D | |
const Primitive2DContainer & | getBuffered2DDecomposition () const |
access methods to maBuffered2DDecomposition. More... | |
void | setBuffered2DDecomposition (Primitive2DContainer &&rNew) |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const =0 |
method which is to be used to implement the local decomposition of a 2D primitive. More... | |
Protected Member Functions inherited from salhelper::SimpleReferenceObject | |
virtual | ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE |
Protected Attributes inherited from salhelper::SimpleReferenceObject | |
oslInterlockedCount | m_nCount |
PagePreviewPrimitive2D class.
This primitive is needed to have the correct XDrawPage as ViewInformation for decomposing the page contents (given as PageContent here) if these contain e.g. view-dependent (in this case XDrawPage-dependent) text fields like PageNumber. If You want those primitives to be visualized correctly, Your renderer needs to locally correct its ViewInformation2D to reference the new XDrawPage.
Definition at line 40 of file pagepreviewprimitive2d.hxx.
drawinglayer::primitive2d::PagePreviewPrimitive2D::PagePreviewPrimitive2D | ( | css::uno::Reference< css::drawing::XDrawPage > | xDrawPage, |
basegfx::B2DHomMatrix | aTransform, | ||
double | fContentWidth, | ||
double | fContentHeight, | ||
Primitive2DContainer && | rPageContent | ||
) |
|
overrideprivatevirtual |
local decomposition. Implementation will just return children
Implements drawinglayer::primitive2d::BufferedDecompositionPrimitive2D.
Definition at line 35 of file pagepreviewprimitive2d.cxx.
References basegfx::utils::createPolygonFromRect(), basegfx::utils::createShearXRotateTranslateB2DHomMatrix(), basegfx::B2DHomMatrix::decompose(), drawinglayer::primitive2d::Primitive2DContainer::getB2DRange(), getContentHeight(), getContentWidth(), getPageContent(), getTransform(), basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), basegfx::Range2D< typename TYPE, typename TRAITS >::isInside(), basegfx::fTools::more(), basegfx::B2DHomMatrix::scale(), and basegfx::B2DHomMatrix::translate().
|
overridevirtual |
own getB2DRange
Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 134 of file pagepreviewprimitive2d.cxx.
References getTransform(), and basegfx::B2DRange::transform().
|
inline |
Definition at line 76 of file pagepreviewprimitive2d.hxx.
Referenced by create2DDecomposition(), and operator==().
|
inline |
Definition at line 75 of file pagepreviewprimitive2d.hxx.
Referenced by create2DDecomposition(), and operator==().
|
inline |
Definition at line 73 of file pagepreviewprimitive2d.hxx.
Referenced by create2DDecomposition(), and operator==().
|
overridevirtual |
provide unique ID
Implements drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 144 of file pagepreviewprimitive2d.cxx.
References PRIMITIVE2D_ID_PAGEPREVIEWPRIMITIVE2D.
|
inline |
Definition at line 74 of file pagepreviewprimitive2d.hxx.
References maTransform.
Referenced by create2DDecomposition(), getB2DRange(), and operator==().
|
inline |
data read access
Definition at line 72 of file pagepreviewprimitive2d.hxx.
References mxDrawPage.
Referenced by operator==(), and drawinglayer::processor2d::VclProcessor2D::RenderPagePreviewPrimitive2D().
|
overridevirtual |
compare operator
Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 118 of file pagepreviewprimitive2d.cxx.
References getContentHeight(), getContentWidth(), getPageContent(), getTransform(), and getXDrawPage().
|
private |
the PageContent
Definition at line 50 of file pagepreviewprimitive2d.hxx.
|
private |
the own geometry
Definition at line 53 of file pagepreviewprimitive2d.hxx.
|
private |
Definition at line 57 of file pagepreviewprimitive2d.hxx.
|
private |
content width and height
Definition at line 56 of file pagepreviewprimitive2d.hxx.
|
private |
the XDrawPage visualized by this primitive.
When we go forward with primitives this will not only be used by the renderers to provide the correct decompose graphic attribute context, but also to completely create the page's sub-content.
Definition at line 47 of file pagepreviewprimitive2d.hxx.