LibreOffice Module drawinglayer (master) 1
|
BorderLinePrimitive2D class. More...
#include <borderlineprimitive2d.hxx>
Public Member Functions | |
BorderLinePrimitive2D (const basegfx::B2DPoint &rStart, const basegfx::B2DPoint &rEnd, std::vector< BorderLine > &&rBorderLines, drawinglayer::attribute::StrokeAttribute aStrokeAttribute) | |
simplified constructor for BorderLine with single edge More... | |
const basegfx::B2DPoint & | getStart () const |
data read access More... | |
const basegfx::B2DPoint & | getEnd () const |
const std::vector< BorderLine > & | getBorderLines () const |
const drawinglayer::attribute::StrokeAttribute & | getStrokeAttribute () const |
bool | isHorizontalOrVertical (const geometry::ViewInformation2D &rViewInformation) const |
helper to decide if AntiAliasing should be used More... | |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const override |
compare operator 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 |
create local decomposition More... | |
double | getFullWidth () const |
helper to get the full width from maBorderLines More... | |
Private Attributes | |
basegfx::B2DPoint | maStart |
the line definition More... | |
basegfx::B2DPoint | maEnd |
std::vector< BorderLine > | maBorderLines |
the single BorderLine style definition(s), one or three mostly used More... | |
const drawinglayer::attribute::StrokeAttribute | maStrokeAttribute |
common style definitions More... | |
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 |
BorderLinePrimitive2D class.
This is the basic primitive to build frames around objects, e.g. tables. It defines a single or double line from Start to End using the LeftWidth, Distance and RightWidth definitions. The LineStart/End overlap is defined in the BorderLines definitions (see class BorderLine above).
Definition at line 92 of file borderlineprimitive2d.hxx.
drawinglayer::primitive2d::BorderLinePrimitive2D::BorderLinePrimitive2D | ( | const basegfx::B2DPoint & | rStart, |
const basegfx::B2DPoint & | rEnd, | ||
std::vector< BorderLine > && | rBorderLines, | ||
drawinglayer::attribute::StrokeAttribute | aStrokeAttribute | ||
) |
simplified constructor for BorderLine with single edge
Definition at line 266 of file borderlineprimitive2d.cxx.
|
overrideprivatevirtual |
create local decomposition
Implements drawinglayer::primitive2d::BufferedDecompositionPrimitive2D.
Definition at line 116 of file borderlineprimitive2d.cxx.
References drawinglayer::primitive2d::addPolygonStrokePrimitive2D(), basegfx::B2DPolygon::append(), equal(), getBorderLines(), getEnd(), getFullWidth(), basegfx::getPerpendicular(), getStart(), getStrokeAttribute(), maBorderLines, and basegfx::B2DVector::normalize().
|
inline |
Definition at line 122 of file borderlineprimitive2d.hxx.
Referenced by create2DDecomposition(), operator==(), and drawinglayer::primitive2d::tryMergeBorderLinePrimitive2D().
|
inline |
Definition at line 121 of file borderlineprimitive2d.hxx.
References maEnd.
Referenced by create2DDecomposition(), isHorizontalOrVertical(), operator==(), and drawinglayer::primitive2d::tryMergeBorderLinePrimitive2D().
|
private |
helper to get the full width from maBorderLines
Definition at line 104 of file borderlineprimitive2d.cxx.
References maBorderLines.
Referenced by create2DDecomposition().
|
overridevirtual |
provide unique ID
Implements drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 292 of file borderlineprimitive2d.cxx.
References PRIMITIVE2D_ID_BORDERLINEPRIMITIVE2D.
|
inline |
data read access
Definition at line 120 of file borderlineprimitive2d.hxx.
References maStart.
Referenced by create2DDecomposition(), isHorizontalOrVertical(), operator==(), and drawinglayer::primitive2d::tryMergeBorderLinePrimitive2D().
|
inline |
Definition at line 123 of file borderlineprimitive2d.hxx.
Referenced by create2DDecomposition(), operator==(), and drawinglayer::primitive2d::tryMergeBorderLinePrimitive2D().
bool drawinglayer::primitive2d::BorderLinePrimitive2D::isHorizontalOrVertical | ( | const geometry::ViewInformation2D & | rViewInformation | ) | const |
helper to decide if AntiAliasing should be used
Definition at line 253 of file borderlineprimitive2d.cxx.
References equal(), basegfx::fTools::equalZero(), getEnd(), drawinglayer::geometry::ViewInformation2D::getObjectToViewTransformation(), getStart(), basegfx::Tuple2D< typename TYPE >::getX(), and basegfx::Tuple2D< typename TYPE >::getY().
Referenced by drawinglayer::processor2d::VclPixelProcessor2D::processBorderLinePrimitive2D().
|
overridevirtual |
compare operator
Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 278 of file borderlineprimitive2d.cxx.
References getBorderLines(), getEnd(), getStart(), and getStrokeAttribute().
|
private |
the single BorderLine style definition(s), one or three mostly used
Definition at line 100 of file borderlineprimitive2d.hxx.
Referenced by create2DDecomposition(), and getFullWidth().
|
private |
Definition at line 97 of file borderlineprimitive2d.hxx.
|
private |
the line definition
Definition at line 96 of file borderlineprimitive2d.hxx.
|
private |
common style definitions
Definition at line 103 of file borderlineprimitive2d.hxx.