54#include <osl/diagnose.h>
59#include <stlsheet.hxx>
61#include <document.hxx>
67#include <boost/functional/hash.hpp>
94 pStyle ( rPatternAttr.pStyle ),
95 mnKey(rPatternAttr.mnKey)
109static bool StrCmp(
const OUString* pStr1,
const OUString* pStr2 )
117 return *pStr1 == *pStr2;
139 return { memcmp( pItems1, pItems2,
compareSize *
sizeof(pItems1[0]) ) == 0 };
145 if(
equal.has_value())
147 return rSet1 == rSet2;
154 if (!SfxPoolItem::operator==(rCmp) )
158 auto const & rOther =
static_cast<const ScPatternAttr&
>(rCmp);
159 if (!rOther.mxHashCode)
173 for(
auto it =
begin; it !=
end; ++it)
195 eOrient = SvxCellOrientation::Stacked;
200 if( nAngle == 9000_deg100 )
201 eOrient = SvxCellOrientation::BottomUp;
202 else if( nAngle == 27000_deg100 )
203 eOrient = SvxCellOrientation::TopBottom;
223 if ( nScript == SvtScriptType::ASIAN )
231 else if ( nScript == SvtScriptType::COMPLEX )
255 const Color* pBackConfigColor,
const Color* pTextConfigColor )
260 sal_uInt32 nFontHeight;
279 getFontIDsByScriptType(nScript, nFontId, nHeightId, nWeightId, nPostureId, nLangId);
285 pFontAttr = &rItemSet.
Get( nFontId );
288 if ( !pFontHeightItem )
289 pFontHeightItem = &rItemSet.
Get( nHeightId );
290 nFontHeight = pFontHeightItem->
GetHeight();
293 if ( !pFontHWeightItem )
294 pFontHWeightItem = &rItemSet.
Get( nWeightId );
295 eWeight = pFontHWeightItem->GetValue();
299 pPostureItem = &rItemSet.
Get( nPostureId );
300 eItalic = pPostureItem->GetValue();
303 if ( !pUnderlineItem )
305 eUnder = pUnderlineItem->GetValue();
308 if ( !pOverlineItem )
310 eOver = pOverlineItem->GetValue();
313 if ( !pWordlineItem )
315 bWordLine = pWordlineItem->GetValue();
318 if ( !pCrossedOutItem )
320 eStrike = pCrossedOutItem->GetValue();
325 bOutline = pContourItem->GetValue();
328 if ( !pShadowedItem )
330 bShadow = pShadowedItem->GetValue();
333 if ( !pEmphasisMarkItem )
338 if ( !pCharReliefItem )
340 eRelief = pCharReliefItem->GetValue();
348 if ( !pLanguageItem )
349 pLanguageItem = &rItemSet.
Get( nLangId );
354 pFontAttr = &rItemSet.
Get( nFontId );
355 nFontHeight = rItemSet.
Get( nHeightId ).GetHeight();
356 eWeight = rItemSet.
Get( nWeightId ).GetValue();
357 eItalic = rItemSet.
Get( nPostureId ).GetValue();
368 eLang = rItemSet.
Get( nLangId ).GetLanguage();
370 OSL_ENSURE(pFontAttr,
"Oops?");
389 if ( pOutDev !=
nullptr )
397 MapMode aSrcMode( MapUnit::MapTwip,
Point(), aFraction, aFraction );
441 else if ( pBackConfigColor )
444 aBackColor = *pBackConfigColor;
454 else if ( pTextConfigColor )
457 aSysTextColor = *pTextConfigColor;
476 aColor = aSysTextColor;
500 const Color* pBackConfigColor,
const Color* pTextConfigColor )
const
502 GetFont( rFont,
GetItemSet(), eAutoMode, pOutDev, pScale, pCondSet, nScript, pBackConfigColor, pTextConfigColor );
512 getFontIDsByScriptType(nScript, nFontId, nHeightId, nWeightId, nPostureId, nLangId);
528 aReturn.
eWeight = pItem->GetValue();
533 aReturn.
eItalic = pItem->GetValue();
539 aReturn.
eUnder = pItem->GetValue();
544 aReturn.
eOver = pItem->GetValue();
555 aReturn.
eStrike = pItem->GetValue();
560 aReturn.
bOutline = pItem->GetValue();
566 aReturn.
bShadow = pItem->GetValue();
571 aReturn.
eEmphasis = pItem->GetEmphasisMark();
576 aReturn.
eRelief = pItem->GetValue();
581 aReturn.
aColor = pItem->GetValue();
586 aReturn.
eLang = pItem->GetLanguage();
597 pItem = &rSrcSet.
Get( nWhich );
598 rxItem.reset(pItem->Clone());
605 std::unique_ptr<SvxColorItem> aColorItem(std::make_unique<SvxColorItem>(
EE_CHAR_COLOR));
606 std::unique_ptr<SvxFontItem> aFontItem(std::make_unique<SvxFontItem>(
EE_CHAR_FONTINFO));
635 if (!pFontHeightItem)
639 if ( !pFontHeightItem )
641 nCjkTHeight = pFontHeightItem->
GetHeight();
643 if ( !pFontHeightItem )
645 nCtlTHeight = pFontHeightItem->
GetHeight();
650 eWeight = pWeightItem->GetValue();
654 eCjkWeight = pWeightItem->GetValue();
658 eCtlWeight = pWeightItem->GetValue();
663 eItalic = pPostureItem->GetValue();
667 eCjkItalic = pPostureItem->GetValue();
671 eCtlItalic = pPostureItem->GetValue();
677 if ( !pWordLineModeItem )
679 bWordLine = pWordLineModeItem->GetValue();
682 if ( !pCrossedOutItem )
684 eStrike = pCrossedOutItem->GetValue();
689 bOutline = pContourItem->GetValue();
692 if ( !pShadowedItem )
694 bShadow = pShadowedItem->GetValue();
697 if ( !pForbiddenRuleItem )
699 bForbidden = pForbiddenRuleItem->GetValue();
702 if ( !pEmphasisMarkItem )
706 if ( !pCharReliefItem )
708 eRelief = pCharReliefItem->GetValue();
711 if ( !pLanguageItem )
715 if ( !pLanguageItem )
719 if ( !pLanguageItem )
724 if ( !pHyphenateCell )
726 bHyphenate = pHyphenateCell->
GetValue();
729 if ( !pFrameDirectionItem )
731 eDirection = pFrameDirectionItem->GetValue();
772 if ( aColorItem->GetValue() ==
COL_AUTO )
916 case SvxAdjust::Left:
919 eVal = SvxCellHorJustify::Standard;
921 case SvxAdjust::Right:
922 eVal = SvxCellHorJustify::Right;
924 case SvxAdjust::Block:
925 eVal = SvxCellHorJustify::Block;
927 case SvxAdjust::Center:
928 eVal = SvxCellHorJustify::Center;
930 case SvxAdjust::BlockLine:
931 eVal = SvxCellHorJustify::Block;
934 eVal = SvxCellHorJustify::Right;
937 eVal = SvxCellHorJustify::Standard;
939 if ( eVal != SvxCellHorJustify::Standard )
963 case SvxCellHorJustify::Right: eSvxAdjust = SvxAdjust::Right;
break;
964 case SvxCellHorJustify::Center: eSvxAdjust = SvxAdjust::Center;
break;
965 case SvxCellHorJustify::Block: eSvxAdjust = SvxAdjust::Block;
break;
966 default: eSvxAdjust = SvxAdjust::Left;
break;
982 if ( rThisSet.
GetItemState( nSubWhich,
false, &pThisItem ) == SfxItemState::SET )
985 if ( eOldState == SfxItemState::SET )
988 if ( pThisItem == pOldItem )
994 else if ( eOldState != SfxItemState::DONTCARE )
1010 for (sal_uInt16
i=0; pWhich[
i];
i++)
1019 for (sal_uInt16
i=0; pWhich[
i];
i++)
1032 if ( !pSrcStyle || !pDestPool || !pSrcPool )
1034 OSL_FAIL(
"CopyStyleToPool: Invalid Arguments :-/" );
1038 const OUString aStrSrcStyle = pSrcStyle->
GetName();
1044 const OUString aStrParent = pSrcStyle->
GetParent();
1047 pDestStyle = &pDestPool->
Make( aStrSrcStyle, eFamily, SfxStyleSearchBits::UserDefined );
1049 rDestSet.
Put( rSrcSet );
1055 if ( pFormatExchangeList &&
1059 SvNumberFormatterIndexTable::const_iterator it = pFormatExchangeList->find(nOldFormat);
1060 if (it != pFormatExchangeList->end())
1062 sal_uInt32 nNewFormat = it->second;
1069 if (
ScResId(STR_STYLENAME_STANDARD) != aStrParent &&
1070 aStrSrcStyle != aStrParent &&
1071 !pDestPool->
Find( aStrParent, eFamily ) )
1074 pSrcPool, pDestPool, pFormatExchangeList );
1092 if ( pDestDoc != pSrcDoc )
1094 OSL_ENSURE(
pStyle,
"Missing Pattern-Style! :-/" );
1111 if (eItemState==SfxItemState::SET)
1113 std::unique_ptr<SfxPoolItem> pNewItem;
1119 sal_uInt32 nNewIndex = 0;
1135 SvNumberFormatterIndexTable::const_iterator it = pDestDoc->
GetFormatExchangeList()->find(nOldFormat);
1138 sal_uInt32 nNewFormat = it->second;
1145 pDestSet->
Put(std::move(pNewItem));
1148 pDestSet->
Put(*pSrcItem);
1153 return pPatternAttr;
1166 if ( pBoxItem->GetTop() || pBoxItem->GetBottom() ||
1167 pBoxItem->GetLeft() || pBoxItem->GetRight() )
1172 if( pItem->GetLine() )
1176 if( pItem->GetLine() )
1180 if ( pItem->GetLocation() != SvxShadowLocation::NONE )
1190 return ( pItem1 == pItem2 || *pItem1 == *pItem2 );
1219 if (bClearDirectFormat)
1233 OSL_FAIL(
"ScPatternAttr::SetStyleSheet( NULL ) :-|" );
1282 return pItem->GetCharSet() == RTL_TEXTENCODING_SYMBOL;
1289sal_uInt32 getNumberFormatKey(
const SfxItemSet& rSet)
1303 sal_uInt32 nFormat = getNumberFormatKey(
GetItemSet());
1307 else if ( pFormatter )
1327 nFormat = getNumberFormatKey(*pCondSet);
1329 eLang = getLanguageType(*pCondSet);
1345 if ( pCondSet && pCondSet->
GetItemState( nWhich,
true, &pCondItem ) == SfxItemState::SET )
1347 return rItemSet.
Get(nWhich);
1363 GetValue() == SvxCellHorJustify::Repeat );
1386 Degree100 nRot180 = nAttrRotate % 18000_deg100;
1387 if ( nRot180 == 9000_deg100 )
constexpr auto convertTwipToMm100(N n)
sal_uInt32 GetValue() const
void SetScaleY(const Fraction &rScaleY)
MapUnit GetMapUnit() const
void SetScaleX(const Fraction &rScaleX)
SAL_DLLPRIVATE sal_Int32 GetDPIX() const
SAL_WARN_UNUSED_RESULT Point LogicToLogic(const Point &rPtSource, const MapMode *pMapModeSource, const MapMode *pMapModeDest) const
SAL_WARN_UNUSED_RESULT Point LogicToPixel(const Point &rLogicPt) const
const MapMode & GetMapMode() const
SC_DLLPUBLIC ScDocumentPool * GetPool()
SC_DLLPUBLIC ScStyleSheetPool * GetStyleSheetPool() const
SC_DLLPUBLIC sal_uLong AddValidationEntry(const ScValidationData &rNew)
const ScValidationDataList * GetValidationList() const
SvNumberFormatterIndexTable * GetFormatExchangeList() const
bool IsSymbolFont() const
If font is an old symbol font StarBats/StarMath with text encoding RTL_TEXTENC_SYMBOL.
void UpdateStyleSheet(const ScDocument &rDoc)
virtual lookup_iterator Lookup(lookup_iterator begin, lookup_iterator end) const override
virtual bool operator==(const SfxPoolItem &rCmp) const override
std::optional< size_t > mxHashCode
void ClearItems(const sal_uInt16 *pWhich)
ScPatternAttr * PutInPool(ScDocument *pDestDoc, ScDocument *pSrcDoc) const
void CalcHashCode() const
std::optional< OUString > pName
Degree100 GetRotateVal(const SfxItemSet *pCondSet) const
static std::optional< bool > FastEqualPatternSets(const SfxItemSet &rSet1, const SfxItemSet &rSet2)
bool IsVisibleEqual(const ScPatternAttr &rOther) const
const OUString * GetStyleName() const
void SetStyleSheet(ScStyleSheet *pNewStyle, bool bClearDirectFormat=true)
sal_uInt32 GetNumberFormat(SvNumberFormatter *) const
ScPatternAttr(SfxItemSet &&pItemSet, const OUString &rStyleName)
void DeleteUnchanged(const ScPatternAttr *pOldAttrs)
sal_uInt64 GetKey() const
ScRotateDir GetRotateDir(const SfxItemSet *pCondSet) const
static void FillToEditItemSet(SfxItemSet &rEditSet, const SfxItemSet &rSrcSet, const SfxItemSet *pCondSet=nullptr)
Converts all Calc items contained in rSrcSet to edit engine items and puts them into rEditSet.
static ScDxfFont GetDxfFont(const SfxItemSet &rSet, SvtScriptType nScript)
void SetKey(sal_uInt64 nKey)
static void GetFont(vcl::Font &rFont, const SfxItemSet &rItemSet, ScAutoFontColorMode eAutoMode, const OutputDevice *pOutDev=nullptr, const Fraction *pScale=nullptr, const SfxItemSet *pCondSet=nullptr, SvtScriptType nScript=SvtScriptType::NONE, const Color *pBackConfigColor=nullptr, const Color *pTextConfigColor=nullptr)
Static helper function to fill a font object from the passed item set.
bool HasItemsSet(const sal_uInt16 *pWhich) const
SfxItemSet & GetItemSet()
const SfxPoolItem & GetItem(sal_uInt16 nWhichP) const
void FillEditItemSet(SfxItemSet *pEditSet, const SfxItemSet *pCondSet=nullptr) const
Converts all Calc items contained in the own item set to edit engine items and puts them into pEditSe...
static void GetFromEditItemSet(SfxItemSet &rDestSet, const SfxItemSet &rEditSet)
Converts all edit engine items contained in rEditSet to Calc items and puts them into rDestSet.
static SvxCellOrientation GetCellOrientation(const SfxItemSet &rItemSet, const SfxItemSet *pCondSet)
virtual ScPatternAttr * Clone(SfxItemPool *pPool=nullptr) const override
void FillEditParaItems(SfxItemSet *pSet) const
virtual SC_DLLPUBLIC SfxItemSet & GetItemSet() override
ScValidationData * GetData(sal_uInt32 nKey)
const SfxPoolItem & GetDefaultItem(sal_uInt16 nWhich) const
const T & Put(std::unique_ptr< T > xItem, sal_uInt16 nWhich=0)
SfxItemPool * GetPool() const
void SetParent(const SfxItemSet *pNew)
const T * GetItemIfSet(TypedWhichId< T > nWhich, bool bSrchInParent=true) const
sal_uInt16 ClearItem(sal_uInt16 nWhich=0)
SfxPoolItem const ** GetItems_Impl() const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
sal_uInt16 TotalCount() const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
std::vector< SfxPoolItem * >::const_iterator lookup_iterator
virtual SfxPoolItem * Clone(SfxItemPool *pPool=nullptr) const=0
virtual SfxStyleSheetBase * Find(const OUString &, SfxStyleFamily eFam, SfxStyleSearchBits n=SfxStyleSearchBits::All) const
virtual std::unique_ptr< SfxStyleSheetIterator > CreateIterator(SfxStyleFamily, SfxStyleSearchBits nMask=SfxStyleSearchBits::All)
virtual SfxStyleSheetBase & Make(const OUString &, SfxStyleFamily eFam, SfxStyleSearchBits nMask=SfxStyleSearchBits::All)
virtual const OUString & GetParent() const
const OUString & GetName() const
SfxStyleFamily GetFamily() const
virtual bool SetParent(const OUString &)
virtual SfxItemSet & GetItemSet()
SvxAdjust GetAdjust() const
const Color & GetColor() const
const Color & GetValue() const
FontEmphasisMark GetEmphasisMark() const
sal_uInt32 GetHeight() const
FontFamily GetFamily() const
FontPitch GetPitch() const
const OUString & GetStyleName() const
rtl_TextEncoding GetCharSet() const
const OUString & GetFamilyName() const
LanguageType GetLanguage() const
void SetFontSize(const Size &)
void SetOutline(bool bOutline)
void SetStyleName(const OUString &rStyleName)
void SetWordLineMode(bool bWordLine)
void SetPitch(FontPitch ePitch)
void SetTransparent(bool bTransparent)
void SetColor(const Color &)
const OUString & GetStyleName() const
void SetItalic(FontItalic)
void SetWeight(FontWeight)
const OUString & GetFamilyName() const
void SetFamily(FontFamily)
void SetUnderline(FontLineStyle)
void SetCharSet(rtl_TextEncoding)
void SetOverline(FontLineStyle)
void SetFamilyName(const OUString &rFamilyName)
void SetLanguage(LanguageType)
void SetShadow(bool bShadow)
void SetRelief(FontRelief)
void SetEmphasisMark(FontEmphasisMark)
void SetStrikeout(FontStrikeout)
constexpr ::Color COL_WHITE(0xFF, 0xFF, 0xFF)
constexpr ::Color COL_AUTO(ColorTransparency, 0xFF, 0xFF, 0xFF, 0xFF)
constexpr ::Color COL_BLACK(0x00, 0x00, 0x00)
constexpr ::Color COL_TRANSPARENT(ColorTransparency, 0xFF, 0xFF, 0xFF, 0xFF)
constexpr TypedWhichId< SvxContourItem > EE_CHAR_OUTLINE(EE_CHAR_START+8)
constexpr TypedWhichId< SfxBoolItem > EE_PARA_HYPHENATE(EE_PARA_START+6)
constexpr TypedWhichId< SvxFontItem > EE_CHAR_FONTINFO_CJK(EE_CHAR_START+17)
constexpr TypedWhichId< SvxUnderlineItem > EE_CHAR_UNDERLINE(EE_CHAR_START+5)
constexpr TypedWhichId< SvxAdjustItem > EE_PARA_JUST(EE_PARA_START+16)
constexpr TypedWhichId< SvxFontHeightItem > EE_CHAR_FONTHEIGHT(EE_CHAR_START+2)
constexpr TypedWhichId< SvxShadowedItem > EE_CHAR_SHADOW(EE_CHAR_START+9)
constexpr TypedWhichId< SvxOverlineItem > EE_CHAR_OVERLINE(EE_CHAR_START+29)
constexpr TypedWhichId< SvxLanguageItem > EE_CHAR_LANGUAGE_CTL(EE_CHAR_START+16)
constexpr TypedWhichId< SvxWeightItem > EE_CHAR_WEIGHT(EE_CHAR_START+4)
constexpr TypedWhichId< SvxColorItem > EE_CHAR_COLOR(EE_CHAR_START+0)
constexpr TypedWhichId< SvxWeightItem > EE_CHAR_WEIGHT_CTL(EE_CHAR_START+22)
constexpr TypedWhichId< SvxCrossedOutItem > EE_CHAR_STRIKEOUT(EE_CHAR_START+6)
constexpr TypedWhichId< SvxForbiddenRuleItem > EE_PARA_FORBIDDENRULES(EE_PARA_START+3)
constexpr TypedWhichId< SvxPostureItem > EE_CHAR_ITALIC(EE_CHAR_START+7)
constexpr TypedWhichId< SvxEmphasisMarkItem > EE_CHAR_EMPHASISMARK(EE_CHAR_START+25)
constexpr TypedWhichId< SvxFontHeightItem > EE_CHAR_FONTHEIGHT_CTL(EE_CHAR_START+20)
constexpr TypedWhichId< SvxWeightItem > EE_CHAR_WEIGHT_CJK(EE_CHAR_START+21)
constexpr TypedWhichId< SvxLanguageItem > EE_CHAR_LANGUAGE_CJK(EE_CHAR_START+15)
constexpr TypedWhichId< SvxFrameDirectionItem > EE_PARA_WRITINGDIR(EE_PARA_START+0)
constexpr TypedWhichId< SvxPostureItem > EE_CHAR_ITALIC_CJK(EE_CHAR_START+23)
constexpr TypedWhichId< SvxFontItem > EE_CHAR_FONTINFO_CTL(EE_CHAR_START+18)
constexpr TypedWhichId< SvxPostureItem > EE_CHAR_ITALIC_CTL(EE_CHAR_START+24)
constexpr TypedWhichId< SvxLanguageItem > EE_CHAR_LANGUAGE(EE_CHAR_START+14)
constexpr TypedWhichId< SvxScriptSpaceItem > EE_PARA_ASIANCJKSPACING(EE_PARA_START+4)
constexpr TypedWhichId< SvxWordLineModeItem > EE_CHAR_WLM(EE_CHAR_START+13)
constexpr TypedWhichId< SvxCharReliefItem > EE_CHAR_RELIEF(EE_CHAR_START+26)
constexpr TypedWhichId< SvxFontHeightItem > EE_CHAR_FONTHEIGHT_CJK(EE_CHAR_START+19)
constexpr TypedWhichId< SvxFontItem > EE_CHAR_FONTINFO(EE_CHAR_START+1)
constexpr auto toTwips(N number, Length from)
enumrange< T >::Iterator begin(enumrange< T >)
constexpr size_t compareSize
static SfxStyleSheetBase * lcl_CopyStyleToPool(SfxStyleSheetBase *pSrcStyle, SfxStyleSheetBasePool *pSrcPool, SfxStyleSheetBasePool *pDestPool, const SvNumberFormatterIndexTable *pFormatExchangeList)
static bool StrCmp(const OUString *pStr1, const OUString *pStr2)
static void lcl_populate(std::unique_ptr< T > &rxItem, TypedWhichId< T > nWhich, const SfxItemSet &rSrcSet, const SfxItemSet *pCondSet)
static bool EqualPatternSets(const SfxItemSet &rSet1, const SfxItemSet &rSet2)
static bool OneEqual(const SfxItemSet &rSet1, const SfxItemSet &rSet2, sal_uInt16 nId)
ScAutoFontColorMode
how to treat COL_AUTO in GetFont:
@ SC_AUTOCOL_BLACK
always use black
@ SC_AUTOCOL_IGNOREBACK
like DISPLAY, but ignore stored background color (use configured color)
@ SC_AUTOCOL_RAW
COL_AUTO is returned.
@ SC_AUTOCOL_IGNOREFONT
like DISPLAY, but ignore stored font color (assume COL_AUTO)
@ SC_AUTOCOL_PRINT
black or white, depending on background
@ SC_AUTOCOL_IGNOREALL
like DISPLAY, but ignore stored font and background colors
OUString ScResId(TranslateId aId)
constexpr TypedWhichId< SvxFontHeightItem > ATTR_FONT_HEIGHT(101)
constexpr TypedWhichId< SvxFontItem > ATTR_CJK_FONT(111)
constexpr TypedWhichId< ScPatternAttr > ATTR_PATTERN(156)
constexpr TypedWhichId< SvxForbiddenRuleItem > ATTR_FORBIDDEN_RULES(128)
constexpr TypedWhichId< SvxPostureItem > ATTR_CTL_FONT_POSTURE(119)
constexpr TypedWhichId< SvxFontItem > ATTR_CTL_FONT(116)
constexpr TypedWhichId< SvxFontHeightItem > ATTR_CJK_FONT_HEIGHT(112)
constexpr TypedWhichId< SvxPostureItem > ATTR_FONT_POSTURE(103)
constexpr TypedWhichId< SvxWeightItem > ATTR_FONT_WEIGHT(102)
constexpr TypedWhichId< SvxColorItem > ATTR_FONT_COLOR(109)
constexpr TypedWhichId< SvxWeightItem > ATTR_CJK_FONT_WEIGHT(113)
constexpr TypedWhichId< SvxEmphasisMarkItem > ATTR_FONT_EMPHASISMARK(121)
constexpr TypedWhichId< SvxLineItem > ATTR_BORDER_TLBR(141)
constexpr TypedWhichId< SvxShadowedItem > ATTR_FONT_SHADOWED(108)
constexpr TypedWhichId< SvxWordLineModeItem > ATTR_FONT_WORDLINE(123)
constexpr TypedWhichId< SvxContourItem > ATTR_FONT_CONTOUR(107)
constexpr TypedWhichId< SvxLanguageItem > ATTR_CTL_FONT_LANGUAGE(120)
constexpr TypedWhichId< SvxBrushItem > ATTR_BACKGROUND(148)
constexpr TypedWhichId< SvxOverlineItem > ATTR_FONT_OVERLINE(105)
constexpr TypedWhichId< SvxShadowItem > ATTR_SHADOW(152)
constexpr TypedWhichId< SvxLanguageItem > ATTR_LANGUAGE_FORMAT(147)
constexpr TypedWhichId< ScRotateValueItem > ATTR_ROTATE_VALUE(135)
constexpr TypedWhichId< SvxHorJustifyItem > ATTR_HOR_JUSTIFY(129)
constexpr sal_uInt16 ATTR_PATTERN_START(100)
constexpr TypedWhichId< SvxRotateModeItem > ATTR_ROTATE_MODE(136)
constexpr TypedWhichId< SvxBoxItem > ATTR_BORDER(150)
constexpr TypedWhichId< SvxCharReliefItem > ATTR_FONT_RELIEF(124)
constexpr TypedWhichId< SfxUInt32Item > ATTR_VALUE_FORMAT(146)
constexpr TypedWhichId< SvxFrameDirectionItem > ATTR_WRITINGDIR(138)
constexpr TypedWhichId< SvxCrossedOutItem > ATTR_FONT_CROSSEDOUT(106)
constexpr TypedWhichId< SvxLineItem > ATTR_BORDER_BLTR(142)
constexpr TypedWhichId< ScVerticalStackCell > ATTR_STACKED(134)
constexpr TypedWhichId< ScHyphenateCell > ATTR_HYPHENATE(125)
constexpr TypedWhichId< SvxFontItem > ATTR_FONT(100)
constexpr TypedWhichId< SvxLanguageItem > ATTR_FONT_LANGUAGE(110)
constexpr sal_uInt16 ATTR_PATTERN_END(155)
constexpr TypedWhichId< SvxWeightItem > ATTR_CTL_FONT_WEIGHT(118)
constexpr TypedWhichId< SvxPostureItem > ATTR_CJK_FONT_POSTURE(114)
constexpr TypedWhichId< SfxUInt32Item > ATTR_VALIDDATA(153)
constexpr TypedWhichId< SvxLanguageItem > ATTR_CJK_FONT_LANGUAGE(115)
constexpr TypedWhichId< SvxFontHeightItem > ATTR_CTL_FONT_HEIGHT(117)
constexpr TypedWhichId< SvxUnderlineItem > ATTR_FONT_UNDERLINE(104)
std::optional< bool > bShadow
std::optional< const SvxFontItem * > pFontAttr
std::optional< bool > bOutline
std::optional< bool > bWordLine
std::optional< FontLineStyle > eUnder
std::optional< FontItalic > eItalic
std::optional< FontLineStyle > eOver
std::optional< FontRelief > eRelief
std::optional< LanguageType > eLang
std::optional< FontStrikeout > eStrike
std::optional< FontEmphasisMark > eEmphasis
std::optional< sal_uInt32 > nFontHeight
std::optional< FontWeight > eWeight
std::optional< Color > aColor
std::unordered_map< sal_uInt16, sal_uInt32 > SvNumberFormatterIndexTable
#define SV_COUNTRY_LANGUAGE_OFFSET