65#include <com/sun/star/drawing/ProjectionMode.hpp>
66#include <com/sun/star/drawing/ShadeMode.hpp>
74#include <osl/diagnose.h>
86#include <com/sun/star/drawing/LineCap.hpp>
98 case css::awt::GradientStyle_LINEAR :
102 case css::awt::GradientStyle_AXIAL :
106 case css::awt::GradientStyle_RADIAL :
110 case css::awt::GradientStyle_ELLIPTICAL :
114 case css::awt::GradientStyle_SQUARE :
129 case css::drawing::HatchStyle_SINGLE :
133 case css::drawing::HatchStyle_DOUBLE :
148 case css::drawing::LineJoint_BEVEL :
152 case css::drawing::LineJoint_MIDDLE :
153 case css::drawing::LineJoint_MITER :
157 case css::drawing::LineJoint_ROUND :
217 attribute::SdrGlowAttribute createNewSdrGlowAttribute(
const SfxItemSet& rSet)
221 return attribute::SdrGlowAttribute();
225 aColor.SetAlpha(255 - std::round(nTransparency / 100.0 * 255.0));
227 attribute::SdrGlowAttribute glowAttr{ nRadius, aColor };
231 sal_Int32 getSoftEdgeRadius(
const SfxItemSet& rSet)
245 if(drawing::LineStyle_NONE != eStyle)
249 if(nTransparence > 100)
254 if(100 != nTransparence)
260 ::std::vector< double > aDotDashArray;
261 double fFullDotDashLen(0.0);
263 if(drawing::LineStyle_DASH == eStyle)
269 fFullDotDashLen = rDash.
CreateDotDashArray(aDotDashArray,
static_cast<double>(nWidth));
274 LineJointToB2DLineJoin(eJoint),
275 static_cast<double>(nWidth),
276 static_cast<double>(nTransparence) * 0.01,
279 std::move(aDotDashArray),
295 double fStartWidth(0.0);
296 double fEndWidth(0.0);
297 bool bStartActive(
false);
298 bool bEndActive(
false);
299 bool bStartCentered(
true);
300 bool bEndCentered(
true);
304 if(nTempStartWidth < 0)
306 fStartWidth = (
static_cast<double>(-nTempStartWidth) * fWidth) * 0.01;
310 fStartWidth =
static_cast<double>(nTempStartWidth);
313 if(0.0 != fStartWidth)
327 if(nTempEndWidth < 0)
329 fEndWidth = (
static_cast<double>(-nTempEndWidth) * fWidth) * 0.01;
333 fEndWidth =
static_cast<double>(nTempEndWidth);
348 if(bStartActive || bEndActive)
351 aStartPolyPolygon, aEndPolyPolygon, fStartWidth, fEndWidth,
352 bStartActive, bEndActive, bStartCentered, bEndCentered);
366 if(nTransparence > 100)
375 if(nFillTransparence > 100)
377 nFillTransparence = 100;
380 if(nTransparence == nFillTransparence)
390 if(100 != nTransparence)
417 if(nTransparence > 100)
422 if(drawing::FillStyle_NONE == eStyle)
425 const bool bSlideBackgroundFill(aBckItem.
GetValue());
427 if(bSlideBackgroundFill)
435 if(drawing::FillStyle_NONE != eStyle)
437 if(100 != nTransparence)
448 const bool bCompletelyTransparent(0xff == nStartLuminance && 0xff == nEndLuminance);
450 if(bCompletelyTransparent)
457 if(100 != nTransparence)
471 case drawing::FillStyle_GRADIENT :
479 if(nStartIntens != 100)
482 aStart =
interpolate(aBlack, aStart,
static_cast<double>(nStartIntens) * 0.01);
489 if(nEndIntens != 100)
492 aEnd =
interpolate(aBlack, aEnd,
static_cast<double>(nEndIntens) * 0.01);
497 static_cast<double>(aXGradient.
GetBorder()) * 0.01,
498 static_cast<double>(aXGradient.
GetXOffset()) * 0.01,
499 static_cast<double>(aXGradient.
GetYOffset()) * 0.01,
507 case drawing::FillStyle_HATCH :
522 case drawing::FillStyle_BITMAP :
530 static_cast<double>(nTransparence) * 0.01,
538 if(nTransparence == 100)
558 const sal_Int32* pLeft,
559 const sal_Int32* pUpper,
560 const sal_Int32* pRight,
561 const sal_Int32* pLower)
572 bool bInEditMode(
false);
591 aOutlinerParaObject = *pTempObj;
606 const bool bWrongSpell(rDrawTextOutliner.
GetControlWord() & EEControlBits::ONLINESPELLING);
644 const bool bCompletelyTransparent(0xff == nStartLuminance && 0xff == nEndLuminance);
645 const bool bNotTransparent(0x00 == nStartLuminance && 0x00 == nEndLuminance);
651 if(!bNotTransparent && !bCompletelyTransparent)
653 const double fStartLum(nStartLuminance / 255.0);
654 const double fEndLum(nEndLuminance / 255.0);
658 static_cast<double>(rGradient.
GetBorder()) * 0.01,
659 static_cast<double>(rGradient.
GetXOffset()) * 0.01,
660 static_cast<double>(rGradient.
GetYOffset()) * 0.01,
675 if (aGraphic.
GetType() == GraphicType::Default && !aOriginURL.isEmpty())
681 if(GraphicType::Bitmap != aGraphic.
GetType() && GraphicType::GdiMetafile != aGraphic.
GetType())
684 OSL_ENSURE(
false,
"No fill graphic in SfxItemSet (!)");
693 if(GraphicType::Bitmap == aGraphic.
GetType())
704 OSL_ENSURE(
false,
"Graphic has no size in SfxItemSet (!)");
769 if(!bSuppressText && pText)
777 const sal_Int32 nSoftEdgeRadius(getSoftEdgeRadius(
rSet));
789 bool bFontworkHideContour(
false);
802 bFontworkHideContour =
true;
807 if(!bFontworkHideContour)
823 const sal_Int32 nSoftEdgeRadius(getSoftEdgeRadius(
rSet));
826 aGlow, nSoftEdgeRadius);
842 bool bFontworkHideContour(
false);
853 bFontworkHideContour =
true;
857 if(!bFontworkHideContour)
890 const sal_Int32 nSoftEdgeRadius(getSoftEdgeRadius(
rSet));
893 aShadow, aFillFloatTransGradient,
894 aText, aGlow, nSoftEdgeRadius);
934 aLine, aFill, aLineStartEnd, aShadow, aFillFloatTransGradient);
943 css::drawing::ProjectionMode aProjectionMode(css::drawing::ProjectionMode_PARALLEL);
946 if(1 == nProjectionValue)
948 aProjectionMode = css::drawing::ProjectionMode_PERSPECTIVE;
955 const double fShadowSlant(
959 css::drawing::ShadeMode aShadeMode(css::drawing::ShadeMode_FLAT);
964 aShadeMode = css::drawing::ShadeMode_PHONG;
966 else if(2 == nShadeValue)
968 aShadeMode = css::drawing::ShadeMode_SMOOTH;
970 else if(3 == nShadeValue)
972 aShadeMode = css::drawing::ShadeMode_DRAFT;
984 ::std::vector< attribute::Sdr3DLightAttribute > aLightVector;
990 aLightVector.emplace_back(aColor,
aDirection,
true);
997 aLightVector.emplace_back(aColor,
aDirection,
false);
1004 aLightVector.emplace_back(aColor,
aDirection,
false);
1011 aLightVector.emplace_back(aColor,
aDirection,
false);
1018 aLightVector.emplace_back(aColor,
aDirection,
false);
1025 aLightVector.emplace_back(aColor,
aDirection,
false);
1032 aLightVector.emplace_back(aColor,
aDirection,
false);
1039 aLightVector.emplace_back(aColor,
aDirection,
false);
1051 rfCornerRadiusX = rfCornerRadiusY =
static_cast<double>(nRadius);
1053 if(0.0 != rfCornerRadiusX)
1055 const double fHalfObjectWidth(rObjectRange.
getWidth() * 0.5);
1057 if(0.0 != fHalfObjectWidth)
1059 if(rfCornerRadiusX < 0.0)
1061 rfCornerRadiusX = 0.0;
1064 if(rfCornerRadiusX > fHalfObjectWidth)
1066 rfCornerRadiusX = fHalfObjectWidth;
1069 rfCornerRadiusX /= fHalfObjectWidth;
1073 rfCornerRadiusX = 0.0;
1077 if(0.0 == rfCornerRadiusY)
1080 const double fHalfObjectHeight(rObjectRange.
getHeight() * 0.5);
1082 if(0.0 != fHalfObjectHeight)
1084 if(rfCornerRadiusY < 0.0)
1086 rfCornerRadiusY = 0.0;
1089 if(rfCornerRadiusY > fHalfObjectHeight)
1091 rfCornerRadiusY = fHalfObjectHeight;
1094 rfCornerRadiusY /= fHalfObjectHeight;
1098 rfCornerRadiusY = 0.0;
1106 const sal_Int32* pLeft,
1107 const sal_Int32* pUpper,
1108 const sal_Int32* pRight,
1109 const sal_Int32* pLower)
1114 bool bFontworkHideContour(
false);
1125 bFontworkHideContour =
true;
1129 if(!bFontworkHideContour)
static OutputDevice * GetDefaultDevice()
const Size & GetSizePixel() const
sal_uInt8 GetLuminance() const
basegfx::BColor getBColor() const
OUString getOriginURL() const
void SetPrefMapMode(const MapMode &rPrefMapMode)
GraphicType GetType() const
BitmapEx GetBitmapEx(const GraphicConversionParameters &rParameters=GraphicConversionParameters()) const
MapMode GetPrefMapMode() const
void SetPrefSize(const Size &rPrefSize)
void setOriginURL(OUString const &rOriginURL)
MapUnit GetMapUnit() const
EEControlBits GetControlWord() const
SAL_WARN_UNUSED_RESULT Point PixelToLogic(const Point &rDevicePt) const
SAL_WARN_UNUSED_RESULT Point LogicToLogic(const Point &rPtSource, const MapMode *pMapModeSource, const MapMode *pMapModeDest) const
SdrOutliner & GetDrawOutliner(const SdrTextObj *pObj=nullptr) const
SdrModel & getSdrModelFromSdrObject() const
tools::Long GetTextLowerDistance() const
Bottom inner spacing to borders.
SdrTextHorzAdjust GetTextHorizontalAdjust(const SfxItemSet &rSet) const
bool IsAutoFit() const
returns true if the PPT autofit of text into shape bounds is enabled. implies IsFitToSize()==false!
bool IsFitToSize() const
returns true if the old feature for fitting shape content should into shape is enabled....
bool IsInEditMode() const
virtual SdrText * getActiveText() const
returns the currently active text.
tools::Long GetTextLeftDistance() const
Left inner spacing to borders
std::optional< OutlinerParaObject > CreateEditOutlinerParaObject() const
tools::Long GetTextRightDistance() const
Right inner spacing to borders
virtual sal_Int32 getTextCount() const override
returns the number of texts available for this object.
SdrTextVertAdjust GetTextVerticalAdjust(const SfxItemSet &rSet) const
SdrTextAniKind GetTextAniKind() const
tools::Long GetTextUpperDistance() const
Top inner spacing to borders.
OutlinerParaObject * GetOutlinerParaObject()
SdrTextObj & GetObject() const
virtual MapUnit GetMetric(sal_uInt16 nWhich) const
SfxItemPool * GetPool() const
const T * GetItemIfSet(TypedWhichId< T > nWhich, bool bSrchInParent=true) const
const SfxPoolItem * GetItem(sal_uInt16 nWhich, bool bSearchInParent=true) const
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
constexpr tools::Long Height() const
constexpr tools::Long Width() const
double CreateDotDashArray(::std::vector< double > &rDotDashArray, double fLineWidth) const
sal_uInt16 GetDots() const
sal_uInt16 GetDashes() const
const XGradient & GetGradientValue() const
Item to enable slide background for filled objects.
const Color & GetEndColor() const
sal_uInt16 GetYOffset() const
sal_uInt16 GetStartIntens() const
css::awt::GradientStyle GetGradientStyle() const
const Color & GetStartColor() const
sal_uInt16 GetBorder() const
sal_uInt16 GetEndIntens() const
Degree10 GetAngle() const
sal_uInt16 GetXOffset() const
const Color & GetColor() const
tools::Long GetDistance() const
css::drawing::HatchStyle GetHatchStyle() const
Degree10 GetAngle() const
B2DPolygon const & getB2DPolygon(sal_uInt32 nIndex) const
bool isHideContour() const
const SdrFormTextAttribute & getSdrFormTextAttribute() const
constexpr double deg2rad(double v)
attribute::SdrLineFillEffectsTextAttribute createNewSdrLineFillEffectsTextAttribute(const SfxItemSet &rSet, const SdrText *pText, bool bHasContent)
attribute::SdrLineAttribute createNewSdrLineAttribute(const SfxItemSet &rSet)
attribute::SdrLineFillShadowAttribute3D createNewSdrLineFillShadowAttribute(const SfxItemSet &rSet, bool bSuppressFill)
attribute::SdrSceneAttribute createNewSdrSceneAttribute(const SfxItemSet &rSet)
attribute::FillGradientAttribute createNewTransparenceGradientAttribute(const SfxItemSet &rSet)
attribute::SdrFillAttribute createNewSdrFillAttribute(const SfxItemSet &rSet)
attribute::SdrLightingAttribute createNewSdrLightingAttribute(const SfxItemSet &rSet)
attribute::SdrShadowAttribute createNewSdrShadowAttribute(const SfxItemSet &rSet)
void calculateRelativeCornerRadius(sal_Int32 nRadius, const basegfx::B2DRange &rObjectRange, double &rfCornerRadiusX, double &rfCornerRadiusY)
attribute::SdrEffectsTextAttribute createNewSdrEffectsTextAttribute(const SfxItemSet &rSet, const SdrText *pText, bool bSuppressText)
attribute::SdrLineEffectsTextAttribute createNewSdrLineEffectsTextAttribute(const SfxItemSet &rSet, const SdrText *pText)
attribute::SdrLineStartEndAttribute createNewSdrLineStartEndAttribute(const SfxItemSet &rSet, double fWidth)
attribute::SdrTextAttribute createNewSdrTextAttribute(const SfxItemSet &rSet, const SdrText &rText, const sal_Int32 *pLeft, const sal_Int32 *pUpper, const sal_Int32 *pRight, const sal_Int32 *pLower)
attribute::SdrFillGraphicAttribute createNewSdrFillGraphicAttribute(const SfxItemSet &rSet)
attribute::SdrFillTextAttribute createNewSdrFillTextAttribute(const SfxItemSet &rSet, const SdrText *pText, const sal_Int32 *pLeft, const sal_Int32 *pUpper, const sal_Int32 *pRight, const sal_Int32 *pLower)
HSLColor interpolate(const HSLColor &rFrom, const HSLColor &rTo, double t, bool bCCW)
Graphic loadFromURL(OUString const &rURL, weld::Window *pParentWin)
SdrTextAniKind
Animation type for text frame.
@ Slide
scroll back and forth
@ Alternate
scroll through
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_8(SDRATTR_3DSCENE_FIRST+20)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_4(SDRATTR_3DSCENE_FIRST+16)
constexpr TypedWhichId< SdrOnOffItem > SDRATTR_SHADOW(SDRATTR_SHADOW_FIRST+0)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_1(SDRATTR_3DSCENE_FIRST+21)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_3(SDRATTR_3DSCENE_FIRST+23)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_1(SDRATTR_3DSCENE_FIRST+13)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_2(SDRATTR_3DSCENE_FIRST+22)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_SHADOWSIZEX(SDRATTR_SHADOW_FIRST+7)
constexpr TypedWhichId< Svx3DPerspectiveItem > SDRATTR_3DSCENE_PERSPECTIVE(SDRATTR_3DSCENE_FIRST+0)
constexpr TypedWhichId< SdrPercentItem > SDRATTR_SHADOWTRANSPARENCE(SDRATTR_SHADOW_FIRST+4)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_TWO_SIDED_LIGHTING(SDRATTR_3DSCENE_FIRST+3)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_1(SDRATTR_3DSCENE_FIRST+4)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_3(SDRATTR_3DSCENE_FIRST+15)
constexpr TypedWhichId< SdrPercentItem > SDRATTR_GLOW_TRANSPARENCY(SDRATTR_GLOW_FIRST+2)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_5(SDRATTR_3DSCENE_FIRST+8)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_5(SDRATTR_3DSCENE_FIRST+17)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_SHADOWYDIST(SDRATTR_SHADOW_FIRST+3)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_7(SDRATTR_3DSCENE_FIRST+27)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_6(SDRATTR_3DSCENE_FIRST+26)
constexpr TypedWhichId< SdrTextFixedCellHeightItem > SDRATTR_TEXT_USEFIXEDCELLHEIGHT(SDRATTR_MISC_FIRST+23)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_6(SDRATTR_3DSCENE_FIRST+9)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_4(SDRATTR_3DSCENE_FIRST+7)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_7(SDRATTR_3DSCENE_FIRST+10)
constexpr TypedWhichId< Svx3DShadeModeItem > SDRATTR_3DSCENE_SHADE_MODE(SDRATTR_3DSCENE_FIRST+30)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_6(SDRATTR_3DSCENE_FIRST+18)
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DSCENE_SHADOW_SLANT(SDRATTR_3DSCENE_FIRST+29)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_AMBIENTCOLOR(SDRATTR_3DSCENE_FIRST+12)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DSCENE_DISTANCE(SDRATTR_3DSCENE_FIRST+1)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_2(SDRATTR_3DSCENE_FIRST+14)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_GLOW_RADIUS(SDRATTR_GLOW_FIRST+0)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_SHADOWBLUR(SDRATTR_SHADOW_FIRST+9)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_8(SDRATTR_3DSCENE_FIRST+11)
constexpr TypedWhichId< XColorItem > SDRATTR_GLOW_COLOR(SDRATTR_GLOW_FIRST+1)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_SOFTEDGE_RADIUS(SDRATTR_SOFTEDGE_FIRST+0)
constexpr TypedWhichId< XColorItem > SDRATTR_SHADOWCOLOR(SDRATTR_SHADOW_FIRST+1)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_8(SDRATTR_3DSCENE_FIRST+28)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_4(SDRATTR_3DSCENE_FIRST+24)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_5(SDRATTR_3DSCENE_FIRST+25)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_2(SDRATTR_3DSCENE_FIRST+5)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_SHADOWSIZEY(SDRATTR_SHADOW_FIRST+8)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_3(SDRATTR_3DSCENE_FIRST+6)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_SHADOWXDIST(SDRATTR_SHADOW_FIRST+2)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_7(SDRATTR_3DSCENE_FIRST+19)
constexpr TypedWhichId< SdrOnOffItem > SDRATTR_TEXT_CONTOURFRAME(SDRATTR_MISC_FIRST+21)
css::drawing::Direction3D aDirection
constexpr TypedWhichId< XFillBmpPosOffsetYItem > XATTR_FILLBMP_POSOFFSETY(XATTR_FILL_FIRST+18)
constexpr TypedWhichId< XGradientStepCountItem > XATTR_GRADIENTSTEPCOUNT(XATTR_FILL_FIRST+6)
constexpr TypedWhichId< XFillBmpPosItem > XATTR_FILLBMP_POS(XATTR_FILL_FIRST+8)
constexpr TypedWhichId< XFillUseSlideBackgroundItem > XATTR_FILLUSESLIDEBACKGROUND(XATTR_FILL_FIRST+20)
constexpr TypedWhichId< XLineJointItem > XATTR_LINEJOINT(XATTR_LINE_FIRST+11)
constexpr TypedWhichId< XFillColorItem > XATTR_FILLCOLOR(XATTR_FILL_FIRST+1)
constexpr TypedWhichId< XFillBmpTileOffsetXItem > XATTR_FILLBMP_TILEOFFSETX(XATTR_FILL_FIRST+14)
constexpr TypedWhichId< XFillTransparenceItem > XATTR_FILLTRANSPARENCE(XATTR_FILL_FIRST+5)
constexpr TypedWhichId< XFormTextStyleItem > XATTR_FORMTXTSTYLE(XATTR_TEXT_FIRST)
constexpr TypedWhichId< XLineColorItem > XATTR_LINECOLOR(XATTR_LINE_FIRST+3)
constexpr TypedWhichId< XLineStartWidthItem > XATTR_LINESTARTWIDTH(XATTR_LINE_FIRST+6)
constexpr TypedWhichId< SfxMetricItem > XATTR_FILLBMP_SIZEX(XATTR_FILL_FIRST+9)
constexpr TypedWhichId< XLineCapItem > XATTR_LINECAP(XATTR_LINE_FIRST+12)
constexpr TypedWhichId< XFormTextHideFormItem > XATTR_FORMTXTHIDEFORM(XATTR_TEXT_FIRST+10)
constexpr TypedWhichId< XLineDashItem > XATTR_LINEDASH(XATTR_LINE_FIRST+1)
constexpr TypedWhichId< XLineWidthItem > XATTR_LINEWIDTH(XATTR_LINE_FIRST+2)
constexpr TypedWhichId< XLineEndItem > XATTR_LINEEND(XATTR_LINE_FIRST+5)
constexpr TypedWhichId< XFillBmpPosOffsetXItem > XATTR_FILLBMP_POSOFFSETX(XATTR_FILL_FIRST+17)
constexpr TypedWhichId< XFillBmpTileOffsetYItem > XATTR_FILLBMP_TILEOFFSETY(XATTR_FILL_FIRST+15)
constexpr TypedWhichId< XLineStartItem > XATTR_LINESTART(XATTR_LINE_FIRST+4)
constexpr TypedWhichId< XFillBmpSizeYItem > XATTR_FILLBMP_SIZEY(XATTR_FILL_FIRST+10)
constexpr TypedWhichId< XFillBmpStretchItem > XATTR_FILLBMP_STRETCH(XATTR_FILL_FIRST+16)
constexpr TypedWhichId< XLineEndCenterItem > XATTR_LINEENDCENTER(XATTR_LINE_FIRST+9)
constexpr TypedWhichId< XFillHatchItem > XATTR_FILLHATCH(XATTR_FILL_FIRST+3)
constexpr TypedWhichId< XFillBmpSizeLogItem > XATTR_FILLBMP_SIZELOG(XATTR_FILL_FIRST+13)
constexpr TypedWhichId< XLineStartCenterItem > XATTR_LINESTARTCENTER(XATTR_LINE_FIRST+8)
constexpr TypedWhichId< XFillBmpTileItem > XATTR_FILLBMP_TILE(XATTR_FILL_FIRST+7)
constexpr TypedWhichId< XFillBitmapItem > XATTR_FILLBITMAP(XATTR_FILL_FIRST+4)
constexpr TypedWhichId< XFillBackgroundItem > XATTR_FILLBACKGROUND(XATTR_FILL_FIRST+19)
constexpr TypedWhichId< XFillFloatTransparenceItem > XATTR_FILLFLOATTRANSPARENCE(XATTR_FILL_FIRST+11)
constexpr TypedWhichId< XLineStyleItem > XATTR_LINESTYLE(XATTR_LINE_FIRST)
constexpr TypedWhichId< XFillStyleItem > XATTR_FILLSTYLE(XATTR_FILL_FIRST)
constexpr TypedWhichId< XFillGradientItem > XATTR_FILLGRADIENT(XATTR_FILL_FIRST+2)
constexpr TypedWhichId< XLineEndWidthItem > XATTR_LINEENDWIDTH(XATTR_LINE_FIRST+7)
constexpr TypedWhichId< XLineTransparenceItem > XATTR_LINETRANSPARENCE(XATTR_LINE_FIRST+10)