20#ifndef INCLUDED_SVX_ENHANCEDCUSTOMSHAPE2D_HXX
21#define INCLUDED_SVX_ENHANCEDCUSTOMSHAPE2D_HXX
27#include <com/sun/star/awt/Size.hpp>
28#include <com/sun/star/uno/Sequence.h>
29#include <com/sun/star/beans/PropertyValues.hpp>
31#include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.hpp>
32#include <com/sun/star/drawing/EnhancedCustomShapeSegment.hpp>
33#include <com/sun/star/drawing/EnhancedCustomShapeParameter.hpp>
34#include <com/sun/star/drawing/EnhancedCustomShapeTextFrame.hpp>
35#include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp>
114 css::uno::Sequence< css::drawing::EnhancedCustomShapeSegment >
m_seqSegments;
129 SAL_DLLPRIVATE
bool SetAdjustValueAsDouble(
const double& rValue,
const sal_Int32 nIndex );
130 SAL_DLLPRIVATE
Color GetColorData(
const Color& rFillColor, sal_uInt32 nIndex,
double dBrightness )
const;
131 SAL_DLLPRIVATE
void AdaptObjColor(
135 sal_uInt32& nColorIndex,
136 sal_uInt32 nColorCount);
137 SAL_DLLPRIVATE
Point GetPoint(
const css::drawing::EnhancedCustomShapeParameterPair&,
138 const bool bScale =
true,
const bool bReplaceGeoSize =
false )
const;
139 SAL_DLLPRIVATE
basegfx::B2DPoint GetPointAsB2DPoint(
const css::drawing::EnhancedCustomShapeParameterPair&,
140 const bool bScale =
true,
const bool bReplaceGeoSize =
false )
const;
142 SAL_DLLPRIVATE
void CreateSubPath(
144 sal_Int32& rSegmentInd,
146 bool bLineGeometryNeededOnly,
147 bool bSortFilledObjectsToBack,
152 SAL_DLLPRIVATE
void SetPathSize( sal_Int32 nIndex = 0 );
160 css::drawing::EnhancedCustomShapeParameterPair
aPosition;
161 css::drawing::EnhancedCustomShapeParameterPair
aPolar;
185 sal_Int32 GetLuminanceChange( sal_uInt32 nIndex )
const;
196 sal_uInt32 GetHdlCount()
const;
197 bool GetHandlePosition(
const sal_uInt32 nIndex,
Point& rReturnPosition )
const;
198 bool SetHandleControllerPosition(
const sal_uInt32 nIndex,
const css::awt::Point& rPosition );
205 void GetParameter(
double& rParameterReturnValue,
const css::drawing::EnhancedCustomShapeParameter&,
206 const bool bReplaceGeoWidth,
const bool bReplaceGeoHeight )
const;
207 SAL_DLLPRIVATE
double GetAdjustValueAsDouble(
const sal_Int32 nIndex )
const;
208 SAL_DLLPRIVATE
double GetEquationValueAsDouble(
const sal_Int32 nIndex )
const;
210 static OUString GetEquation(
const sal_uInt16 nFlags, sal_Int32 nPara1, sal_Int32 nPara2, sal_Int32 nPara3 );
212 SAL_DLLPRIVATE
static void AppendEnhancedCustomShapeEquationParameter( OUString& rParameter,
const sal_Int32 nPara,
const bool bIsSpecialValue );
214 static void SetEnhancedCustomShapeParameter( css::drawing::EnhancedCustomShapeParameter&
215 rParameter,
const sal_Int32
nValue );
216 static void SetEnhancedCustomShapeHandleParameter( css::drawing::EnhancedCustomShapeParameter&
217 rParameter,
const sal_Int32 nPara,
const bool bIsSpecialValue,
bool bHorz );
218 SAL_DLLPRIVATE
static bool ConvertSequenceToEnhancedCustomShape2dHandle(
const css::beans::PropertyValues& rHandleProperties,
220 SAL_DLLPRIVATE
static void SwapStartAndEndArrow(
SdrObject* pObj );
static void GetPoint(const tools::Polygon &rPoly, const std::vector< double > &rDistances, const double &fX, double &fx1, double &fy1)
SAL_DLLPRIVATE bool IsFlipHorz() const
SAL_DLLPRIVATE Degree100 GetRotateAngle() const
std::vector< EquationResult > m_vEquationResults
css::uno::Sequence< css::drawing::EnhancedCustomShapeTextFrame > m_seqTextFrames
sal_Int32 m_nCoordHeightG
css::uno::Sequence< OUString > m_seqEquations
const tools::Rectangle & GetLogicRect() const
css::uno::Sequence< css::drawing::EnhancedCustomShapeParameterPair > m_seqCoordinates
css::uno::Sequence< css::drawing::EnhancedCustomShapeAdjustmentValue > m_seqAdjustmentValues
css::uno::Sequence< css::drawing::EnhancedCustomShapeParameterPair > m_seqGluePoints
css::uno::Sequence< css::drawing::EnhancedCustomShapeSegment > m_seqSegments
css::uno::Sequence< css::beans::PropertyValues > m_seqHandles
tools::Rectangle m_aLogicRect
std::vector< std::shared_ptr< EnhancedCustomShape::ExpressionNode > > m_vNodesSharedPtr
SAL_DLLPRIVATE bool IsFlipVert() const
css::uno::Sequence< css::awt::Size > m_seqSubViewSize
SdrObjCustomShape & mrSdrObjCustomShape
css::drawing::EnhancedCustomShapeParameter aXRangeMinimum
css::drawing::EnhancedCustomShapeParameter aYRangeMaximum
css::drawing::EnhancedCustomShapeParameter aXRangeMaximum
css::drawing::EnhancedCustomShapeParameterPair aPosition
css::drawing::EnhancedCustomShapeParameter aRadiusRangeMinimum
css::drawing::EnhancedCustomShapeParameter aRadiusRangeMaximum
css::drawing::EnhancedCustomShapeParameter aYRangeMinimum
css::drawing::EnhancedCustomShapeParameterPair aPolar
#define SVXCORE_DLLPUBLIC