30 #include <com/sun/star/container/XIndexAccess.hpp>
31 #include <com/sun/star/drawing/XDrawPage.hpp>
74 static void impChildInserted(
SdrObject const & rChild);
80 void impClearSdrObjList(
bool bBroadcast);
91 virtual SdrPage* getSdrPageFromSdrObjList()
const;
92 virtual SdrObject* getSdrObjectFromSdrObjList()
const;
99 void ClearSdrObjList();
102 void RecalcObjOrdNums();
104 virtual void NbcInsertObject(
SdrObject* pObj,
size_t nPos=SAL_MAX_SIZE);
105 virtual void InsertObject(
SdrObject* pObj,
size_t nPos=SAL_MAX_SIZE);
106 void sort( std::vector<sal_Int32>& sortOrder );
108 void InsertObjectThenMakeNameUnique(
SdrObject* pObj);
109 void InsertObjectThenMakeNameUnique(
SdrObject* pObj, std::unordered_set<rtl::OUString>& rNameSet,
size_t nPos=SAL_MAX_SIZE);
112 virtual SdrObject* NbcRemoveObject(
size_t nObjNum);
113 virtual SdrObject* RemoveObject(
size_t nObjNum);
121 virtual SdrObject* SetObjectOrdNum(
size_t nOldObjNum,
size_t nNewObjNum);
124 void SetExistingObjectOrdNum(
SdrObject* pExistingObj,
size_t nNewObjNum);
126 void SetSdrObjListRectsDirty();
132 void NbcReformatAllTextObjects();
133 void ReformatAllTextObjects();
136 void ReformatAllEdgeObjects();
139 void BurnInStyleSheetAttributes();
141 size_t GetObjCount()
const;
154 void FlattenGroups();
165 void UnGroupObj(
size_t nObjNum );
174 bool HasObjectNavigationOrder()
const;
180 void SetObjectNavigationPosition (
182 const sal_uInt32 nNewNavigationPosition);
194 SdrObject* GetObjectForNavigationPosition (
const sal_uInt32 nNavigationPosition)
const;
198 void ClearObjectNavigationOrder();
210 bool RecalcNavigationPositions();
221 void SetNavigationOrder (
const css::uno::Reference<
222 css::container::XIndexAccess>& rxOrder);
250 void InsertObjectIntoContainer (
252 const sal_uInt32 nInsertPosition);
263 void ReplaceObjectInContainer (
265 const sal_uInt32 nObjectPosition);
274 void RemoveObjectFromContainer (
275 const sal_uInt32 nObjectPosition);
279 #define SDRPAGE_NOTFOUND 0xFFFF
294 std::vector<SdrPageGridFrame*>
aList;
304 sal_uInt16
GetCount()
const {
return sal_uInt16(aList.size()); }
321 void ImpRemoveStyleSheet();
340 void ClearItem(
const sal_uInt16 nWhich = 0);
346 void SetTheme(std::unique_ptr<svx::Theme> pTheme);
401 std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact();
407 void ActionChanged();
420 bool mbBackgroundFullSize =
false;
439 bool mbObjectsNotPersistent : 1;
442 bool mbPageBorderOnlyLeftRight : 1;
444 void SetUnoPage(css::uno::Reference<css::drawing::XDrawPage>
const&);
445 virtual css::uno::Reference< css::uno::XInterface > createUnoPage();
460 void SetInserted(
bool bNew =
true);
468 void SetPageNum(sal_uInt16 nNew);
469 sal_uInt16 GetPageNum()
const;
476 virtual void SetSize(
const Size& aSiz);
477 Size GetSize()
const;
482 virtual void SetBorder(sal_Int32 nLft, sal_Int32 nUpp, sal_Int32 nRgt, sal_Int32 Lwr);
483 virtual void SetLeftBorder(sal_Int32 nBorder);
484 virtual void SetUpperBorder(sal_Int32 nBorder);
485 virtual void SetRightBorder(sal_Int32 nBorder);
486 virtual void SetLowerBorder(sal_Int32 nBorder);
487 sal_Int32 GetLeftBorder()
const;
488 sal_Int32 GetUpperBorder()
const;
489 sal_Int32 GetRightBorder()
const;
490 sal_Int32 GetLowerBorder()
const;
491 void SetBackgroundFullSize(
bool bIn);
492 bool IsBackgroundFullSize()
const;
496 void TRG_SetMasterPage(
SdrPage& rNew);
497 void TRG_ClearMasterPage();
498 SdrPage& TRG_GetMasterPage()
const;
500 void TRG_SetMasterPageVisibleLayers(
const SdrLayerIDSet& rNew);
503 void MakePageObjectsNamesUnique();
506 void TRG_ImpMasterPageRemoved(
const SdrPage& rRemovedPage);
513 virtual OUString GetLayoutName()
const;
520 css::uno::Reference< css::uno::XInterface >
const & getUnoPage();
526 Color GetPageBackgroundColor()
const;
530 Color GetPageBackgroundColor(
SdrPageView const * pView,
bool bScreenDisplay =
true)
const;
537 virtual bool checkVisibility(
std::unique_ptr< sdr::MasterPageDescriptor > mpMasterPageDescriptor
const SdrPageGridFrame & operator[](sal_uInt16 nPos) const
::std::vector< PageUser * > PageUserVector
std::unique_ptr< svx::Theme > mpTheme
tools::Rectangle maSdrObjListOutRect
sdr::PageUserVector maPageUsers
struct _xmlTextWriter * xmlTextWriterPtr
for the snap-to-grid in Writer
const SfxListener & operator=(const SfxListener &)=delete
const tools::Rectangle & GetUserArea() const
std::optional< std::vector< tools::WeakReference< SdrObject > > > mxNavigationOrder
This list, if it exists, defines the navigation order.
const SfxBroadcaster & operator=(const SfxBroadcaster &)=delete
const tools::Rectangle & GetPaperRect() const
virtual bool isUsedByModel() const =0
SfxStyleSheet * mpStyleSheet
tools::Rectangle aUserArea
bool IsObjOrdNumsDirty() const
SdrModel & mrSdrModelFromSdrPage
std::deque< SdrObject * > maList
constexpr OUStringLiteral IsReadOnly(u"IsReadOnly")
css::uno::Reference< css::uno::XInterface > mxUnoPage
SdrPageGridFrame & operator[](sal_uInt16 nPos)
SdrPageGridFrame(const tools::Rectangle &rPaper, const tools::Rectangle &rUser)
SdrObjList & operator=(const SdrObjList &rSrcList)=delete
std::vector< SdrPageGridFrame * > aList
std::unique_ptr< SdrLayerAdmin > mpLayerAdmin
void Insert(const SdrPageGridFrame &rGF)
virtual void dumpAsXml(xmlTextWriterPtr pWriter) const
virtual css::uno::Reference< css::embed::XEmbeddedObject > GetObject() override
bool IsMasterPage() const
const SfxItemSet & GetItemSet() const
bool TRG_HasMasterPage() const
void Clear(EHistoryType eHistory)
sal_uInt16 GetCount() const
void setPageBorderOnlyLeftRight(bool bNew)
SdrPageGridFrame * GetObject(sal_uInt16 i) const
SdrModel & getSdrModelFromSdrPage() const
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint)
A named theme has a named color set.
SfxStyleSheet * GetStyleSheet() const
std::unique_ptr< sdr::contact::ViewContact > mpViewContact
#define SVXCORE_DLLPUBLIC
virtual SdrPage * getSdrPageFromSdrObjList() const
bool getPageBorderOnlyLeftRight() const
bool mbIsNavigationOrderDirty
This flag is when the mpNavigation list has been changed but the indices of the referenced Sdr...
A SdrPage contains exactly one SdrObjList and a description of the physical page dimensions (size / m...
std::unique_ptr< SdrPageProperties > mpSdrPageProperties
tools::Rectangle maSdrObjListSnapRect