30#include <com/sun/star/container/XIndexAccess.hpp>
31#include <com/sun/star/drawing/XDrawPage.hpp>
75 static void impChildInserted(
SdrObject const & rChild);
81 void impClearSdrObjList(
bool bBroadcast);
92 virtual SdrPage* getSdrPageFromSdrObjList()
const;
93 virtual SdrObject* getSdrObjectFromSdrObjList()
const;
100 void ClearSdrObjList();
103 void RecalcObjOrdNums();
105 virtual void NbcInsertObject(
SdrObject* pObj,
size_t nPos=SAL_MAX_SIZE);
106 virtual void InsertObject(
SdrObject* pObj,
size_t nPos=SAL_MAX_SIZE);
107 void sort( std::vector<sal_Int32>& sortOrder );
109 void InsertObjectThenMakeNameUnique(
SdrObject* pObj);
122 virtual SdrObject* SetObjectOrdNum(
size_t nOldObjNum,
size_t nNewObjNum);
125 void SetExistingObjectOrdNum(
SdrObject* pExistingObj,
size_t nNewObjNum);
127 void SetSdrObjListRectsDirty();
133 void NbcReformatAllTextObjects();
134 void ReformatAllTextObjects();
137 void ReformatAllEdgeObjects();
140 void BurnInStyleSheetAttributes();
142 size_t GetObjCount()
const;
155 void FlattenGroups();
166 void UnGroupObj(
size_t nObjNum );
175 bool HasObjectNavigationOrder()
const;
181 void SetObjectNavigationPosition (
183 const sal_uInt32 nNewNavigationPosition);
195 SdrObject* GetObjectForNavigationPosition (
const sal_uInt32 nNavigationPosition)
const;
199 void ClearObjectNavigationOrder();
211 bool RecalcNavigationPositions();
222 void SetNavigationOrder (
const css::uno::Reference<
223 css::container::XIndexAccess>& rxOrder);
230 std::deque<rtl::Reference<SdrObject>>
maList;
251 void InsertObjectIntoContainer (
253 const sal_uInt32 nInsertPosition);
264 void ReplaceObjectInContainer (
266 const sal_uInt32 nObjectPosition);
275 void RemoveObjectFromContainer (
276 const sal_uInt32 nObjectPosition);
278 void ImplReformatAllEdgeObjects(
const SdrObjList& );
282#define SDRPAGE_NOTFOUND 0xFFFF
297 std::vector<SdrPageGridFrame*>
aList;
307 sal_uInt16
GetCount()
const {
return sal_uInt16(aList.size()); }
324 void ImpRemoveStyleSheet();
337 virtual bool isUsedByModel()
const override;
343 void ClearItem(
const sal_uInt16 nWhich = 0);
349 void SetTheme(std::shared_ptr<model::Theme>
const& pTheme);
350 std::shared_ptr<model::Theme>
const& GetTheme()
const;
404 std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact();
410 void ActionChanged();
423 bool mbBackgroundFullSize =
false;
447 void SetUnoPage(css::uno::Reference<css::drawing::XDrawPage>
const&);
448 virtual css::uno::Reference< css::uno::XInterface > createUnoPage();
463 void SetInserted(
bool bNew =
true);
468 virtual SdrPage* getSdrPageFromSdrObjList()
const override;
471 void SetPageNum(sal_uInt16 nNew);
472 sal_uInt16 GetPageNum()
const;
479 virtual void SetSize(
const Size& aSiz);
480 Size GetSize()
const;
485 virtual void SetBorder(sal_Int32 nLft, sal_Int32 nUpp, sal_Int32 nRgt, sal_Int32 Lwr);
486 virtual void SetLeftBorder(sal_Int32 nBorder);
487 virtual void SetUpperBorder(sal_Int32 nBorder);
488 virtual void SetRightBorder(sal_Int32 nBorder);
489 virtual void SetLowerBorder(sal_Int32 nBorder);
490 sal_Int32 GetLeftBorder()
const;
491 sal_Int32 GetUpperBorder()
const;
492 sal_Int32 GetRightBorder()
const;
493 sal_Int32 GetLowerBorder()
const;
494 void SetBackgroundFullSize(
bool bIn);
495 bool IsBackgroundFullSize()
const;
499 void TRG_SetMasterPage(
SdrPage& rNew);
500 void TRG_ClearMasterPage();
501 SdrPage& TRG_GetMasterPage()
const;
503 void TRG_SetMasterPageVisibleLayers(
const SdrLayerIDSet& rNew);
506 void MakePageObjectsNamesUnique();
509 void TRG_ImpMasterPageRemoved(
const SdrPage& rRemovedPage);
516 virtual OUString GetLayoutName()
const;
523 css::uno::Reference< css::uno::XInterface >
const & getUnoPage();
529 Color GetPageBackgroundColor()
const;
533 Color GetPageBackgroundColor(
SdrPageView const * pView,
bool bScreenDisplay =
true)
const;
540 virtual bool checkVisibility(
tools::Rectangle maSdrObjListOutRect
void InsertObjectThenMakeNameUnique(SdrObject *pObj, std::unordered_set< rtl::OUString > &rNameSet, size_t nPos=SAL_MAX_SIZE)
std::deque< rtl::Reference< SdrObject > > maList
std::optional< std::vector< unotools::WeakReference< SdrObject > > > mxNavigationOrder
This list, if it exists, defines the navigation order.
SdrObjList & operator=(const SdrObjList &rSrcList)=delete
bool IsObjOrdNumsDirty() const
SdrObjList(const SdrObjList &rSrcList)=delete
tools::Rectangle maSdrObjListSnapRect
bool mbIsNavigationOrderDirty
This flag is <TRUE> when the mpNavigation list has been changed but the indices of the referenced Sdr...
SdrPageGridFrame * GetObject(sal_uInt16 i) const
SdrPageGridFrame & operator[](sal_uInt16 nPos)
SdrPageGridFrameList(const SdrPageGridFrameList &rSrcList)=delete
sal_uInt16 GetCount() const
std::vector< SdrPageGridFrame * > aList
void operator=(const SdrPageGridFrameList &rSrcList)=delete
const SdrPageGridFrame & operator[](sal_uInt16 nPos) const
void Insert(const SdrPageGridFrame &rGF)
for the snap-to-grid in Writer
const tools::Rectangle & GetUserArea() const
const tools::Rectangle & GetPaperRect() const
tools::Rectangle aUserArea
SdrPageGridFrame(const tools::Rectangle &rPaper, const tools::Rectangle &rUser)
const SfxItemSet & GetItemSet() const
SfxStyleSheet * mpStyleSheet
SdrPageProperties & operator=(const SdrPageProperties &rCandidate)=delete
SfxStyleSheet * GetStyleSheet() const
std::shared_ptr< model::Theme > mpTheme
A SdrPage contains exactly one SdrObjList and a description of the physical page dimensions (size / m...
std::unique_ptr< SdrLayerAdmin > mpLayerAdmin
sdr::PageUserVector maPageUsers
bool mbPageBorderOnlyLeftRight
bool getPageBorderOnlyLeftRight() const
css::uno::Reference< css::uno::XInterface > mxUnoPage
std::unique_ptr< SdrPageProperties > mpSdrPageProperties
bool IsMasterPage() const
void setPageBorderOnlyLeftRight(bool bNew)
std::unique_ptr< sdr::MasterPageDescriptor > mpMasterPageDescriptor
SdrModel & mrSdrModelFromSdrPage
SdrPage & operator=(const SdrPage &)=delete
std::unique_ptr< sdr::contact::ViewContact > mpViewContact
bool mbObjectsNotPersistent
bool TRG_HasMasterPage() const
SdrModel & getSdrModelFromSdrPage() const
SdrPage(const SdrPage &)=delete
virtual css::uno::Reference< css::embed::XEmbeddedObject > GetObject() override
constexpr OUStringLiteral IsReadOnly(u"IsReadOnly")
struct _xmlTextWriter * xmlTextWriterPtr
SvGenericNameContainerMapImpl maProperties
void Clear(EHistoryType eHistory)
::std::vector< PageUser * > PageUserVector
#define SVXCORE_DLLPUBLIC