24 #include <com/sun/star/drawing/PolyPolygonBezierCoords.hpp>
25 #include <com/sun/star/drawing/Hatch.hpp>
26 #include <com/sun/star/drawing/LineStyle.hpp>
27 #include <com/sun/star/drawing/LineDash.hpp>
28 #include <com/sun/star/drawing/DashStyle.hpp>
29 #include <com/sun/star/drawing/FillStyle.hpp>
30 #include <com/sun/star/awt/Gradient.hpp>
31 #include <com/sun/star/uno/Sequence.hxx>
32 #include <com/sun/star/beans/PropertyValue.hpp>
38 #include <osl/diagnose.h>
45 #include <svx/strings.hrc>
87 #include <boost/property_tree/json_parser.hpp>
88 #include <libxml/xmlwriter.h>
108 nPalIndex(rNameOrIndex.nPalIndex)
114 return ( SfxStringItem::operator==(rItem) &&
130 bool bForceNew =
false;
137 if (!aUniqueName.isEmpty() && pPool1)
147 if( !pCompareValueFunc( pNameOrIndex, pCheckItem ) )
160 if (aUniqueName.isEmpty())
162 sal_Int32 nUserIndex = 1;
163 const OUString aUser(
SvxResId(pPrefixResId) +
" ");
167 const int nCount = pDefaults->Count();
169 for( nIndex = 0; nIndex < nCount; nIndex++ )
180 const GraphicObject& rGraphicObjectA(static_cast<const XFillBitmapItem*>(pCheckItem)->GetGraphicObject());
181 const GraphicObject& rGraphicObjectB(static_cast<const XBitmapEntry*>(pEntry)->GetGraphicObject());
183 bFound = (rGraphicObjectA == rGraphicObjectB);
187 bFound =
static_cast<const XLineDashItem*
>(pCheckItem)->GetDashValue() ==
static_cast<const XDashEntry*
>(pEntry)->GetDash();
190 bFound =
static_cast<const XLineStartItem*
>(pCheckItem)->GetLineStartValue() ==
static_cast<const XLineEndEntry*
>(pEntry)->GetLineEnd();
193 bFound =
static_cast<const XLineEndItem*
>(pCheckItem)->GetLineEndValue() ==
static_cast<const XLineEndEntry*
>(pEntry)->GetLineEnd();
199 bFound =
static_cast<const XFillHatchItem*
>(pCheckItem)->GetHatchValue() ==
static_cast<const XHatchEntry*
>(pEntry)->GetHatch();
205 aUniqueName = pEntry->
GetName();
211 if(aEntryName.getLength() >= aUser.getLength())
213 sal_Int32 nThisIndex = aEntryName.copy( aUser.getLength() ).
toInt32();
214 if( nThisIndex >= nUserIndex )
215 nUserIndex = nThisIndex + 1;
222 if (aUniqueName.isEmpty() && pPool1)
228 if( !pNameOrIndex->
GetName().isEmpty() )
230 if( !bForceNew && pCompareValueFunc( pNameOrIndex, pCheckItem ) )
231 return pNameOrIndex->
GetName();
233 if( pNameOrIndex->
GetName().startsWith( aUser ) )
235 sal_Int32 nThisIndex = pNameOrIndex->
GetName().copy( aUser.getLength() ).
toInt32();
236 if( nThisIndex >= nUserIndex )
237 nUserIndex = nThisIndex + 1;
241 aUniqueName = aUser + OUString::number( nUserIndex );
250 xmlTextWriterStartElement(pWriter, BAD_CAST(
"NameOrIndex"));
251 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"whichId"), BAD_CAST(OString::number(
Which()).getStr()));
252 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"isIndex"), BAD_CAST(OString::boolean(
IsIndex()).getStr()));
253 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"name"), BAD_CAST(
GetName().toUtf8().getStr()));
254 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"index"), BAD_CAST(OString::number(
nPalIndex).getStr()));
255 xmlTextWriterEndElement(pWriter);
291 return ( NameOrIndex::operator==(rItem) &&
292 static_cast<const XColorItem&>(rItem).
aColor ==
aColor );
319 xmlTextWriterStartElement(pWriter, BAD_CAST(
"XColorItem"));
322 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"whichId"), BAD_CAST(
"SDRATTR_SHADOWCOLOR"));
324 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"aColor"),
329 xmlTextWriterEndElement(pWriter);
357 const char* pId =
nullptr;
361 case css::drawing::LineStyle_NONE:
362 pId = RID_SVXSTR_INVISIBLE;
364 case css::drawing::LineStyle_SOLID:
365 pId = RID_SVXSTR_SOLID;
377 css::drawing::LineStyle eLS =
GetValue();
384 css::drawing::LineStyle eLS;
391 eLS =
static_cast<css::drawing::LineStyle
>(nLS);
403 XDash::XDash(css::drawing::DashStyle eTheDash, sal_uInt16 nTheDots, sal_uInt32 nTheDotLen,
404 sal_uInt16 nTheDashes, sal_uInt32 nTheDashLen, sal_uInt32 nTheDistance) :
409 nDashLen(nTheDashLen),
410 nDistance(nTheDistance)
431 double fFullDotDashLen(0.0);
433 rDotDashArray.resize( nNumDotDashArray, 0.0 );
436 double fDashDotDistance =
static_cast<double>(
GetDistance());
437 double fSingleDashLen =
static_cast<double>(
GetDashLen());
438 double fSingleDotLen =
static_cast<double>(
GetDotLen());
440 if (fLineWidth == 0.0)
443 if(
GetDashStyle() == css::drawing::DashStyle_RECTRELATIVE ||
GetDashStyle() == css::drawing::DashStyle_ROUNDRELATIVE)
445 double fFactor = fLineWidth / 100.0;
452 fSingleDashLen *= fFactor;
457 fSingleDashLen = fLineWidth;
466 fSingleDotLen *= fFactor;
471 fSingleDotLen = fLineWidth;
480 fDashDotDistance *= fFactor;
485 fDashDotDistance = fLineWidth;
505 if(fSingleDashLen < fLineWidth)
507 fSingleDashLen = fLineWidth;
525 if(fSingleDotLen < fLineWidth)
527 fSingleDotLen = fLineWidth;
545 if(fDashDotDistance < fLineWidth)
547 fDashDotDistance = fLineWidth;
555 rDotDashArray[nIns++] = fSingleDotLen;
556 fFullDotDashLen += fSingleDotLen;
557 rDotDashArray[nIns++] = fDashDotDistance;
558 fFullDotDashLen += fDashDotDistance;
563 rDotDashArray[nIns++] = fSingleDashLen;
564 fFullDotDashLen += fSingleDashLen;
565 rDotDashArray[nIns++] = fDashDotDistance;
566 fFullDotDashLen += fDashDotDistance;
569 return fFullDotDashLen;
599 return ( NameOrIndex::operator==(rItem) &&
600 aDash == static_cast<const XLineDashItem&>(rItem).
aDash );
635 uno::Sequence< beans::PropertyValue > aPropSeq( 2 );
637 css::drawing::LineDash aLineDash;
640 aLineDash.Style =
static_cast<css::drawing::DashStyle
>(
static_cast<sal_uInt16
>(rXD.
GetDashStyle()));
641 aLineDash.Dots = rXD.
GetDots();
647 aPropSeq[0].Name =
"Name";
649 aPropSeq[1].Name =
"LineDash";
650 aPropSeq[1].Value <<= aLineDash;
665 css::drawing::LineDash aLineDash;
667 aLineDash.Style =
static_cast<css::drawing::DashStyle
>(
static_cast<sal_uInt16
>(rXD.
GetDashStyle()));
668 aLineDash.Dots = rXD.
GetDots();
681 rVal <<= static_cast<css::drawing::DashStyle>(
static_cast<sal_Int16
>(rXD.
GetDashStyle()));
720 default: OSL_FAIL(
"Wrong MemberId!");
return false;
734 uno::Sequence< beans::PropertyValue > aPropSeq;
736 if ( rVal >>= aPropSeq )
738 css::drawing::LineDash aLineDash;
740 bool bLineDash(
false );
741 for (
const auto& rProp : std::as_const(aPropSeq) )
743 if ( rProp.Name ==
"Name" )
744 rProp.Value >>= aName;
745 else if ( rProp.Name ==
"LineDash" )
747 if ( rProp.Value >>= aLineDash )
757 aXDash.
SetDashStyle(static_cast<css::drawing::DashStyle>(static_cast<sal_uInt16>(aLineDash.Style)));
758 aXDash.
SetDots(aLineDash.Dots);
779 if (!(rVal >>= aName))
787 css::drawing::LineDash aLineDash;
788 if(!(rVal >>= aLineDash))
793 aXDash.
SetDashStyle(static_cast<css::drawing::DashStyle>(static_cast<sal_uInt16>(aLineDash.Style)));
794 aXDash.
SetDots(aLineDash.Dots);
809 sal_Int16 nVal = sal_Int16();
814 aXDash.
SetDashStyle(static_cast<css::drawing::DashStyle>(static_cast<sal_uInt16>(nVal)));
827 sal_Int16 nVal = sal_Int16();
887 return std::make_unique<XLineDashItem>( aUniqueName,
aDash );
914 eCoreUnit, ePresUnit, &rIntl) +
978 if(!(rVal >>= nValue))
1042 css::drawing::PolyPolygonBezierCoords aBezier;
1061 if( rVal.hasValue() )
1063 auto pCoords = o3tl::tryAccess<css::drawing::PolyPolygonBezierCoords>(
1068 if( pCoords->Coordinates.getLength() > 0 )
1087 std::unique_ptr<XLineStartItem> pTempItem;
1090 OUString aUniqueName(
GetName() );
1095 if( aUniqueName.isEmpty() )
1099 return std::make_unique<XLineStartItem>(
"",
maPolyPolygon );
1111 pLineStartItem = pTempItem.get();
1115 bool bForceNew =
false;
1121 if (!aUniqueName.isEmpty())
1127 if( pItem && ( pItem->GetName() == pLineStartItem->
GetName() ) )
1134 aUniqueName.clear();
1147 if( pItem && ( pItem->GetName() == pLineStartItem->
GetName() ) )
1154 aUniqueName.clear();
1164 if( !aUniqueName.isEmpty() && pPool2)
1170 if( pItem && ( pItem->GetName() == pLineStartItem->
GetName() ) )
1177 aUniqueName.clear();
1190 if( pItem && ( pItem->GetName() == pLineStartItem->
GetName() ) )
1197 aUniqueName.clear();
1208 if( aUniqueName.isEmpty() )
1210 bool bFoundExisting =
false;
1212 sal_Int32 nUserIndex = 1;
1213 const OUString aUser(
SvxResId(RID_SVXSTR_LINEEND));
1219 if (pItem && !pItem->GetName().isEmpty())
1221 if (!bForceNew && pItem->GetLineStartValue() == pLineStartItem->
GetLineStartValue())
1223 aUniqueName = pItem->
GetName();
1224 bFoundExisting =
true;
1228 if (pItem->GetName().startsWith(aUser))
1230 sal_Int32 nThisIndex = pItem->GetName().copy(aUser.getLength()).
toInt32();
1231 if (nThisIndex >= nUserIndex)
1232 nUserIndex = nThisIndex + 1;
1241 if (pItem && !pItem->GetName().isEmpty())
1243 if (!bForceNew && pItem->GetLineEndValue() == pLineStartItem->
GetLineStartValue())
1245 aUniqueName = pItem->
GetName();
1246 bFoundExisting =
true;
1250 if (pItem->GetName().startsWith(aUser))
1252 sal_Int32 nThisIndex = pItem->GetName().copy(aUser.getLength()).
toInt32();
1253 if (nThisIndex >= nUserIndex)
1254 nUserIndex = nThisIndex + 1;
1259 if( !bFoundExisting )
1261 aUniqueName = aUser +
" " + OUString::number( nUserIndex );
1266 if( aUniqueName !=
GetName() || pTempItem )
1270 pTempItem->SetName( aUniqueName );
1275 return std::make_unique<XLineStartItem>( aUniqueName,
maPolyPolygon );
1326 std::unique_ptr<XLineEndItem> pTempItem;
1329 OUString aUniqueName(
GetName() );
1334 if( aUniqueName.isEmpty() )
1349 pTempItem.reset(
new XLineEndItem( aUniqueName, aNew ));
1350 pLineEndItem = pTempItem.get();
1354 bool bForceNew =
false;
1360 if (!aUniqueName.isEmpty())
1366 if( pItem && ( pItem->GetName() == pLineEndItem->
GetName() ) )
1373 aUniqueName.clear();
1386 if( pItem && ( pItem->GetName() == pLineEndItem->
GetName() ) )
1393 aUniqueName.clear();
1403 if( !aUniqueName.isEmpty() && pPool2)
1409 if( pItem && ( pItem->GetName() == pLineEndItem->
GetName() ) )
1416 aUniqueName.clear();
1429 if( pItem && ( pItem->GetName() == pLineEndItem->
GetName() ) )
1436 aUniqueName.clear();
1447 if( aUniqueName.isEmpty() )
1449 bool bFoundExisting =
false;
1451 sal_Int32 nUserIndex = 1;
1452 const OUString aUser(
SvxResId(RID_SVXSTR_LINEEND));
1458 if (pItem && !pItem->GetName().isEmpty())
1460 if (!bForceNew && pItem->GetLineStartValue() == pLineEndItem->
GetLineEndValue())
1462 aUniqueName = pItem->
GetName();
1463 bFoundExisting =
true;
1467 if (pItem->GetName().startsWith(aUser))
1469 sal_Int32 nThisIndex = pItem->GetName().copy(aUser.getLength()).
toInt32();
1470 if (nThisIndex >= nUserIndex)
1471 nUserIndex = nThisIndex + 1;
1480 if (pItem && !pItem->GetName().isEmpty())
1482 if (!bForceNew && pItem->GetLineEndValue() == pLineEndItem->
GetLineEndValue())
1484 aUniqueName = pItem->
GetName();
1485 bFoundExisting =
true;
1489 if (pItem->GetName().startsWith(aUser))
1491 sal_Int32 nThisIndex = pItem->GetName().copy(aUser.getLength()).
toInt32();
1492 if (nThisIndex >= nUserIndex)
1493 nUserIndex = nThisIndex + 1;
1498 if( !bFoundExisting )
1500 aUniqueName = aUser +
" " + OUString::number( nUserIndex );
1505 if( aUniqueName !=
GetName() || pTempItem )
1509 pTempItem->SetName( aUniqueName );
1514 return std::make_unique<XLineEndItem>( aUniqueName,
maPolyPolygon );
1543 css::drawing::PolyPolygonBezierCoords aBezier;
1561 if( rVal.hasValue() )
1563 auto pCoords = o3tl::tryAccess<css::drawing::PolyPolygonBezierCoords>(
1568 if( pCoords->Coordinates.getLength() > 0 )
1599 eCoreUnit, ePresUnit, &rIntl) +
1637 eCoreUnit, ePresUnit, &rIntl) +
1674 rText =
SvxResId(
GetValue() ? RID_SVXSTR_CENTERED : RID_SVXSTR_NOTCENTERED);
1713 rText =
SvxResId(
GetValue() ? RID_SVXSTR_CENTERED : RID_SVXSTR_NOTCENTERED);
1759 const char* pId =
nullptr;
1763 case drawing::FillStyle_NONE:
1764 pId = RID_SVXSTR_INVISIBLE;
1766 case drawing::FillStyle_SOLID:
1767 pId = RID_SVXSTR_SOLID;
1769 case drawing::FillStyle_GRADIENT:
1770 pId = RID_SVXSTR_GRADIENT;
1772 case drawing::FillStyle_HATCH:
1773 pId = RID_SVXSTR_HATCH;
1775 case drawing::FillStyle_BITMAP:
1776 pId = RID_SVXSTR_BITMAP;
1793 css::drawing::FillStyle eFS =
GetValue();
1802 css::drawing::FillStyle eFS;
1809 eFS =
static_cast<css::drawing::FillStyle
>(nFS);
1819 xmlTextWriterStartElement(pWriter, BAD_CAST(
"XFillStyleItem"));
1820 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"whichId"), BAD_CAST(OString::number(
Which()).getStr()));
1821 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"value"), BAD_CAST(OString::number(static_cast<sal_Int16>(
GetValue())).getStr()));
1823 OUString aPresentation;
1825 GetPresentation(SfxItemPresentation::Nameless, MapUnit::Map100thMM, MapUnit::Map100thMM, aPresentation, aIntlWrapper);
1826 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"presentation"), BAD_CAST(aPresentation.toUtf8().getStr()));
1828 xmlTextWriterEndElement(pWriter);
1836 aTree.put(
"commandName",
".uno:FillStyle");
1842 case drawing::FillStyle_NONE:
1845 case drawing::FillStyle_SOLID:
1848 case drawing::FillStyle_GRADIENT:
1849 sValue =
"GRADIENT";
1851 case drawing::FillStyle_HATCH:
1854 case drawing::FillStyle_BITMAP:
1860 aTree.put(
"state", sValue);
1905 if(!(rVal >>= nValue ))
1914 xmlTextWriterStartElement(pWriter, BAD_CAST(
"XFillColorItem"));
1915 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"whichId"), BAD_CAST(OString::number(
Which()).getStr()));
1916 xmlTextWriterWriteAttribute(pWriter, BAD_CAST(
"value"), BAD_CAST(
GetColorValue().AsRGBHexString().toUtf8().getStr()));
1917 xmlTextWriterEndElement(pWriter);
1925 aTree.put(
"commandName",
".uno:FillPageColor");
1958 case css::awt::GradientStyle::GradientStyle_LINEAR:
1961 case css::awt::GradientStyle::GradientStyle_AXIAL:
1964 case css::awt::GradientStyle::GradientStyle_RADIAL:
1967 case css::awt::GradientStyle::GradientStyle_ELLIPTICAL:
1968 return "ELLIPTICAL";
1970 case css::awt::GradientStyle::GradientStyle_SQUARE:
1973 case css::awt::GradientStyle::GradientStyle_RECT:
1976 case css::awt::GradientStyle::GradientStyle_MAKE_FIXED_SIZE:
1977 return "MAKE_FIXED_SIZE";
1985 css::awt::GradientStyle lcl_getStyleFromString(std::u16string_view rStyle)
1987 if (rStyle == u
"LINEAR")
1988 return css::awt::GradientStyle_LINEAR;
1989 else if (rStyle == u
"AXIAL")
1990 return css::awt::GradientStyle_AXIAL;
1991 else if (rStyle == u
"RADIAL")
1992 return css::awt::GradientStyle_RADIAL;
1993 else if (rStyle == u
"ELLIPTICAL")
1994 return css::awt::GradientStyle_ELLIPTICAL;
1995 else if (rStyle == u
"SQUARE")
1996 return css::awt::GradientStyle_SQUARE;
1997 else if (rStyle == u
"RECT")
1998 return css::awt::GradientStyle_RECT;
2000 return css::awt::GradientStyle_LINEAR;
2003 StringMap lcl_jsonToStringMap(
const OUString& rJSON)
2006 if (rJSON.getLength() && rJSON[0] !=
'\0')
2008 std::stringstream aStream(
OUStringToOString(rJSON, RTL_TEXTENCODING_ASCII_US).getStr());
2009 boost::property_tree::ptree aTree;
2010 boost::property_tree::read_json(aStream, aTree);
2012 for (
const auto& rPair : aTree)
2014 aArgs[OUString::fromUtf8(rPair.first.c_str())] = OUString::fromUtf8(rPair.second.get_value<std::string>(
".").c_str());
2036 return lcl_buildGradientFromStringMap(aMap);
2041 css::awt::Gradient aGradient;
2044 aGradient.StartColor =
static_cast<sal_Int32
>(this->
GetStartColor());
2045 aGradient.EndColor =
static_cast<sal_Int32
>(this->
GetEndColor());
2046 aGradient.Angle =
static_cast<short>(this->
GetAngle());
2052 aGradient.StepCount = this->
GetSteps();
2058 eStyle(
css::
awt::GradientStyle_LINEAR ),
2065 nIntensStart( 100 ),
2072 css::awt::GradientStyle eTheStyle,
Degree10 nTheAngle, sal_uInt16 nXOfs,
2073 sal_uInt16 nYOfs, sal_uInt16 nTheBorder,
2074 sal_uInt16 nStartIntens, sal_uInt16 nEndIntens,
2075 sal_uInt16 nSteps) :
2077 aStartColor(rStart),
2083 nIntensStart(nStartIntens),
2084 nIntensEnd(nEndIntens),
2105 boost::property_tree::ptree aTree;
2110 aTree.put(
"angle", std::to_string(
nAngle.
get()));
2111 aTree.put(
"border", std::to_string(
nBorder));
2112 aTree.put(
"x", std::to_string(
nOfsX));
2113 aTree.put(
"y", std::to_string(
nOfsY));
2114 aTree.put(
"intensstart", std::to_string(
nIntensStart));
2115 aTree.put(
"intensend", std::to_string(
nIntensEnd));
2116 aTree.put(
"stepcount", std::to_string(
nStepCount));
2126 aGradient(rTheGradient)
2131 const XGradient& rTheGradient, sal_uInt16 nWhich)
2133 , aGradient(rTheGradient)
2139 aGradient(rItem.aGradient)
2145 aGradient(rTheGradient)
2156 return ( NameOrIndex::operator==(rItem) &&
2157 aGradient == static_cast<const XFillGradientItem&>(rItem).aGradient );
2184 switch ( nMemberId )
2188 uno::Sequence< beans::PropertyValue > aPropSeq( 2 );
2190 css::awt::Gradient aGradient2;
2194 aGradient2.StartColor =
static_cast<sal_Int32
>(aXGradient.
GetStartColor());
2195 aGradient2.EndColor =
static_cast<sal_Int32
>(aXGradient.
GetEndColor());
2196 aGradient2.Angle =
static_cast<short>(aXGradient.
GetAngle());
2197 aGradient2.Border = aXGradient.
GetBorder();
2198 aGradient2.XOffset = aXGradient.
GetXOffset();
2199 aGradient2.YOffset = aXGradient.
GetYOffset();
2202 aGradient2.StepCount = aXGradient.
GetSteps();
2204 aPropSeq[0].Name =
"Name";
2206 aPropSeq[1].Name =
"FillGradient";
2207 aPropSeq[1].Value <<= aGradient2;
2215 css::awt::Gradient aGradient2;
2218 aGradient2.StartColor =
static_cast<sal_Int32
>(aXGradient.
GetStartColor());
2219 aGradient2.EndColor =
static_cast<sal_Int32
>(aXGradient.
GetEndColor());
2220 aGradient2.Angle =
static_cast<short>(aXGradient.
GetAngle());
2221 aGradient2.Border = aXGradient.
GetBorder();
2222 aGradient2.XOffset = aXGradient.
GetXOffset();
2223 aGradient2.YOffset = aXGradient.
GetYOffset();
2226 aGradient2.StepCount = aXGradient.
GetSteps();
2228 rVal <<= aGradient2;
2249 default: OSL_FAIL(
"Wrong MemberId!");
return false;
2259 switch ( nMemberId )
2263 uno::Sequence< beans::PropertyValue > aPropSeq;
2265 if ( rVal >>= aPropSeq )
2267 css::awt::Gradient aGradient2;
2269 bool bGradient(
false );
2270 for (
const auto& rProp : std::as_const(aPropSeq) )
2272 if ( rProp.Name ==
"Name" )
2273 rProp.Value >>= aName;
2274 else if ( rProp.Name ==
"FillGradient" )
2276 if ( rProp.Value >>= aGradient2 )
2290 aXGradient.
SetBorder( aGradient2.Border );
2295 aXGradient.
SetSteps( aGradient2.StepCount );
2309 if (!(rVal >>= aName ))
2317 css::awt::Gradient aGradient2;
2318 if(!(rVal >>= aGradient2))
2327 aXGradient.
SetBorder( aGradient2.Border );
2332 aXGradient.
SetSteps( aGradient2.StepCount );
2342 if(!(rVal >>= nVal ))
2364 sal_Int16 nVal = sal_Int16();
2365 if(!(rVal >>= nVal ))
2370 switch ( nMemberId )
2373 aXGradient.
SetGradientStyle( static_cast<css::awt::GradientStyle>(nVal) );
break;
2383 aXGradient.
SetSteps( nVal );
break;
2413 if( aUniqueName !=
GetName() )
2414 return std::make_unique<XFillGradientItem>( aUniqueName, aGradient,
Which() );
2425 aTree.put(
"commandName",
".uno:FillGradient");
2443 bEnabled ( bEnable )
2450 bEnabled ( rItem.bEnabled )
2457 bEnabled ( bEnable )
2464 return ( NameOrIndex::operator==(rItem) ) &&
2466 (
bEnabled == static_cast<const XFillFloatTransparenceItem&>(rItem).bEnabled );
2509 RID_SVXSTR_TRASNGR0,
2513 if( aUniqueName !=
GetName() )
2515 return std::make_unique<XFillFloatTransparenceItem>( aUniqueName,
GetGradientValue(), true );
2524 return std::make_unique<XFillFloatTransparenceItem>(OUString(),
GetGradientValue(),
false);
2534 aTree.put(
"commandName",
".uno:FillFloatTransparence");
2538 boost::property_tree::ptree& rState = aTree.get_child(
"state");
2544 rState.put(
"style",
"NONE");
2546 rState.put(
"style",
"SOLID");
2556 nDistance(nTheDistance),
2573 const XHatch& rTheHatch) :
2581 aHatch(rItem.aHatch)
2598 return ( NameOrIndex::operator==(rItem) &&
2599 aHatch == static_cast<const XFillHatchItem&>(rItem).
aHatch );
2628 switch ( nMemberId )
2632 uno::Sequence< beans::PropertyValue > aPropSeq( 2 );
2634 css::drawing::Hatch aUnoHatch;
2641 aPropSeq[0].Name =
"Name";
2643 aPropSeq[1].Name =
"FillHatch";
2644 aPropSeq[1].Value <<= aUnoHatch;
2651 css::drawing::Hatch aUnoHatch;
2676 default: OSL_FAIL(
"Wrong MemberId!");
return false;
2686 switch ( nMemberId )
2690 uno::Sequence< beans::PropertyValue > aPropSeq;
2691 if ( rVal >>= aPropSeq )
2693 css::drawing::Hatch aUnoHatch;
2695 bool bHatch(
false );
2696 for (
const auto& rProp : std::as_const(aPropSeq) )
2698 if ( rProp.Name ==
"Name" )
2699 rProp.Value >>= aName;
2700 else if ( rProp.Name ==
"FillHatch" )
2702 if ( rProp.Value >>= aUnoHatch )
2724 css::drawing::Hatch aUnoHatch;
2725 if(!(rVal >>= aUnoHatch))
2738 if (!(rVal >>= aName ))
2746 sal_Int16 nVal = sal_Int16();
2747 if (!(rVal >>= nVal ))
2758 if (!(rVal >>= nVal ))
2770 default: OSL_FAIL(
"Wrong MemberId!");
return false;
2791 if( aUniqueName !=
GetName() )
2792 return std::make_unique<XFillHatchItem>( aUniqueName,
aHatch );
2820 rVal <<= static_cast<sal_Int32>(
GetValue());
2828 SetValue(static_cast<XFormTextStyle>(nValue));
2853 rVal <<= static_cast<sal_Int32>(
GetValue());
2861 SetValue(static_cast<XFormTextAdjust>(nValue));
2934 rVal <<= static_cast<sal_Int32>(
GetValue());
2942 SetValue(static_cast<XFormTextShadow>(nValue));
2951 const Color& rTheColor) :
OUString AsRGBHexString() const
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
XLineEndWidthItem(tools::Long nWidth=LINE_END_WIDTH_DEFAULT)
constexpr TypedWhichId< XFormTextHideFormItem > XATTR_FORMTXTHIDEFORM(XATTR_TEXT_FIRST+10)
std::unique_ptr< XLineStartItem > checkForUniqueItem(SdrModel *pModel) const
this function searches in both the models pool and the styles pool for XLineStartItem and XLineEndIte...
#define MID_GRADIENT_YOFFSET
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
sal_Int32 GetValue() const
virtual XFormTextMirrorItem * Clone(SfxItemPool *pPool=nullptr) const override
constexpr sal_uInt16 XATTR_LINE_LAST(XATTR_LINECAP)
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
void dumpAsXml(xmlTextWriterPtr pWriter) const override
constexpr TypedWhichId< XLineEndItem > XATTR_LINEEND(XATTR_LINE_FIRST+5)
virtual SVX_DLLPRIVATE bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
XLineEndCenterItem(bool bEndCenter=false)
constexpr TypedWhichId< XLineEndCenterItem > XATTR_LINEENDCENTER(XATTR_LINE_FIRST+9)
XFillAttrSetItem(std::unique_ptr< SfxItemSet > &&pItemSet)
fill attribute set item
static SfxPoolItem * CreateDefault()
static SfxPoolItem * CreateDefault()
constexpr TypedWhichId< XLineStartItem > XATTR_LINESTART(XATTR_LINE_FIRST+4)
void SetHatchStyle(css::drawing::HatchStyle eNewStyle)
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
const XPropertyListRef & GetPropertyList(XPropertyListType t) const
void dumpAsXml(xmlTextWriterPtr pWriter) const override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
Degree10 GetAngle() const
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
struct _xmlTextWriter * xmlTextWriterPtr
const basegfx::B2DPolyPolygon & GetLineStartValue() const
static SfxPoolItem * CreateDefault()
void SetValue(sal_Int32 nTheValue)
XLineStartItem(sal_Int32 nIndex=-1)
basegfx::B2DPolyPolygon maPolyPolygon
void SetDotLen(sal_uInt32 nNewDotLen)
virtual void ScaleMetrics(tools::Long nMul, tools::Long nDiv) override
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
void SetBorder(sal_uInt16 nNewBorder)
Degree10 GetAngle() const
static XGradient fromJSON(const OUString &rJSON)
void setClosed(bool bNew)
static bool CompareValueFunc(const NameOrIndex *p1, const NameOrIndex *p2)
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
constexpr TypedWhichId< XFormTextOutlineItem > XATTR_FORMTXTOUTLINE(XATTR_TEXT_FIRST+5)
static SfxPoolItem * CreateDefault()
void SetDots(sal_uInt16 nNewDots)
constexpr TypedWhichId< XFillStyleItem > XATTR_FILLSTYLE(XATTR_FILL_FIRST)
virtual boost::property_tree::ptree dumpAsJSON() const override
sal_Int32 toInt32(OUString const &rStr)
constexpr TypedWhichId< XLineWidthItem > XATTR_LINEWIDTH(XATTR_LINE_FIRST+2)
sal_uInt32 GetDistance() const
const basegfx::B2DPolyPolygon & GetLineEndValue() const
virtual bool HasMetrics() const override
XLineStartWidthItem(tools::Long nWidth=LINE_START_WIDTH_DEFAULT)
exports com.sun.star. awt
#define MID_LINEDASH_DOTS
virtual bool operator==(const SfxPoolItem &rItem) const override
void SetDashLen(sal_uInt32 nNewDashLen)
static SfxPoolItem * CreateDefault()
static SfxPoolItem * CreateDefault()
XFormTextStartItem(tools::Long nStart=0)
boost::property_tree::ptree dumpAsJSON() const
std::unique_ptr< XFillHatchItem > checkForUniqueItem(SdrModel *pModel) const
void SetEndColor(const Color &rColor)
constexpr sal_uInt16 XATTR_LINE_FIRST(XATTR_START)
#define MID_GRADIENT_STARTINTENSITY
static bool CompareValueFunc(const NameOrIndex *p1, const NameOrIndex *p2)
static SfxPoolItem * CreateDefault()
constexpr TypedWhichId< XLineStyleItem > XATTR_LINESTYLE(XATTR_LINE_FIRST)
bool(* SvxCompareValueFunc)(const NameOrIndex *p1, const NameOrIndex *p2)
virtual XFormTextShadowXValItem * Clone(SfxItemPool *pPool=nullptr) const override
static SfxPoolItem * CreateDefault()
OUString SvxUnogetApiNameForItem(const sal_uInt16 nWhich, const OUString &rInternalName)
if the given name is a predefined name for the current language it is replaced by the corresponding a...
constexpr TypedWhichId< XLineDashItem > XATTR_LINEDASH(XATTR_LINE_FIRST+1)
constexpr TypedWhichId< XFillHatchItem > XATTR_FILLHATCH(XATTR_FILL_FIRST+3)
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
XFormTextMirrorItem(bool bMirror=false)
#define MID_GRADIENT_STARTCOLOR
#define MID_GRADIENT_ENDCOLOR
bool operator==(const XHatch &rHatch) const
virtual sal_uInt16 GetValueCount() const override
void SetDistance(sal_uInt32 nNewDistance)
static SfxPoolItem * CreateDefault()
Color GetRGBColor() const
constexpr TypedWhichId< XFormTextDistanceItem > XATTR_FORMTXTDISTANCE(XATTR_TEXT_FIRST+2)
sal_uInt16 GetStartIntens() const
virtual sal_uInt16 GetValueCount() const override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
virtual XFormTextDistanceItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual bool operator==(const SfxPoolItem &rItem) const override
XFormTextStyleItem(XFormTextStyle=XFormTextStyle::NONE)
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
#define MID_LINEDASH_DASHES
css::drawing::DashStyle eDash
XFormTextAdjustItem(XFormTextAdjust=XFormTextAdjust::Center)
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual XFormTextHideFormItem * Clone(SfxItemPool *pPool=nullptr) const override
const Color & GetStartColor() const
HashMap_OWString_Interface aMap
void SetColor(const Color &rColor)
std::unique_ptr< XFillFloatTransparenceItem > checkForUniqueItem(SdrModel *pModel) const
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
virtual XLineStartCenterItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
sal_uInt16 GetYOffset() const
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
#define MID_GRADIENT_BORDER
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
XLineEndItem(sal_Int32 nIndex=-1)
OUString SvxResId(const char *pId)
const BorderLinePrimitive2D *pCandidateB assert(pCandidateA)
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
OUString SvxUnogetInternalNameForItem(const sal_uInt16 nWhich, const OUString &rApiName)
if the given name is a predefined api name it is replaced by the predefined name for the current lang...
static SfxPoolItem * CreateDefault()
virtual XFillFloatTransparenceItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual bool operator==(const SfxPoolItem &rItem) const override
static SfxPoolItem * CreateDefault()
std::unique_ptr< XLineDashItem > checkForUniqueItem(SdrModel *pModel) const
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
virtual XFillHatchItem * Clone(SfxItemPool *pPool=nullptr) const override
constexpr TypedWhichId< XColorItem > SDRATTR_SHADOWCOLOR(SDRATTR_SHADOW_FIRST+1)
static SfxPoolItem * CreateDefault()
static SfxPoolItem * CreateDefault()
virtual NameOrIndex * Clone(SfxItemPool *pPool=nullptr) const override
css::drawing::DashStyle GetDashStyle() const
sal_uInt16 GetDots() const
sal_uInt16 GetXOffset() const
OString OUStringToOString(std::u16string_view str, ConnectionSettings const *settings)
XDash(css::drawing::DashStyle eDash=css::drawing::DashStyle_RECT, sal_uInt16 nDots=1, sal_uInt32 nDotLen=20, sal_uInt16 nDashes=1, sal_uInt32 nDashLen=20, sal_uInt32 nDistance=20)
css::awt::Gradient toGradientUNO()
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
void SetColorValue(const Color &rNew)
virtual XColorItem * Clone(SfxItemPool *pPool=nullptr) const override
constexpr TypedWhichId< XLineAttrSetItem > XATTRSET_LINE(XATTR_LINE_LAST+1)
const Color & GetColorValue() const
constexpr TypedWhichId< XFormTextStyleItem > XATTR_FORMTXTSTYLE(XATTR_TEXT_FIRST)
virtual XLineEndCenterItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual void dumpAsXml(xmlTextWriterPtr pWriter) const override
const XHatch & GetHatchValue() const
virtual XLineEndItem * Clone(SfxItemPool *pPool=nullptr) const override
XFormTextShadowItem(XFormTextShadow=XFormTextShadow::NONE)
#define MID_LINEDASH_DASHLEN
static SfxPoolItem * CreateDefault()
void SetEndIntens(sal_uInt16 nNewIntens)
static bool CompareValueFunc(const NameOrIndex *p1, const NameOrIndex *p2)
const OUString & GetName() const
void SetAngle(Degree10 nNewAngle)
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
XFormTextShadowYValItem(tools::Long nVal=0)
virtual XFillColorItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
UNDERLYING_TYPE get() const
sal_uInt16 GetBorder() const
virtual boost::property_tree::ptree dumpAsJSON() const
XFormTextShadowColorItem()
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
void SetStartColor(const Color &rColor)
constexpr TypedWhichId< XLineStartWidthItem > XATTR_LINESTARTWIDTH(XATTR_LINE_FIRST+6)
constexpr TypedWhichId< XFillGradientItem > XATTR_FILLGRADIENT(XATTR_FILL_FIRST+2)
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
virtual XFormTextStyleItem * Clone(SfxItemPool *pPool=nullptr) const override
const XGradient & GetGradientValue() const
static SfxPoolItem * CreateDefault()
css::drawing::HatchStyle GetHatchStyle() const
XFormTextDistanceItem(tools::Long nDist=0)
void dumpAsXml(xmlTextWriterPtr pWriter) const override
constexpr TypedWhichId< XSecondaryFillColorItem > XATTR_SECONDARYFILLCOLOR(XATTR_FILL_FIRST+12)
constexpr TypedWhichId< XFillBitmapItem > XATTR_FILLBITMAP(XATTR_FILL_FIRST+4)
virtual XFormTextOutlineItem * Clone(SfxItemPool *pPool=nullptr) const override
void SetValue(EnumT nTheValue)
void SetSteps(sal_uInt16 nSteps)
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
virtual XFormTextShadowItem * Clone(SfxItemPool *pPool=nullptr) const override
void SetYOffset(sal_uInt16 nNewOffset)
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
XLineStyleItem(css::drawing::LineStyle=css::drawing::LineStyle_SOLID)
void SetGradientValue(const XGradient &rNew)
B2DPolyPolygon UnoPolyPolygonBezierCoordsToB2DPolyPolygon(const css::drawing::PolyPolygonBezierCoords &rPolyPolygonBezierCoordsSource)
constexpr TypedWhichId< XLineEndWidthItem > XATTR_LINEENDWIDTH(XATTR_LINE_FIRST+7)
virtual bool operator==(const SfxPoolItem &rItem) const override
static SfxPoolItem * CreateDefault()
virtual XFormTextShadowYValItem * Clone(SfxItemPool *pPool=nullptr) const override
void SetGradientStyle(css::awt::GradientStyle eNewStyle)
css::awt::GradientStyle eStyle
XLineAttrSetItem(std::unique_ptr< SfxItemSet > &&pItemSet)
a line attribute set item
sal_uInt16 GetSteps() const
static SfxPoolItem * CreateDefault()
OUString GetMetricText(tools::Long nVal, MapUnit eSrcUnit, MapUnit eDestUnit, const IntlWrapper *pIntl)
std::unique_ptr< XFillGradientItem > checkForUniqueItem(SdrModel *pModel) const
const double SMALLEST_DASH_WIDTH(26.95)
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
constexpr sal_uInt16 XATTR_FILL_FIRST(XATTRSET_LINE+1)
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &rIntlWrapper) const override
std::map< const OUString, OUString > StringMap
virtual sal_uInt16 GetValueCount() const override
XFormTextOutlineItem(bool bOutline=false)
void SetDashStyle(css::drawing::DashStyle eNewStyle)
XFormTextHideFormItem(bool bHide=false)
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
basegfx::B2DPolyPolygon maPolyPolygon
const XDash & GetDashValue() const
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
virtual XLineEndWidthItem * Clone(SfxItemPool *pPool=nullptr) const override
constexpr TypedWhichId< XFormTextShadowXValItem > XATTR_FORMTXTSHDWXVAL(XATTR_TEXT_FIRST+8)
rtl::Reference< class XPropertyList > XPropertyListRef
constexpr TypedWhichId< XFormTextShadowItem > XATTR_FORMTXTSHADOW(XATTR_TEXT_FIRST+6)
#define MID_HATCH_DISTANCE
constexpr TypedWhichId< XFormTextAdjustItem > XATTR_FORMTXTADJUST(XATTR_TEXT_FIRST+1)
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
const char * GetMetricId(MapUnit eUnit)
double CreateDotDashArray(::std::vector< double > &rDotDashArray, double fLineWidth) const
#define MID_LINEDASH_DOTLEN
tools::Long GetDistance() const
constexpr TypedWhichId< XLineStartCenterItem > XATTR_LINESTARTCENTER(XATTR_LINE_FIRST+8)
virtual sal_uInt16 GetValueCount() const override
virtual XLineColorItem * Clone(SfxItemPool *pPool=nullptr) const override
XLineStartCenterItem(bool bStartCenter=false)
virtual XLineStyleItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual void ScaleMetrics(tools::Long nMul, tools::Long nDiv) override
bool operator==(const XDash &rDash) const
const Color & GetColor() const
void SetValue(bool const bTheValue)
virtual XFillGradientItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
virtual bool operator==(const SfxPoolItem &rItem) const override
css::drawing::HatchStyle eStyle
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
#define MID_LINEDASH_STYLE
tools::Long const nBorder
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
void SetDashValue(const XDash &rNew)
virtual XFillAttrSetItem * Clone(SfxItemPool *pToPool=nullptr) const override
#define MID_GRADIENT_ANGLE
XFormTextShadowXValItem(tools::Long nVal=0)
void SetStartIntens(sal_uInt16 nNewIntens)
css::awt::GradientStyle GetGradientStyle() const
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
static bool CompareValueFunc(const NameOrIndex *p1, const NameOrIndex *p2)
constexpr TypedWhichId< XFillColorItem > XATTR_FILLCOLOR(XATTR_FILL_FIRST+1)
static OUString CheckNamedItem(const NameOrIndex *pCheckItem, const sal_uInt16 nWhich, const SfxItemPool *pPool1, SvxCompareValueFunc pCompareValueFunc, const char *pPrefixResId, const XPropertyListRef &pDefaults)
this static checks if the given NameOrIndex item has a unique name for its value. ...
void SetDashes(sal_uInt16 nNewDashes)
static std::string GradientStyleToString(css::awt::GradientStyle eStyle)
constexpr TypedWhichId< XFillAttrSetItem > XATTRSET_FILL(XATTR_FILL_LAST+1)
void SetName(const OUString &rName)
constexpr TypedWhichId< XFormTextStartItem > XATTR_FORMTXTSTART(XATTR_TEXT_FIRST+3)
constexpr TypedWhichId< XFillFloatTransparenceItem > XATTR_FILLFLOATTRANSPARENCE(XATTR_FILL_FIRST+11)
constexpr sal_Int64 convertTwipToMm100(sal_Int64 n)
virtual XFormTextAdjustItem * Clone(SfxItemPool *pPool=nullptr) const override
sal_uInt32 GetDotLen() const
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
#define MID_GRADIENT_XOFFSET
bool operator==(const XGradient &rGradient) const
virtual bool HasMetrics() const override
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
static SfxPoolItem * CreateDefault()
XLineWidthItem(tools::Long nWidth=0)
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
OUString EditResId(const char *pId)
constexpr TypedWhichId< XFormTextShadowYValItem > XATTR_FORMTXTSHDWYVAL(XATTR_TEXT_FIRST+9)
void SetXOffset(sal_uInt16 nNewOffset)
SfxStyleSheetBasePool * GetStyleSheetPool() const
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString &rText, const IntlWrapper &) const override
#define MID_GRADIENT_ENDINTENSITY
const ::std::vector< Color > ImpSvNumberformatScan::StandardColor COL_WHITE
void SetWhich(sal_uInt16 nId)
virtual boost::property_tree::ptree dumpAsJSON() const override
virtual boost::property_tree::ptree dumpAsJSON() const override
std::map< OUString, OUString > StringMap
Item2Range GetItemSurrogates(sal_uInt16 nWhich) const
static SfxPoolItem * CreateDefault()
#define MID_LINEDASH_DISTANCE
basegfx::B2DPolyPolygon maPolyPolygon
const ::std::vector< Color > ImpSvNumberformatScan::StandardColor COL_BLACK
virtual XLineWidthItem * Clone(SfxItemPool *pPool=nullptr) const override
static SfxPoolItem * CreateDefault()
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual XLineDashItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual bool operator==(const SfxPoolItem &rItem) const override
virtual XLineStartWidthItem * Clone(SfxItemPool *pPool=nullptr) const override
static tools::Long Scale(tools::Long nVal, tools::Long nMult, tools::Long nDiv)
constexpr sal_Int64 convertMm100ToTwip(sal_Int64 n)
virtual XFormTextShadowColorItem * Clone(SfxItemPool *pPool=nullptr) const override
virtual XFormTextStartItem * Clone(SfxItemPool *pPool=nullptr) const override
OUString const & GetName() const
void B2DPolyPolygonToUnoPolyPolygonBezierCoords(const B2DPolyPolygon &rPolyPolygon, css::drawing::PolyPolygonBezierCoords &rPolyPolygonBezierCoordsRetval)
XFillStyleItem(css::drawing::FillStyle=css::drawing::FillStyle_SOLID)
const SfxItemPool & GetItemPool() const
static SfxPoolItem * CreateDefault()
constexpr sal_uInt16 XATTR_FILL_LAST(XATTR_FILLBACKGROUND)
XFillFloatTransparenceItem()
XSecondaryFillColorItem(const OUString &rName, const Color &rTheColor)
virtual sal_uInt16 GetValueCount() const override
detail::Optional< bool >::type tryAccess< bool >(css::uno::Any const &any)
virtual bool operator==(const SfxPoolItem &rItem) const override
constexpr TypedWhichId< XFormTextMirrorItem > XATTR_FORMTXTMIRROR(XATTR_TEXT_FIRST+4)
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
sal_uInt32 GetDashLen() const
static SfxPoolItem * CreateDefault()
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual XLineAttrSetItem * Clone(SfxItemPool *pToPool=nullptr) const override
constexpr TypedWhichId< XLineColorItem > XATTR_LINECOLOR(XATTR_LINE_FIRST+3)
virtual bool operator==(const SfxPoolItem &rItem) const override
virtual bool QueryValue(css::uno::Any &rVal, sal_uInt8 nMemberId=0) const override
#define MID_GRADIENT_STYLE
sal_uInt16 GetEndIntens() const
virtual SVX_DLLPRIVATE XSecondaryFillColorItem * Clone(SfxItemPool *pPool=nullptr) const override
void SetDistance(tools::Long nNewDistance)
void SetAngle(Degree10 nNewAngle)
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
std::unique_ptr< XLineEndItem > checkForUniqueItem(SdrModel *pModel) const
this function searches in both the models pool and the styles pool for XLineStartItem and XLineEndIte...
static SfxPoolItem * CreateDefault()
const Color & GetEndColor() const
virtual XFillStyleItem * Clone(SfxItemPool *pPool=nullptr) const override
constexpr TypedWhichId< XFormTextShadowColorItem > XATTR_FORMTXTSHDWCOLOR(XATTR_TEXT_FIRST+7)
virtual boost::property_tree::ptree dumpAsJSON() const override
sal_uInt16 GetDashes() const
#define MID_GRADIENT_STEPCOUNT
virtual bool PutValue(const css::uno::Any &rVal, sal_uInt8 nMemberId) override
virtual XLineStartItem * Clone(SfxItemPool *pPool=nullptr) const override