20#include <com/sun/star/beans/PropertyAttribute.hpp>
21#include <com/sun/star/beans/XPropertySet.hpp>
22#include <com/sun/star/lang/DisposedException.hpp>
23#include <com/sun/star/lang/WrappedTargetRuntimeException.hpp>
24#include <com/sun/star/style/XStyle.hpp>
25#include <com/sun/star/table/BorderLine.hpp>
26#include <com/sun/star/text/XTextColumns.hpp>
29#include <osl/mutex.hxx>
58#include <stlsheet.hxx>
74using ::osl::MutexGuard;
75using ::com::sun::star::table::BorderLine;
84#define WID_STYLE_HIDDEN 7997
85#define WID_STYLE_DISPNAME 7998
86#define WID_STYLE_FAMILY 7999
128: mpStyleSheet( pStyleSheet )
145, msApiName( rDisplayName )
171 bool bResult =
false;
176 if (nFamily != SfxStyleFamily::Pseudo)
178 if( !rParentName.isEmpty() )
186 Broadcast(
SfxHint( SfxHintId::DataChanged ) );
193 Broadcast(
SfxHint( SfxHintId::DataChanged ) );
209 if (nFamily == SfxStyleFamily::Para || nFamily == SfxStyleFamily::Page)
228 else if( nFamily == SfxStyleFamily::Frame )
284 bool bResult =
false;
289 if( pListener ==
this )
292 const svl::StyleSheetUser*
const pUser(
dynamic_cast<svl::StyleSheetUser*
>(pListener));
294 bResult = pUser->isUsedByModel();
302 std::unique_lock aGuard(
m_aMutex );
307 bResult = std::any_of(aModifyListeners.begin(), aModifyListeners.end(),
308 [](
const Reference<XInterface>& rListener) {
309 Reference< XStyle > xStyle( rListener, UNO_QUERY );
312 Reference<XPropertySet> xPropertySet(xStyle, UNO_QUERY_THROW);
313 if (xPropertySet->getPropertyValue(
"IsPhysical").get<bool>())
319 return xStyle.is() && xStyle->isInUse();
333 if (GetFamily() != SfxStyleFamily::Frame)
336 if (!IsUserDefined())
339 bool bFoundOne =
false;
343 if (pListener !=
this &&
dynamic_cast<SdStyleSheet*
>(pListener))
373 if (pDrawViewShell && pDrawViewShell->
GetDoc() == pDoc)
381 if( aRealStyle.indexOf(aSep) >= 0)
383 aRealStyle = aRealStyle.copy(0,(aRealStyle.indexOf(aSep) + aSep.getLength()));
387 if (aRealStyle.isEmpty())
402 aRealStyle = pSheet->
GetName();
405 if( aRealStyle.indexOf(aSep) >= 0)
407 aRealStyle = aRealStyle.copy(0,(aRealStyle.indexOf(aSep) + aSep.getLength()));
413 OUString aInternalName;
414 OUString aStyleName(
aName);
416 if (aStyleName ==
SdResId(STR_PSEUDOSHEET_TITLE))
420 else if (aStyleName ==
SdResId(STR_PSEUDOSHEET_SUBTITLE))
424 else if (aStyleName ==
SdResId(STR_PSEUDOSHEET_BACKGROUND))
428 else if (aStyleName ==
SdResId(STR_PSEUDOSHEET_BACKGROUNDOBJECTS))
432 else if (aStyleName ==
SdResId(STR_PSEUDOSHEET_NOTES))
438 OUString aOutlineStr(
SdResId(STR_PSEUDOSHEET_OUTLINE));
439 sal_Int32
nPos = aStyleName.indexOf(aOutlineStr);
442 std::u16string_view aNumStr(aStyleName.subView(aOutlineStr.getLength()));
447 aRealStyle += aInternalName;
448 pRealStyle =
static_cast< SdStyleSheet*
>( m_pPool->Find(aRealStyle, SfxStyleFamily::Page) );
454 if( aIter.
Count() > 0 )
456 DBG_ASSERT(pRealStyle,
"Internal StyleSheet not found");
470 OUString aStyleName(
aName);
473 if( aStyleName.indexOf(aSep) >=0 )
475 aStyleName = aStyleName.copy (aStyleName.indexOf(aSep) + aSep.getLength());
480 aStyleName =
SdResId(STR_PSEUDOSHEET_TITLE);
484 aStyleName =
SdResId(STR_PSEUDOSHEET_SUBTITLE);
488 aStyleName =
SdResId(STR_PSEUDOSHEET_BACKGROUND);
492 aStyleName =
SdResId(STR_PSEUDOSHEET_BACKGROUNDOBJECTS);
496 aStyleName =
SdResId(STR_PSEUDOSHEET_NOTES);
501 sal_Int32
nPos = aStyleName.indexOf(aOutlineStr);
504 std::u16string_view aNumStr(aStyleName.subView(aOutlineStr.getLength()));
505 aStyleName =
SdResId(STR_PSEUDOSHEET_OUTLINE) + aNumStr;
509 pPseudoStyle =
static_cast<SdStyleSheet*
>(m_pPool->Find(aStyleName, SfxStyleFamily::Pseudo));
510 DBG_ASSERT(pPseudoStyle,
"PseudoStyleSheet missing");
520 if (nFamily != SfxStyleFamily::Pseudo)
525 if (rHint.
GetId() == SfxHintId::DataChanged)
529 pRealStyle->Broadcast(rHint);
546 OUString aStyleName(
aName);
547 if (eFamily == SfxStyleFamily::Pseudo)
551 aStyleName = pRealStyle->
GetName();
554 if (!(eFamily == SfxStyleFamily::Page &&
566 double fBulletFraction = double(rBItem.
GetWidth()) / nOldHeight;
568 aNewBItem.
SetWidth(
static_cast<sal_uInt32
>(fBulletFraction * nNewHeight));
575 double fIndentFraction = double(rLRItem.
GetTextLeft()) / nOldHeight;
577 aNewLRItem.
SetTextLeft(fIndentFraction * nNewHeight);
587 double fLowerFraction = double(rULItem.
GetLower()) / nOldHeight;
588 aNewULItem.
SetLower(
static_cast<sal_uInt16
>(fLowerFraction * nNewHeight));
589 double fUpperFraction = double(rULItem.
GetUpper()) / nOldHeight;
590 aNewULItem.
SetUpper(
static_cast<sal_uInt16
>(fUpperFraction * nNewHeight));
614 std::u16string_view mpApiName;
617 = { { std::u16string_view(u
"title"), HID_PSEUDOSHEET_TITLE },
618 { std::u16string_view(u
"subtitle"), HID_PSEUDOSHEET_SUBTITLE },
619 { std::u16string_view(u
"background"), HID_PSEUDOSHEET_BACKGROUND },
620 { std::u16string_view(u
"backgroundobjects"), HID_PSEUDOSHEET_BACKGROUNDOBJECTS },
621 { std::u16string_view(u
"notes"), HID_PSEUDOSHEET_NOTES },
622 { std::u16string_view(u
"standard"), HID_STANDARD_STYLESHEET_NAME },
623 { std::u16string_view(u
"objectwithoutfill"), HID_POOLSHEET_OBJWITHOUTFILL },
625 { std::u16string_view(u
"Text"), HID_POOLSHEET_TEXT },
626 { std::u16string_view(u
"A4"), HID_POOLSHEET_A4 },
627 { std::u16string_view(u
"Title A4"), HID_POOLSHEET_A4_TITLE },
628 { std::u16string_view(u
"Heading A4"), HID_POOLSHEET_A4_HEADLINE },
629 { std::u16string_view(u
"Text A4"), HID_POOLSHEET_A4_TEXT },
630 { std::u16string_view(u
"A0"), HID_POOLSHEET_A0 },
631 { std::u16string_view(u
"Title A0"), HID_POOLSHEET_A0_TITLE },
632 { std::u16string_view(u
"Heading A0"), HID_POOLSHEET_A0_HEADLINE },
633 { std::u16string_view(u
"Text A0"), HID_POOLSHEET_A0_TEXT },
635 { std::u16string_view(u
"Graphic"), HID_POOLSHEET_GRAPHIC },
636 { std::u16string_view(u
"Shapes"), HID_POOLSHEET_SHAPES },
637 { std::u16string_view(u
"Filled"), HID_POOLSHEET_FILLED },
638 { std::u16string_view(u
"Filled Blue"), HID_POOLSHEET_FILLED_BLUE },
639 { std::u16string_view(u
"Filled Green"), HID_POOLSHEET_FILLED_GREEN },
640 { std::u16string_view(u
"Filled Red"), HID_POOLSHEET_FILLED_RED },
641 { std::u16string_view(u
"Filled Yellow"), HID_POOLSHEET_FILLED_YELLOW },
642 { std::u16string_view(u
"Outlined"), HID_POOLSHEET_OUTLINE },
643 { std::u16string_view(u
"Outlined Blue"), HID_POOLSHEET_OUTLINE_BLUE },
644 { std::u16string_view(u
"Outlined Green"), HID_POOLSHEET_OUTLINE_GREEN },
645 { std::u16string_view(u
"Outlined Red"), HID_POOLSHEET_OUTLINE_RED },
646 { std::u16string_view(u
"Outlined Yellow"), HID_POOLSHEET_OUTLINE_YELLOW },
647 { std::u16string_view(u
"Lines"), HID_POOLSHEET_LINES },
648 { std::u16string_view(u
"Arrow Line"), HID_POOLSHEET_MEASURE },
649 { std::u16string_view(u
"Arrow Dashed"), HID_POOLSHEET_LINES_DASHED }
652OUString GetApiNameForHelpId(
sal_uLong nId)
654 if ((nId >= HID_PSEUDOSHEET_OUTLINE1) && (nId <= HID_PSEUDOSHEET_OUTLINE9))
655 return "outline" + OUStringChar(
sal_Unicode(
'1' + (nId - HID_PSEUDOSHEET_OUTLINE1)));
657 for (
const auto& i : pApiNameMap)
658 if (nId ==
i.mnHelpId)
659 return OUString(
i.mpApiName);
664sal_uInt32 GetHelpIdForApiName(std::u16string_view sName)
666 std::u16string_view sRest;
669 if (sRest.length() == 1)
672 if (
'1' <= ch && ch <=
'9')
673 return HID_PSEUDOSHEET_OUTLINE1 +
ch -
'1';
679 for (
const auto& i : pApiNameMap)
680 if (sName ==
i.mpApiName)
691 const OUString sNewApiName = GetApiNameForHelpId(
nId);
692 if (!sNewApiName.isEmpty())
700 case SfxStyleFamily::Frame:
703 OSL_FAIL(
"SdStyleSheet::GetFamilyString(), illegal family!" );
705 case SfxStyleFamily::Para:
713 throw DisposedException();
724 while( rPool.
Find(
aName, eFamily ) !=
nullptr );
748 SdStyleSheetBase::release();
766 EventObject aEvt(
static_cast< OWeakObject *
>(
this ) );
791 throw css::lang::WrappedTargetRuntimeException(
792 "unexpected UNO exception caught: " + exc.Message ,
811 std::unique_lock aGuard(
m_aMutex );
815 EventObject aEvt(
static_cast< OWeakObject *
>(
this ) );
816 xListener->disposing( aEvt );
826 std::unique_lock aGuard(
m_aMutex );
834 std::unique_lock aGuard(
m_aMutex );
838 EventObject aEvt(
static_cast< OWeakObject *
>(
this ) );
839 xListener->disposing( aEvt );
851 std::unique_lock aGuard(
m_aMutex );
857 std::unique_lock aGuard(
m_aMutex );
861 EventObject aEvt(
static_cast< OWeakObject *
>(
this ) );
869 return "SdStyleSheet";
879 return {
"com.sun.star.style.Style",
880 "com.sun.star.drawing.FillProperties",
881 "com.sun.star.drawing.LineProperties",
882 "com.sun.star.drawing.ShadowProperties",
883 "com.sun.star.drawing.ConnectorProperties",
884 "com.sun.star.drawing.MeasureProperties",
885 "com.sun.star.style.ParagraphProperties",
886 "com.sun.star.style.CharacterProperties",
887 "com.sun.star.drawing.TextProperties",
888 "com.sun.star.drawing.Text" };
893 const bool bResult = SfxUnoStyleSheet::SetName(rNewName, bReindexNow);
895 if (bResult && GetHelpIdForApiName(
msApiName) == 0)
898 Broadcast(
SfxHint(SfxHintId::DataChanged));
924 return IsUserDefined();
939 if( !GetParent().isEmpty() )
953 if( !rParentName.isEmpty() )
957 OUString
const master((sep == -1) ? OUString() :
name.copy(0, sep));
958 std::shared_ptr<SfxStyleSheetIterator> aSSSI = std::make_shared<SfxStyleSheetIterator>(
mxPool.get(), nFamily);
963 OUString
const curName(pStyle->GetName());
965 OUString
const curMaster((curSep == -1)
966 ? OUString() : curName.copy(0, curSep));
978 throw NoSuchElementException();
993 if( pEntry ==
nullptr )
995 throw UnknownPropertyException( aPropertyName,
static_cast<cppu::OWeakObject*
>(
this));
1000 bool bValue =
false;
1001 if ( aValue >>= bValue )
1002 SetHidden( bValue );
1009 throw PropertyVetoException();
1014 const sal_uInt32 nTempHelpId = GetHelpId(
aStr );
1016 if( (nTempHelpId >= HID_PSEUDOSHEET_OUTLINE2) && (nTempHelpId <= HID_PSEUDOSHEET_OUTLINE9) )
1025 if( aValue >>=
eMode )
1031 throw IllegalArgumentException();
1036 if (css::uno::Reference<css::text::XTextColumns> xColumns; aValue >>= xColumns)
1039 if (css::uno::Reference<css::beans::XPropertySet> xPropSet{ xColumns,
1040 css::uno::UNO_QUERY })
1042 auto aVal = xPropSet->getPropertyValue(
"AutomaticDistance");
1043 if (sal_Int32 nSpacing; aVal >>= nSpacing)
1048 throw IllegalArgumentException();
1052 aSet.
Put( rStyleSet );
1060 aSet.
Put( rStyleSet );
1064 aSet.
Put( GetPool()->GetPool().GetDefaultItem( pEntry->
nWID ) );
1074 if(!(aValue >>= aTempName ))
1075 throw IllegalArgumentException();
1079 else if(!SvxUnoTextRangeBase::SetPropertyValueHelper( pEntry, aValue, aSet ))
1084 rStyleSet.
Put( aSet );
1091 if( pEntry ==
nullptr )
1093 throw UnknownPropertyException( PropertyName,
static_cast<cppu::OWeakObject*
>(
this));
1100 if( nFamily == SfxStyleFamily::Page )
1102 const OUString aLayoutName(
GetName() );
1103 aAny <<= aLayoutName.copy( 0, aLayoutName.indexOf(
SD_LT_SEPARATOR) );
1112 OUString aDisplayName;
1113 if ( nFamily == SfxStyleFamily::Page )
1116 if (pStyleSheet !=
nullptr)
1117 aDisplayName = pStyleSheet->GetName();
1120 if (aDisplayName.isEmpty())
1123 aAny <<= aDisplayName;
1136 if( pStretchItem && pTileItem )
1138 if( pTileItem->GetValue() )
1139 aAny <<= BitmapMode_REPEAT;
1140 else if( pStretchItem->GetValue() )
1141 aAny <<= BitmapMode_STRETCH;
1143 aAny <<= BitmapMode_NO_REPEAT;
1155 css::uno::Reference<css::text::XTextColumns> xCols(xIf, css::uno::UNO_QUERY_THROW);
1157 css::uno::Reference<css::beans::XPropertySet> xProp(xIf, css::uno::UNO_QUERY_THROW);
1158 xProp->setPropertyValue(
1159 "AutomaticDistance",
1170 if( rStyleSet.
GetItemState( pEntry->
nWID,
true, &pItem ) == SfxItemState::SET )
1174 aSet.
Put( GetPool()->GetPool().GetDefaultItem( pEntry->
nWID ) );
1176 if(SvxUnoTextRangeBase::GetPropertyValueHelper( aSet, pEntry, aAny ))
1183 if( pEntry->
aType != aAny.getValueType() )
1190 aAny <<= static_cast<sal_Int16>(
nValue);
1194 OSL_FAIL(
"SvxShape::GetAnyForItem() Returnvalue has wrong Type!" );
1216 Broadcast(
SfxHint(SfxHintId::DataChanged));
1235 const css::uno::Sequence<css::uno::Any>& aValues)
1237 const sal_Int32
nCount = aPropertyNames.getLength();
1239 if (
nCount != aValues.getLength())
1240 throw css::lang::IllegalArgumentException();
1254 catch (
const css::beans::UnknownPropertyException&)
1260 Broadcast(
SfxHint(SfxHintId::DataChanged));
1263css::uno::Sequence<css::uno::Any>
1269 const sal_Int32
nCount = aPropertyNames.getLength();
1270 css::uno::Sequence<css::uno::Any> aValues(
nCount);
1271 Any* pAny = aValues.getArray();
1293 if( pEntry ==
nullptr )
1294 throw UnknownPropertyException( PropertyName,
static_cast<cppu::OWeakObject*
>(
this));
1298 return PropertyState_DIRECT_VALUE;
1302 return PropertyState_DEFAULT_VALUE;
1311 return PropertyState_DIRECT_VALUE;
1315 return PropertyState_AMBIGUOUS_VALUE;
1324 if (eState1 == SfxItemState::SET || eState2 == SfxItemState::SET)
1325 return PropertyState_DIRECT_VALUE;
1326 else if (eState1 == SfxItemState::DEFAULT && eState2 == SfxItemState::DEFAULT)
1327 return PropertyState_DEFAULT_VALUE;
1329 return PropertyState_AMBIGUOUS_VALUE;
1335 PropertyState eState;
1339 case SfxItemState::SET:
1340 eState = PropertyState_DIRECT_VALUE;
1342 case SfxItemState::DEFAULT:
1343 eState = PropertyState_DEFAULT_VALUE;
1346 eState = PropertyState_AMBIGUOUS_VALUE;
1351 if( PropertyState_DIRECT_VALUE == eState )
1353 switch( pEntry->
nWID )
1364 if( ( pItem ==
nullptr ) || pItem->
GetName().isEmpty() )
1365 eState = PropertyState_DEFAULT_VALUE;
1374 eState = PropertyState_DEFAULT_VALUE;
1380 sal_Int16 nLumMod = 10000;
1384 nLumMod = rTransform.mnValue;
1386 if (nLumMod == 10000)
1388 eState = PropertyState_DEFAULT_VALUE;
1394 sal_Int16 nLumOff = 0;
1398 nLumOff = rTransform.mnValue;
1402 eState = PropertyState_DEFAULT_VALUE;
1410 eState = PropertyState_DEFAULT_VALUE;
1420 eState = PropertyState_DEFAULT_VALUE;
1437 sal_Int32
nCount = aPropertyName.getLength();
1439 Sequence< PropertyState > aPropertyStateSequence(
nCount );
1441 std::transform(aPropertyName.begin(), aPropertyName.end(), aPropertyStateSequence.getArray(),
1442 [
this](
const OUString& rName) -> PropertyState { return getPropertyState(rName); });
1444 return aPropertyStateSequence;
1454 if( pEntry ==
nullptr )
1455 throw UnknownPropertyException( PropertyName,
static_cast<cppu::OWeakObject*
>(
this));
1468 Broadcast(
SfxHint(SfxHintId::DataChanged));
1478 if( pEntry ==
nullptr )
1479 throw UnknownPropertyException( aPropertyName,
static_cast<cppu::OWeakObject*
>(
this));
1491 aRet <<= BitmapMode_REPEAT;
1516 pRealSheet->Broadcast(
SfxHint(SfxHintId::DataChanged));
1521 OUString sStyleName(
SdResId(STR_PSEUDOSHEET_OUTLINE) +
" ");
1525 OUString
aName( sStyleName + OUString::number(
n) );
1532 pRealStyleSheet->Broadcast(
SfxHint(SfxHintId::DataChanged));
SVXCORE_DLLPUBLIC css::uno::Reference< css::uno::XInterface > SvxXTextColumns_createInstance() noexcept
ModifyListenerForwarder(SdStyleSheet *pStyleSheet)
SdStyleSheet * mpStyleSheet
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint) override
OUString const & GetName() const
SdPage * GetSdPage(sal_uInt16 nPgNum, PageKind ePgKind) const
virtual OUString GetLayoutName() const override
static void PutNumBulletItem(SfxStyleSheetBase *pSheet, vcl::Font &rBulletFont)
virtual void SAL_CALL addModifyListener(const css::uno::Reference< css::util::XModifyListener > &aListener) override
virtual OUString SAL_CALL getImplementationName() override
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual css::beans::PropertyState SAL_CALL getPropertyState(const OUString &PropertyName) override
void notifyModifyListener()
virtual void SAL_CALL addPropertiesChangeListener(const css::uno::Sequence< OUString > &aPropertyNames, const css::uno::Reference< css::beans::XPropertiesChangeListener > &xListener) override
OUString const & GetApiName() const
virtual void SAL_CALL removeModifyListener(const css::uno::Reference< css::util::XModifyListener > &aListener) override
virtual OUString SAL_CALL getName() override
virtual css::uno::Any SAL_CALL getPropertyValue(const OUString &PropertyName) override
virtual void SAL_CALL addEventListener(const css::uno::Reference< css::lang::XEventListener > &xListener) override
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
SdStyleSheet * GetRealStyleSheet() const
Determine the style sheet for which this dummy is for.
virtual void SAL_CALL setName(const OUString &aName) override
virtual void SAL_CALL setPropertyToDefault(const OUString &PropertyName) override
virtual void SetHelpId(const OUString &r, sal_uLong nId) override
virtual void SAL_CALL firePropertiesChangeEvent(const css::uno::Sequence< OUString > &aPropertyNames, const css::uno::Reference< css::beans::XPropertiesChangeListener > &xListener) override
SdStyleSheet * GetPseudoStyleSheet() const
Determine pseudo style sheet which stands for this style sheet.
SdStyleSheet(const OUString &rDisplayName, SfxStyleSheetBasePool &rPool, SfxStyleFamily eFamily, SfxStyleSearchBits nMask)
static OUString GetFamilyString(SfxStyleFamily eFamily)
virtual bool SetParent(const OUString &rParentName) override
virtual void SAL_CALL addVetoableChangeListener(const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
virtual bool HasParentSupport() const override
virtual css::uno::Sequence< css::uno::Any > SAL_CALL getPropertyValues(const css::uno::Sequence< OUString > &aPropertyNames) override
virtual void SAL_CALL setParentStyle(const OUString &aParentStyle) override
bool IsEditable()
Checks if a cell style is used in two places at once.
comphelper::OInterfaceContainerHelper4< css::lang::XEventListener > maEventListeners
virtual bool SetName(const OUString &rNewName, bool bReindexNow=true) override
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint) override
virtual css::uno::Sequence< css::beans::PropertyState > SAL_CALL getPropertyStates(const css::uno::Sequence< OUString > &aPropertyName) override
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
virtual void SAL_CALL removePropertiesChangeListener(const css::uno::Reference< css::beans::XPropertiesChangeListener > &xListener) override
virtual SfxItemSet & GetItemSet() override
create if necessary and return ItemSets
virtual void SAL_CALL setPropertyValues(const css::uno::Sequence< OUString > &aPropertyNames, const css::uno::Sequence< css::uno::Any > &aValues) override
virtual void SAL_CALL dispose() override
comphelper::OInterfaceContainerHelper4< css::util::XModifyListener > maModifyListeners
virtual sal_Bool SAL_CALL isUserDefined() override
void AdjustToFontHeight(SfxItemSet &rSet, bool bOnlyMissingItems=true)
Adjust the bullet width and the left text indent of the provided ItemSets to their font height.
virtual void SAL_CALL removeVetoableChangeListener(const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo() override
static rtl::Reference< SdStyleSheet > CreateEmptyUserStyle(SfxStyleSheetBasePool &rPool, SfxStyleFamily eFamily)
virtual ~SdStyleSheet() override
void setPropertyValue_Impl(const OUString &aPropertyName, const css::uno::Any &aValue)
css::uno::Any getPropertyValue_Impl(const OUString &PropertyName)
void SetApiName(const OUString &rApiName)
virtual void SAL_CALL removePropertyChangeListener(const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &aListener) override
virtual bool HasFollowSupport() const override
virtual void SAL_CALL removeEventListener(const css::uno::Reference< css::lang::XEventListener > &aListener) override
virtual bool IsUsed() const override
A template is used when it is referenced by inserted object or by a used template.
rtl::Reference< SfxStyleSheetBasePool > mxPool
virtual OUString SAL_CALL getParentStyle() override
virtual bool HasClearParentSupport() const override
virtual sal_Bool SAL_CALL isInUse() override
static void BroadcastSdStyleSheetChange(SfxStyleSheetBase const *pStyleSheet, PresentationObjects ePO, SfxStyleSheetBasePool *pSSPool)
std::unique_ptr< ModifyListenerForwarder > mpModifyListenerForwarder
virtual void SAL_CALL addPropertyChangeListener(const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &xListener) override
virtual css::uno::Any SAL_CALL getPropertyDefault(const OUString &aPropertyName) override
static const SfxItemPropertyMapEntry * getPropertyMapEntry(std::u16string_view rPropertyName)
this is used because our property map is not sorted yet
virtual void SAL_CALL release() noexcept override
static SdrItemPool & GetGlobalDrawObjectItemPool()
const SfxPoolItem & GetDefaultItem(sal_uInt16 nWhich) const
void SetParent(const SfxItemSet *pNew)
sal_uInt16 ClearItem(sal_uInt16 nWhich=0)
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * GetItem(sal_uInt16 nWhich, bool bSearchInParent=true) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
void StartListening(SfxBroadcaster &rBroadcaster, DuplicateHandling eDuplicateHanding=DuplicateHandling::Unexpected)
virtual SfxStyleSheetBase * Find(const OUString &, SfxStyleFamily eFam, SfxStyleSearchBits n=SfxStyleSearchBits::All)
const OUString & GetName() const
SfxStyleFamily GetFamily() const
virtual void SetHelpId(const OUString &r, sal_uLong nId)
virtual SfxItemSet & GetItemSet()
virtual sal_Int32 Count()
virtual SfxStyleSheetBase * First()
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint) override
virtual bool SetParent(const OUString &) override
static SAL_WARN_UNUSED_RESULT SfxViewShell * Current()
void SetWidth(tools::Long nNew)
tools::Long GetWidth() const
css::uno::Reference< css::beans::XPropertySetInfo > const & getPropertySetInfo() const
const SfxItemPropertyMapEntry * getPropertyMapEntry(std::u16string_view rName) const
short GetTextFirstLineOffset() const
void SetTextLeft(const tools::Long nL, const sal_uInt16 nProp=100)
tools::Long GetTextLeft() const
void SetTextFirstLineOffset(const short nF, const sal_uInt16 nProp=100)
static bool SetFillAttribute(sal_uInt16 nWID, const OUString &rName, SfxItemSet &rSet, SdrModel const *pModel)
void SetLower(const sal_uInt16 nL, const sal_uInt16 nProp=100)
sal_uInt16 GetUpper() const
void SetUpper(const sal_uInt16 nU, const sal_uInt16 nProp=100)
sal_uInt16 GetLower() const
const model::ComplexColor & getComplexColor() const
std::vector< css::uno::Reference< ListenerT > > getElements(std::unique_lock< std::mutex > &rGuard) const
sal_Int32 addInterface(std::unique_lock< std::mutex > &rGuard, const css::uno::Reference< ListenerT > &rxIFace)
void notifyEach(std::unique_lock< std::mutex > &rGuard, void(SAL_CALL ListenerT::*NotificationMethod)(const EventT &), const EventT &Event) const
void disposeAndClear(::std::unique_lock<::std::mutex > &rGuard, const css::lang::EventObject &rEvt)
sal_Int32 getLength(std::unique_lock< std::mutex > &rGuard) const
sal_Int32 removeInterface(std::unique_lock< std::mutex > &rGuard, const css::uno::Reference< ListenerT > &rxIFace)
css::uno::Type const & get()
std::vector< Transformation > const & getTransformations() const
ThemeColorType getSchemeType() const
Base class of the stacked shells that provide graphical views to Draw and Impress documents and editi...
virtual SdPage * getCurrentPage() const override
inherited from sd::ViewShell
SfxViewShell descendant that the stacked Draw/Impress shells are based on.
std::shared_ptr< ViewShell > GetMainViewShell() const
Return the main view shell stacked on the called ViewShellBase object.
SdDrawDocument * GetDoc() const
#define DBG_ASSERT(sCon, aError)
#define TOOLS_WARN_EXCEPTION(area, stream)
#define DBG_UNHANDLED_EXCEPTION(...)
virtual OUString GetName() const override
constexpr TypedWhichId< SvxFontHeightItem > EE_CHAR_FONTHEIGHT(EE_CHAR_START+2)
constexpr TypedWhichId< SvxULSpaceItem > EE_PARA_ULSPACE(EE_PARA_START+14)
constexpr sal_uInt16 EE_PARA_START(EE_ITEMS_START+0)
constexpr TypedWhichId< SvxLRSpaceItem > EE_PARA_LRSPACE(EE_PARA_START+13)
constexpr TypedWhichId< SvxBulletItem > EE_PARA_BULLET(EE_PARA_START+12)
constexpr sal_uInt16 EE_CHAR_END(EE_CHAR_START+32)
constexpr TypedWhichId< SvxNumBulletItem > EE_PARA_NUMBULLET(EE_PARA_START+5)
constexpr OUStringLiteral IsHidden(u"IsHidden")
constexpr OUStringLiteral SD_LT_SEPARATOR
#define MID_COLOR_LUM_MOD
#define MID_COMPLEX_COLOR
#define MID_COLOR_THEME_INDEX
#define MID_COLOR_LUM_OFF
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
Any SAL_CALL getCaughtException()
constexpr bool starts_with(std::basic_string_view< charT, traits > sv, std::basic_string_view< charT, traits > x) noexcept
OUString SdResId(TranslateId aId)
#define WID_STYLE_DISPNAME
static SvxItemPropertySet & GetStylePropertySet()
cppu::ImplInheritanceHelper< SfxUnoStyleSheet, css::beans::XPropertySet, css::beans::XMultiPropertySet, css::lang::XServiceInfo, css::beans::XPropertyState, css::util::XModifyBroadcaster, css::lang::XComponent > SdStyleSheetBase
constexpr OUStringLiteral STR_LAYOUT_TITLE
constexpr OUStringLiteral STR_LAYOUT_OUTLINE
constexpr OUStringLiteral STR_LAYOUT_SUBTITLE
constexpr OUStringLiteral STR_LAYOUT_BACKGROUNDOBJECTS
constexpr OUStringLiteral STR_LAYOUT_NOTES
constexpr OUStringLiteral STR_LAYOUT_BACKGROUND
constexpr sal_uInt16 SDRATTR_TABLE_FIRST(SDRATTR_CUSTOMSHAPE_LAST+1)
constexpr sal_uInt16 SDRATTR_MEASURE_LAST(SDRATTR_MEASUREDECIMALPLACES)
constexpr TypedWhichId< SvXMLAttrContainerItem > SDRATTR_XMLATTRIBUTES(SDRATTR_MISC_FIRST+22)
constexpr sal_uInt16 SDRATTR_3D_FIRST(SDRATTR_GRAF_LAST+1)
constexpr sal_uInt16 SDRATTR_3D_LAST(SDRATTR_3DSCENE_LAST)
constexpr sal_uInt16 SDRATTR_SHADOW_FIRST(XATTR_END+1)
constexpr TypedWhichId< SdrOnOffItem > SDRATTR_TEXT_WORDWRAP(SDRATTR_MISC_FIRST+24)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_TEXT_MINFRAMEHEIGHT(SDRATTR_MISC_FIRST+1)
constexpr sal_uInt16 SDRATTR_TABLE_LAST(SDRATTR_TABLE_CELL_GRABBAG)
constexpr TypedWhichId< SvxBoxItem > SDRATTR_TABLE_BORDER(SDRATTR_TABLE_FIRST+0)
constexpr TypedWhichId< SfxInt16Item > SDRATTR_TEXTCOLUMNS_NUMBER(SDRATTR_TEXTCOLUMNS_FIRST+0)
constexpr sal_uInt16 SDRATTR_SHADOW_LAST(SDRATTR_SHADOWALIGNMENT)
constexpr TypedWhichId< SvxWritingModeItem > SDRATTR_TEXTDIRECTION(SDRATTR_NOTPERSIST_FIRST+34)
constexpr TypedWhichId< SdrMetricItem > SDRATTR_TEXTCOLUMNS_SPACING(SDRATTR_TEXTCOLUMNS_FIRST+1)
constexpr sal_uInt16 SDRATTR_EDGE_FIRST(SDRATTR_MISC_LAST+1)
#define OWN_ATTR_FILLBMP_MODE
void SVXCORE_DLLPUBLIC SvxItemPropertySet_setPropertyValue(const SfxItemPropertyMapEntry *pMap, const css::uno::Any &rVal, SfxItemSet &rSet)
css::uno::Any SVXCORE_DLLPUBLIC SvxItemPropertySet_getPropertyValue(const SfxItemPropertyMapEntry *pMap, const SfxItemSet &rSet)
#define OWN_ATTR_TEXTCOLUMNS
#define LINE_PROPERTIES_START_END
#define CONNECTOR_PROPERTIES
#define EDGERADIUS_PROPERTIES
#define SHADOW_PROPERTIES
#define TEXT_PROPERTIES_DEFAULTS
#define SPECIAL_DIMENSIONING_PROPERTIES_DEFAULTS
#define SVX_UNOEDIT_NUMBERING_PROPERTY
constexpr TypedWhichId< XFillColorItem > XATTR_FILLCOLOR(XATTR_FILL_FIRST+1)
constexpr TypedWhichId< XLineColorItem > XATTR_LINECOLOR(XATTR_LINE_FIRST+3)
constexpr TypedWhichId< XLineDashItem > XATTR_LINEDASH(XATTR_LINE_FIRST+1)
constexpr TypedWhichId< XLineEndItem > XATTR_LINEEND(XATTR_LINE_FIRST+5)
constexpr TypedWhichId< XLineStartItem > XATTR_LINESTART(XATTR_LINE_FIRST+4)
constexpr sal_uInt16 XATTR_LINE_FIRST(XATTR_START)
constexpr TypedWhichId< XFillBmpStretchItem > XATTR_FILLBMP_STRETCH(XATTR_FILL_FIRST+16)
constexpr sal_uInt16 XATTR_FILL_FIRST(XATTRSET_LINE+1)
constexpr sal_uInt16 XATTR_LINE_LAST(XATTR_LINECAP)
constexpr TypedWhichId< XFillHatchItem > XATTR_FILLHATCH(XATTR_FILL_FIRST+3)
constexpr sal_uInt16 XATTR_FILL_LAST(XATTR_FILLUSESLIDEBACKGROUND)
constexpr TypedWhichId< XFillBmpTileItem > XATTR_FILLBMP_TILE(XATTR_FILL_FIRST+7)
constexpr TypedWhichId< XFillBitmapItem > XATTR_FILLBITMAP(XATTR_FILL_FIRST+4)
constexpr TypedWhichId< XFillFloatTransparenceItem > XATTR_FILLFLOATTRANSPARENCE(XATTR_FILL_FIRST+11)
constexpr TypedWhichId< XFillGradientItem > XATTR_FILLGRADIENT(XATTR_FILL_FIRST+2)