21#include <config_folders.h>
23#include <com/sun/star/style/XStyle.hpp>
24#include <com/sun/star/drawing/LineStyle.hpp>
25#include <com/sun/star/form/XReset.hpp>
26#include <com/sun/star/document/XImporter.hpp>
27#include <com/sun/star/uno/XComponentContext.hpp>
28#include <com/sun/star/xml/sax/XFastParser.hpp>
40#include <rtl/bootstrap.hxx>
52#include <svx/svxids.hrc>
59#include <svx/strings.hrc>
110#include <drawdoc.hxx>
112#include <strings.hrc>
114#include <stlpool.hxx>
120#include <strings.hxx>
141 const OUString aHelpFile;
142 OUString aStdName(
SdResId(STR_STANDARD_STYLESHEET_NAME));
148 OUString
aName(aStdName);
149 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
150 pSheet->
SetHelpId( aHelpFile, HID_STANDARD_STYLESHEET_NAME );
163 XHatch aNullHatch(aNullCol);
184 Size aNullSize( 32, 32 );
195 vcl::Font aLatinFont, aCJKFont, aCTLFont;
208 rISet.
Put( aSvxFontItem );
209 rISet.
Put( aSvxFontItemCJK );
210 rISet.
Put( aSvxFontItemCTL );
255 aBulletItem.
SetStyle(SvxBulletStyle::BULLET);
263 aBulletItem.
SetFont(aBulletFont);
265 rISet.
Put(aBulletItem);
275 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
277 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_OBJWITHOUTFILL );
285 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
287 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_OBJNOLINENOFILL );
299 aTextName =
SdResId(STR_POOLSHEET_TEXT);
300 pSheet = &(pSSPool->Make(aTextName, SfxStyleFamily::Para, nMask));
301 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_TEXT );
304 pISet->
Put( aSvxFontItem );
313 aA4Name =
SdResId(STR_POOLSHEET_A4);
314 pSheet = &(pSSPool->Make(aA4Name, SfxStyleFamily::Para, nMask));
316 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A4 );
325 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
327 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A4_TITLE );
335 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
337 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A4_HEADLINE );
345 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
347 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A4_TEXT );
354 aA0Name =
SdResId(STR_POOLSHEET_A0);
355 pSheet = &(pSSPool->Make(aA0Name, SfxStyleFamily::Para, nMask));
357 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A0 );
365 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
367 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A0_TITLE );
375 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
377 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A0_HEADLINE );
385 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
387 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_A0_TEXT );
393 OUString aGraphicName;
398 aGraphicName =
SdResId(STR_POOLSHEET_GRAPHIC);
399 pSheet = &(pSSPool->Make(aGraphicName, SfxStyleFamily::Para, nMask));
400 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_GRAPHIC );
403 pISet->
Put( aSvxFontItem );
410 OUString aShapesName;
412 aShapesName =
SdResId(STR_POOLSHEET_SHAPES);
413 pSheet = &(pSSPool->Make(aShapesName, SfxStyleFamily::Para, nMask));
415 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_SHAPES);
423 Color(0xcccccc).getBColor(),
426 aFillGradient.
SetName( aShapesName );
428 pISet->
Put( aFillGradient );
434 OUString aFilledName(
SdResId(STR_POOLSHEET_FILLED));
437 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
438 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_FILLED );
448 Color(0xcccccc).getBColor()));
453 pISet->
Put( aFillGradient );
458 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
460 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_FILLED_BLUE );
465 Color(0x00729fcf).getBColor(),
466 Color(0x00355269).getBColor()));
470 pISet->
Put( aFillGradient );
476 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
478 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_FILLED_GREEN );
483 Color(0x0077bc65).getBColor(),
484 Color(0x00127622).getBColor()));
488 pISet->
Put( aFillGradient );
489 pISet->
Put( aSvxFontItem );
495 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
497 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_FILLED_RED );
502 Color(0x00ff6d6d).getBColor(),
503 Color(0x00c9211e).getBColor()));
507 pISet->
Put( aFillGradient );
513 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
515 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_FILLED_YELLOW );
520 Color(0x00ffde59).getBColor(),
521 Color(0x00b47804).getBColor()));
525 pISet->
Put( aFillGradient );
529 OUString aOutlineName(
SdResId(STR_POOLSHEET_OUTLINE));
531 aName = aOutlineName;
532 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
533 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_OUTLINE );
544 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
546 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_OUTLINE_BLUE );
554 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
556 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_OUTLINE_GREEN );
564 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
566 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_OUTLINE_RED );
574 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
576 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_OUTLINE_YELLOW );
585 aLinesName =
SdResId(STR_POOLSHEET_LINES);
586 pSheet = &(pSSPool->Make(aLinesName, SfxStyleFamily::Para, nMask));
588 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_LINES);
597 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
599 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_MEASURE );
617 pSheet = &(pSSPool->Make(
aName, SfxStyleFamily::Para, nMask));
619 pSheet->
SetHelpId( aHelpFile, HID_POOLSHEET_LINES_DASHED );
625 OUString aPrefix =
SdResId(STR_LAYOUT_DEFAULT_NAME);
635 Reference<css::document::XImporter> xImporter(xContext->getServiceManager()->createInstanceWithArgumentsAndContext(
636 "com.sun.star.comp.Draw.XMLOasisStylesImporter",
637 { Any(comphelper::makePropertyValue(
"OrganizerMode", true)) }, xContext), UNO_QUERY);
641 OUString
aURL(
"$BRAND_BASE_DIR/" LIBO_SHARE_FOLDER
"/config/soffice.cfg/simpress/styles.xml");
642 rtl::Bootstrap::expandMacros(
aURL);
646 css::xml::sax::InputSource aParserInput;
647 aParserInput.sPublicId =
aURL;
648 aParserInput.aInputStream = xInputStream;
649 Reference<css::xml::sax::XFastParser> xFastParser(xImporter, UNO_QUERY);
651 xFastParser->parseStream(aParserInput);
654 vcl::Font aLatinFont, aCJKFont, aCTLFont;
668 SfxStyleSheetBase* pDefaultStyle = pSSPool->Find(
"default", SfxStyleFamily::Frame);
684 pSheet->
SetMask(SfxStyleSearchBits::Auto);
685 pSheet = pSSPool->Next();
688 Reference<form::XReset> xReset(pSSPool->
getByName(
"table"), UNO_QUERY);
696 sal_uInt16 nResult = 0;
700 for (nPage = 0; nPage < nPageCount; nPage++)
740 if ( xSpellChecker.is() )
741 pOutl->SetSpeller( xSpellChecker );
744 if( xHyphenator.is() )
745 pOutl->SetHyphenator( xHyphenator );
793 bool bSubTextObjFound =
false;
795 while (aGroupIter.
IsMore() && !bSubTextObjFound)
800 bSubTextObjFound =
true;
804 if (bSubTextObjFound)
815 if (mpOnlineSpellingList!=
nullptr
816 && ( !mbOnlineSpell || mpOnlineSpellingList->hasMore()))
819 SdrObject* pObj = mpOnlineSpellingList->getNextShape();
834 while (aGroupIter.
IsMore())
841 SpellObject(pTextObj);
847 mpOnlineSpellingIdle->Start();
852 mbInitialOnlineSpellingEnabled =
false;
855 StopOnlineSpelling();
857 mpOnlineSearchItem.reset();
869 pOutl->SetUpdateLayout(
true);
878 nOutlMode = OutlinerMode::OutlineObject;
880 pOutl->Init( nOutlMode );
888 pOutl->CompleteOnlineSpelling();
908 pOutl->SetStatusEventHdl(aEvtHdl);
909 pOutl->SetUpdateLayout(
false);
910 pOutl->Init( nOldOutlMode );
944 mbHasOnlineSpellErrors = bool(nStat & EditStatusFlags::WRONGWORDCHANGED);
956 if (nCommand == SpellCallbackCommand::IGNOREWORD
958 || nCommand == SpellCallbackCommand::ADDTODICTIONARY)
964 pTextObj->SetOutlinerParaObject(pOutl->CreateParaObject());
973 else if (nCommand == SpellCallbackCommand::STARTSPELLDLG)
976 pViewFrame->GetDispatcher()->Execute( SID_SPELL_DIALOG, SfxCallMode::ASYNCHRON );
978 else if (nCommand == SpellCallbackCommand::AUTOCORRECT_OPTIONS)
981 pViewFrame->GetDispatcher()->Execute( SID_AUTO_CORRECT_DLG, SfxCallMode::ASYNCHRON );
988 OUString aPageNumValue;
993 case css::style::NumberingType::CHARS_UPPER_LETTER:
994 aPageNumValue += OUStringChar(
sal_Unicode((nNum - 1) % 26 +
'A') );
996 case css::style::NumberingType::CHARS_LOWER_LETTER:
997 aPageNumValue += OUStringChar(
sal_Unicode((nNum - 1) % 26 +
'a') );
999 case css::style::NumberingType::ROMAN_UPPER:
1002 case css::style::NumberingType::ROMAN_LOWER:
1005 case css::style::NumberingType::NUMBER_NONE:
1006 aPageNumValue =
" ";
1009 aPageNumValue += OUString::number(nNum);
1012 return aPageNumValue;
1021 OUString aOldName(rOldLayoutName);
1022 sal_Int32
nPos = aOldName.indexOf( aSep );
1026 aOldName = aOldName.copy(0,
nPos + aSep.getLength());
1028 std::vector<StyleReplaceData> aReplList;
1034 OUString aSheetName = pSheet->
GetName();
1037 if (aSheetName.startsWith(aOldName))
1039 aSheetName = aSheetName.replaceAt(0, aOldName.getLength() - aSep.getLength(), rNewName);
1046 aReplList.push_back(aReplData);
1051 pSheet = aIter.
Next();
1066 if (aTemp == rOldLayoutName)
1070 for (
size_t nObj = 0; nObj < pPage->
GetObjCount(); ++nObj)
1078 case SdrObjKind::Text:
1079 case SdrObjKind::OutlineText:
1080 case SdrObjKind::TitleText:
1086 for (
const auto& rRepl : aReplList)
1087 pOPO->
ChangeStyleSheets( rRepl.aName, rRepl.nFamily, rRepl.aNewName, rRepl.nNewFamily );
1107 if (aTemp == rOldLayoutName)
1112 for (
size_t nObj = 0; nObj < pPage->
GetObjCount(); ++nObj)
1120 case SdrObjKind::Text:
1121 case SdrObjKind::OutlineText:
1122 case SdrObjKind::TitleText:
1128 for (
const auto& rRepl : aReplList)
1129 pOPO->
ChangeStyleSheets( rRepl.aName, rRepl.nFamily, rRepl.aNewName, rRepl.nNewFamily );
1150 aBulletItem.
SetFont(aBulletFont);
1151 aBulletItem.
SetStyle(SvxBulletStyle::BULLET);
1166 SvxNumRule aNumRule( SvxNumRuleFlags::BULLET_REL_SIZE | SvxNumRuleFlags::BULLET_COLOR,
SVX_MAX_NUM,
false);
1174 const auto nLSpace = (
i + 1) * 600;
1181 m_pItemPool->SetPoolDefaultItem( aNumBulletItem );
1187 css::text::WritingMode eRet = css::text::WritingMode_LR_TB;
1193 case SvxFrameDirection::Horizontal_LR_TB: eRet = css::text::WritingMode_LR_TB;
break;
1194 case SvxFrameDirection::Horizontal_RL_TB: eRet = css::text::WritingMode_RL_TB;
break;
1195 case SvxFrameDirection::Vertical_RL_TB: eRet = css::text::WritingMode_TB_RL;
break;
1198 OSL_FAIL(
"Frame direction not supported yet" );
1214 case css::text::WritingMode_LR_TB: nVal = SvxFrameDirection::Horizontal_LR_TB;
break;
1215 case css::text::WritingMode_RL_TB: nVal = SvxFrameDirection::Horizontal_RL_TB;
break;
1216 case css::text::WritingMode_TB_RL: nVal = SvxFrameDirection::Vertical_RL_TB;
break;
1218 OSL_FAIL(
"Frame direction not supported yet" );
1227 if(
eMode == css::text::WritingMode_RL_TB )
1242 eLatin = eUiLanguage;
1256 double fTemp = double(nWesternFontHeight) * 1.333;
1257 nWesternFontHeight =
static_cast<sal_uInt32
>(fTemp);
1261 return nWesternFontHeight;
1270: mpDocShell( nullptr ), mpDoc( pDoc )
constexpr auto convertPointToMm100(N n)
constexpr auto convertMm100ToPoint(N n)
const LanguageTag & GetLanguageTag() const
const LanguageTag & GetUILanguageTag() const
static const AllSettings & GetSettings()
bool Erase(const Color &rFillColor)
basegfx::BColor getBColor() const
LanguageType getLanguageType(bool bResolveSystem=true) const
static css::uno::Reference< css::linguistic2::XSpellChecker1 > GetSpellChecker()
static css::uno::Reference< css::linguistic2::XHyphenator > GetHyphenator()
static bool isKorean(LanguageType nLang)
void SetName(const OUString &rName)
bool isWrongListEqual(const OutlinerParaObject &rCompare) const
bool ChangeStyleSheets(std::u16string_view rOldName, SfxStyleFamily eOldFamily, const OUString &rNewName, SfxStyleFamily eNewFamily)
static vcl::Font GetDefaultFont(DefaultFontType nType, LanguageType eLang, GetDefaultFontFlags nFlags, const OutputDevice *pOutDev=nullptr)
SAL_DLLPRIVATE void InsertObject(SdrObject *pObj)
SAL_DLLPRIVATE void RemoveObject(SdrObject *pObj)
SAL_DLLPRIVATE void FillOnlineSpellingList(SdPage const *pPage)
SAL_DLLPRIVATE sal_uInt16 GetMasterPageUserCount(SdrPage const *pMaster) const
SAL_DLLPRIVATE void StopOnlineSpelling()
SAL_DLLPRIVATE void CreateLayoutTemplates()
std::unique_ptr< SvxSearchItem > mpOnlineSearchItem
SAL_DLLPRIVATE void ImpOnlineSpellCallback(SpellCallbackInfo const *pInfo, SdrObject *pObj, SdrOutliner const *pOutl)
OUString CreatePageNumValue(sal_uInt16 nNum) const
SdOutliner * GetInternalOutliner(bool bCreateOutliner=true)
SAL_DLLPRIVATE void SpellObject(SdrTextObj *pObj)
::sd::DrawDocShell * mpDocSh
bool mbHasOnlineSpellErrors
std::unique_ptr< Idle > mpOnlineSpellingIdle
SAL_DLLPRIVATE void CreateDefaultCellStyles()
SAL_DLLPRIVATE void StartOnlineSpelling(bool bForceSpelling=true)
SAL_DLLPRIVATE void SetTextDefaults() const
SAL_DLLPRIVATE void SetDefaultWritingMode(css::text::WritingMode eMode)
SAL_DLLPRIVATE void RenameLayoutTemplate(const OUString &rOldLayoutName, const OUString &rNewName)
SdStyleSheetPool * GetSdStyleSheetPool() const
Get the style sheet pool if it was a SdStyleSheetPool.
SAL_DLLPRIVATE void getDefaultFonts(vcl::Font &rLatinFont, vcl::Font &rCJKFont, vcl::Font &rCTLFont)
return the document fonts for latin, cjk and ctl according to the current languages set at this docum...
std::unique_ptr< sd::ShapeList > mpOnlineSpellingList
SAL_DLLPRIVATE LanguageType GetLanguage(const sal_uInt16 nId) const
css::text::WritingMode GetDefaultWritingMode() const
bool mbInitialOnlineSpellingEnabled
virtual SAL_DLLPRIVATE void SetChanged(bool bFlag=true) override
SAL_DLLPRIVATE::sd::DrawDocShell * GetDocSh() const
static SAL_DLLPRIVATE sal_uInt32 convertFontHeightToCTL(sal_uInt32 nWesternFontHeight)
converts the given western font height to a corresponding ctl font height, depending on the system la...
The main purpose of this class is searching and replacing as well as spelling of impress documents.
void SetLayoutName(const OUString &aName)
virtual OUString GetLayoutName() const override
void SetName(const OUString &rName)
Set the name of the page and broadcast a model change.
virtual css::uno::Any SAL_CALL getByName(const OUString &aName) override
static void PutNumBulletItem(SfxStyleSheetBase *pSheet, vcl::Font &rBulletFont)
static vcl::Font GetBulletFont()
SD_DLLPUBLIC void CreateLayoutStyleSheets(std::u16string_view rLayoutName, bool bCheck=false)
creates all layout style sheets for the given layout name if they don't exist yet.
const SdrPage * GetMasterPage(sal_uInt16 nPgNum) const
sal_uInt16 GetMasterPageCount() const
rtl::Reference< SfxItemPool > m_pItemPool
SfxStyleSheetBasePool * GetStyleSheetPool() const
const SdrPage * GetPage(sal_uInt16 nPgNum) const
rtl::Reference< SfxStyleSheetBasePool > mxStyleSheetPool
sal_uInt16 GetPageCount() const
SdrObject * GetObj(size_t nNum) const
size_t GetObjCount() const
void BroadcastObjectChange() const
virtual SdrInventor GetObjInventor() const
virtual OutlinerParaObject * GetOutlinerParaObject() const
virtual SdrObjKind GetObjIdentifier() const
SdrPage & TRG_GetMasterPage() const
bool TRG_HasMasterPage() const
virtual OutlinerParaObject * GetOutlinerParaObject() const override
virtual void NbcSetOutlinerParaObject(std::optional< OutlinerParaObject > pTextObject) override
virtual SdrObjKind GetObjIdentifier() const override
bool HasItem(sal_uInt16 nWhich, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
bool IsEnableSetModified() const
css::uno::Reference< css::frame::XModel3 > GetModel() const
void EnableSetModified(bool bEnable=true)
virtual bool SetName(const OUString &rNewName, bool bReindexNow=true)
const OUString & GetName() const
SfxStyleFamily GetFamily() const
virtual void SetHelpId(const OUString &r, sal_uLong nId)
virtual bool SetParent(const OUString &)
virtual SfxItemSet & GetItemSet()
void SetMask(SfxStyleSearchBits mask)
virtual SfxStyleSheetBase * Next()
virtual SfxStyleSheetBase * First()
static SAL_WARN_UNUSED_RESULT SfxViewFrame * Current()
void SetAdjust(const SvxAdjust eType)
void SetStart(sal_uInt16 nNew)
void SetStyle(SvxBulletStyle nNew)
void SetFont(const vcl::Font &rNew)
void SetScale(sal_uInt16 nNew)
void SetSymbol(sal_Unicode c)
void SetFamilyName(const OUString &rFamilyName)
sal_uInt16 GetLevelCount() const
void SetLevel(sal_uInt16 nLevel, const SvxNumberFormat &rFmt, bool bIsValid=true)
void SetGradientValue(const basegfx::BGradient &rNew)
void append(const basegfx::B2DPoint &rPoint, sal_uInt32 nCount)
void setClosed(bool bNew)
void SetGradientStyle(css::awt::GradientStyle eNewStyle)
void SetColorStops(const basegfx::BColorStops &rSteps)
void SetEndIntens(sal_uInt16 nNewIntens)
void SetStartIntens(sal_uInt16 nNewIntens)
void SetAngle(Degree10 nNewAngle)
SdDrawDocument * GetDoc()
an instance of this guard disables modification of a document during its lifetime
bool mbIsEnableSetModified
DrawDocShell * mpDocShell
void SetFontSize(const Size &)
FontFamily GetFamilyType()
const OUString & GetStyleName() const
const OUString & GetFamilyName() const
rtl_TextEncoding GetCharSet() const
constexpr ::Color COL_GRAY(0x80, 0x80, 0x80)
constexpr ::Color COL_WHITE(0xFF, 0xFF, 0xFF)
constexpr ::Color COL_AUTO(ColorTransparency, 0xFF, 0xFF, 0xFF, 0xFF)
constexpr ::Color COL_BLACK(0x00, 0x00, 0x00)
SVXCORE_DLLPUBLIC OUString SvxResId(TranslateId aId)
IMPL_LINK(SdDrawDocument, OnlineSpellEventHdl, EditStatus &, rEditStat, void)
IMPL_LINK_NOARG(SdDrawDocument, OnlineSpellingHdl, Timer *, void)
constexpr TypedWhichId< SvxContourItem > EE_CHAR_OUTLINE(EE_CHAR_START+8)
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< SvxAutoKernItem > EE_CHAR_PAIRKERNING(EE_CHAR_START+11)
constexpr TypedWhichId< SvxShadowedItem > EE_CHAR_SHADOW(EE_CHAR_START+9)
constexpr TypedWhichId< SvxULSpaceItem > EE_PARA_ULSPACE(EE_PARA_START+14)
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< SvxLRSpaceItem > EE_PARA_LRSPACE(EE_PARA_START+13)
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< SvxPostureItem > EE_CHAR_ITALIC(EE_CHAR_START+7)
constexpr TypedWhichId< SvxLineSpacingItem > EE_PARA_SBL(EE_PARA_START+15)
constexpr TypedWhichId< SvxEmphasisMarkItem > EE_CHAR_EMPHASISMARK(EE_CHAR_START+25)
constexpr TypedWhichId< SvxBulletItem > EE_PARA_BULLET(EE_PARA_START+12)
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< SvxCaseMapItem > EE_CHAR_CASEMAP(EE_CHAR_START+30)
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< SvxNumBulletItem > EE_PARA_NUMBULLET(EE_PARA_START+5)
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 OUStringLiteral SD_LT_SEPARATOR
#define LINK(Instance, Class, Member)
#define LINE_SPACE_DEFAULT_HEIGHT
Reference< XComponentContext > getProcessComponentContext()
SdrOnOffItem makeSdrTextWordWrapItem(bool bAuto)
OUString SdResId(TranslateId aId)
XColorItem makeSdrShadowColorItem(const Color &rTheColor)
SdrOnOffItem makeSdrShadowItem(bool bShadow)
SdrMetricItem makeSdrShadowXDistItem(tools::Long nDist)
SdrMetricItem makeSdrShadowYDistItem(tools::Long nDist)
SdrMetricItem makeSdrTextUpperDistItem(tools::Long mnHeight)
SdrMetricItem makeSdrTextRightDistItem(tools::Long mnHeight)
SdrMetricItem makeSdrTextLowerDistItem(tools::Long mnHeight)
SdrMetricItem makeSdrTextLeftDistItem(tools::Long mnHeight)
constexpr OUStringLiteral STR_LAYOUT_OUTLINE
SpellCallbackCommand nCommand
SfxStyleFamily nNewFamily
constexpr TypedWhichId< SdrYesNoItem > SDRATTR_MEASURESHOWUNIT(SDRATTR_MEASURE_FIRST+14)
SVXCORE_DLLPUBLIC SdrTextObj * DynCastSdrTextObj(SdrObject *)
#define COL_DEFAULT_SHAPE_FILLING
#define COL_DEFAULT_SHAPE_STROKE