LibreOffice Module sw (master) 1
pagedesc.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19#ifndef INCLUDED_SW_INC_PAGEDESC_HXX
20#define INCLUDED_SW_INC_PAGEDESC_HXX
21
22#include <tools/fract.hxx>
23#include <tools/color.hxx>
24#include "swdllapi.h"
25#include "swtypes.hxx"
26#include "frmfmt.hxx"
27#include <editeng/numitem.hxx>
29#include <com/sun/star/drawing/TextVerticalAdjust.hpp>
30#include <com/sun/star/text/HorizontalAdjust.hpp>
32
33#include <boost/multi_index_container.hpp>
34#include <boost/multi_index/identity.hpp>
35#include <boost/multi_index/ordered_index.hpp>
36#include <boost/multi_index/random_access_index.hpp>
37
38using namespace ::com::sun::star;
39
40
41class SfxPoolItem;
43class SwNode;
44class SwPageDescs;
45typedef struct _xmlTextWriter* xmlTextWriterPtr;
46
49{
50private:
56 css::text::HorizontalAdjust m_eAdjust;
59
60public:
61 SwTwips GetHeight() const { return m_nMaxHeight; }
62 sal_uLong GetLineWidth() const { return m_nLineWidth; }
63 const Color& GetLineColor() const { return m_LineColor;}
64 SvxBorderLineStyle GetLineStyle() const { return m_eLineStyle; }
65 const Fraction& GetWidth() const { return m_Width; }
66 css::text::HorizontalAdjust GetAdj() const { return m_eAdjust; }
67 SwTwips GetTopDist() const { return m_nTopDist; }
68 SwTwips GetBottomDist() const { return m_nBottomDist; }
69
70 void SetHeight(SwTwips const nNew) { m_nMaxHeight = nNew; }
71 void SetLineWidth(sal_uLong const nSet) { m_nLineWidth = nSet; }
72 void SetLineStyle(SvxBorderLineStyle const eSet) {m_eLineStyle = eSet;}
73 void SetLineColor(const Color& rCol) { m_LineColor = rCol;}
74 void SetWidth(const Fraction & rNew) { m_Width = rNew; }
75 void SetAdj(css::text::HorizontalAdjust const eNew) { m_eAdjust = eNew; }
76 void SetTopDist (SwTwips const nNew) { m_nTopDist = nNew; }
77 void SetBottomDist(SwTwips const nNew) { m_nBottomDist = nNew; }
78
81 SwPageFootnoteInfo& operator=( const SwPageFootnoteInfo& );
82
83 bool operator ==( const SwPageFootnoteInfo& ) const;
84};
85
86/*
87 * Use of UseOnPage (m_eUse) and of FrameFormats
88 *
89 * RIGHT - m_Master only for right hand (odd) pages, left hand (even) pages
90 * always empty.
91 * LEFT - m_Left for left-hand pages, right-hand pages always empty.
92 * m_Left is a copy of master.
93 * ALL - m_Master for right hand pages, m_Left for left hand pages.
94 * - m_Left is a copy of master.
95 * MIRROR - m_Master for right hand pages, m_Left for left hand pagers.
96 * m_Left is a copy of master, margins are mirrored.
97 *
98 * UI works exclusively on master! m_Left is adjusted on Chg at document
99 * according to m_eUse.
100 *
101 * In order to simplify the work of the filters some more values are placed
102 * into m_eUse:
103 *
104 * HEADERSHARE - Content of header is equal on left and right hand pages.
105 * FOOTERSHARE - Content of footer is equal on left and right hand pages.
106 *
107 * The values are masked out in the respective getter and setter methods.
108 * Access to complete m_eUse including the information on header and footer
109 * via ReadUseOn(), WriteUseOn() (for Filter and CopyCTor)!
110 *
111 * The Frameformats for header/footer are adjusted by the UI according to
112 * the attributes for header and footer at master (height, margin, back-
113 * ground ...)
114 * Header/footer for left hand pages are copied or mirrored (Chg at
115 * document).
116 * The respective attribute for content is cared for automatically on Chg at
117 * document (contents are created or removed according to SHARE-information).
118 */
119
120enum class UseOnPage : sal_uInt16
121{
122 NONE = 0x0000,
123 Left = 0x0001,
124 Right = 0x0002,
125 All = 0x0003,
126 Mirror = 0x0007,
127 HeaderShare = 0x0040,
128 FooterShare = 0x0080,
129 FirstShare = 0x0100,
130 NoHeaderShare = 0xFFBF,
131 NoFooterShare = 0xFF7F,
132 NoFirstShare = 0xFEFF
133};
134namespace o3tl {
135 template<> struct typed_flags<UseOnPage> : is_typed_flags<UseOnPage, 0xffff> {};
136}
137
140{
141 friend class SwDoc;
142 friend class SwPageDescs;
143
144 OUString m_StyleName;
148 // FIXME epicycles growing here - page margins need to be stored differently
151
153 {
154 std::shared_ptr<SwFrameFormat> m_pStashedFirst;
155 std::shared_ptr<SwFrameFormat> m_pStashedLeft;
156 std::shared_ptr<SwFrameFormat> m_pStashedFirstLeft;
157 };
158
161
165 sal_uInt16 m_nRegHeight;
166 sal_uInt16 m_nRegAscent;
167 drawing::TextVerticalAdjust m_nVerticalAdjustment; // doc/docx: vertically center / justify / bottom
171
174
177
180 SAL_DLLPRIVATE void Mirror();
181
182 SAL_DLLPRIVATE void ResetAllAttr();
183
184 SAL_DLLPRIVATE SwPageDesc(const OUString&, SwFrameFormat*, SwDoc *pDc );
185
187 {
188 change_name(const OUString &rName) : mName(rName) {}
189 void operator()(SwPageDesc *pPageDesc) { pPageDesc->m_StyleName = mName; }
190 const OUString &mName;
191 };
192
193 virtual void SwClientNotify(const SwModify&, const SfxHint&) override;
194
195public:
196 const OUString& GetName() const { return m_StyleName; }
197 bool SetName(const OUString& rNewName);
198
199 bool GetLandscape() const { return m_IsLandscape; }
200 void SetLandscape( bool bNew ) { m_IsLandscape = bNew; }
201
202 const SvxNumberType &GetNumType() const { return m_NumType; }
203 void SetNumType(const SvxNumberType& rNew) { m_NumType = rNew; }
204
205 const SwPageFootnoteInfo &GetFootnoteInfo() const { return m_FootnoteInfo; }
206 SwPageFootnoteInfo &GetFootnoteInfo() { return m_FootnoteInfo; }
207 void SetFootnoteInfo(const SwPageFootnoteInfo &rNew) { m_FootnoteInfo = rNew; }
208
209 inline bool IsHeaderShared() const;
210 inline bool IsFooterShared() const;
211 inline void ChgHeaderShare( bool bNew );
212 inline void ChgFooterShare( bool bNew );
213 bool IsFirstShared() const;
214 void ChgFirstShare( bool bNew );
215
216 bool IsHidden() const { return m_IsHidden; }
217 void SetHidden(bool const bValue) { m_IsHidden = bValue; }
218
220 void StashFrameFormat(const SwFrameFormat& rFormat, bool bHeader, bool bLeft, bool bFirst);
221
223 const SwFrameFormat* GetStashedFrameFormat(bool bHeader, bool bLeft, bool bFirst) const;
224
226 bool HasStashedFormat(bool bHeader, bool bLeft, bool bFirst);
227
229 void RemoveStashedFormat(bool bHeader, bool bLeft, bool bFirst);
230
232 inline void SetUseOn( UseOnPage eNew );
233 inline UseOnPage GetUseOn() const;
234
235 void WriteUseOn(UseOnPage const eNew) { m_eUse = eNew; }
236 UseOnPage ReadUseOn() const { return m_eUse; }
237
238 SwFrameFormat &GetMaster() { return m_Master; }
239 SwFrameFormat &GetLeft() { return m_Left; }
240 SwFrameFormat &GetFirstMaster() { return m_FirstMaster; }
241 SwFrameFormat &GetFirstLeft() { return m_FirstLeft; }
242 const SwFrameFormat &GetMaster() const { return m_Master; }
243 const SwFrameFormat &GetLeft() const { return m_Left; }
244 const SwFrameFormat &GetFirstMaster() const { return m_FirstMaster; }
245 const SwFrameFormat &GetFirstLeft() const { return m_FirstLeft; }
246
249 inline void ResetAllMasterAttr();
250
253 SwFrameFormat *GetRightFormat(bool const bFirst = false);
254 inline const SwFrameFormat *GetRightFormat(bool const bFirst = false) const;
255 SwFrameFormat *GetLeftFormat(bool const bFirst = false);
256 inline const SwFrameFormat *GetLeftFormat(bool const bFirst = false) const;
257
258 sal_uInt16 GetRegHeight() const { return m_nRegHeight; }
259 sal_uInt16 GetRegAscent() const { return m_nRegAscent; }
260 void SetRegHeight(sal_uInt16 const nNew) { m_nRegHeight = nNew; }
261 void SetRegAscent(sal_uInt16 const nNew) { m_nRegAscent = nNew; }
262
263 drawing::TextVerticalAdjust GetVerticalAdjustment () const {return m_nVerticalAdjustment; }
264 void SetVerticalAdjustment (const drawing::TextVerticalAdjust nVA) {m_nVerticalAdjustment = nVA; }
265
266 inline void SetFollow( const SwPageDesc* pNew );
267 const SwPageDesc* GetFollow() const { return m_pFollow; }
268 SwPageDesc* GetFollow() { return m_pFollow; }
269
270 void SetRegisterFormatColl( const SwTextFormatColl* rFormat );
271 const SwTextFormatColl* GetRegisterFormatColl() const;
272 void RegisterChange();
273
275 sal_uInt16 GetPoolFormatId() const { return m_Master.GetPoolFormatId(); }
276 void SetPoolFormatId(sal_uInt16 const nId) { m_Master.SetPoolFormatId(nId); }
277 sal_uInt16 GetPoolHelpId() const { return m_Master.GetPoolHelpId(); }
278 void SetPoolHelpId(sal_uInt16 const nId){ m_Master.SetPoolHelpId(nId); }
279 sal_uInt8 GetPoolHlpFileId() const { return m_Master.GetPoolHlpFileId(); }
280 void SetPoolHlpFileId(sal_uInt8 const nId) { m_Master.SetPoolHlpFileId(nId); }
281
283 virtual bool GetInfo( SfxPoolItem& ) const override;
284
285 const SwFrameFormat* GetPageFormatOfNode( const SwNode& rNd,
286 bool bCheckForThisPgDc = true ) const;
287 bool IsFollowNextPageOfNode( const SwNode& rNd ) const;
288
290 static const SwPageDesc* GetPageDescOfNode(const SwNode& rNd);
291
292 static SwPageDesc* GetByName(SwDoc& rDoc, std::u16string_view rName);
293
294 SwPageDesc& operator=( const SwPageDesc& );
295
296 SwPageDesc( const SwPageDesc& );
297 virtual ~SwPageDesc() override;
298
299 void dumpAsXml(xmlTextWriterPtr pWriter) const;
300};
301
302namespace std {
303 template<>
304 struct less<SwPageDesc*> {
305 bool operator()(const SwPageDesc *pPageDesc, std::u16string_view rName) const
306 { return pPageDesc->GetName() < rName; }
307 bool operator()(std::u16string_view rName, const SwPageDesc *pPageDesc) const
308 { return rName < pPageDesc->GetName(); }
309 bool operator()(const SwPageDesc *lhs, const SwPageDesc *rhs) const
310 { return lhs->GetName() < rhs->GetName(); }
311 };
312}
313
314inline void SwPageDesc::SetFollow( const SwPageDesc* pNew )
315{
316 m_pFollow = pNew ? const_cast<SwPageDesc*>(pNew) : this;
317}
318
319inline bool SwPageDesc::IsHeaderShared() const
320{
321 return bool(m_eUse & UseOnPage::HeaderShare);
322}
323inline bool SwPageDesc::IsFooterShared() const
324{
325 return bool(m_eUse & UseOnPage::FooterShare);
326}
327inline void SwPageDesc::ChgHeaderShare( bool bNew )
328{
329 if ( bNew )
331 else
333}
334inline void SwPageDesc::ChgFooterShare( bool bNew )
335{
336 if ( bNew )
338 else
340}
342{
349 eTmp |= UseOnPage::FirstShare;
350 m_eUse = eTmp | eNew;
351
352}
354{
355 UseOnPage eRet = m_eUse;
359 return eRet;
360}
361
363{
364 ResetAllAttr();
365}
366
367inline const SwFrameFormat *SwPageDesc::GetRightFormat(bool const bFirst) const
368{
369 return const_cast<SwPageDesc*>(this)->GetRightFormat(bFirst);
370}
371inline const SwFrameFormat *SwPageDesc::GetLeftFormat(bool const bFirst) const
372{
373 return const_cast<SwPageDesc*>(this)->GetLeftFormat(bFirst);
374}
375
377{
378public:
380private:
382 OUString m_sFollow;
383
384 void SetPageDesc(const SwPageDesc & rPageDesc);
385
386public:
387 SwPageDescExt(const SwPageDesc & rPageDesc, SwDoc * pDoc);
388 SwPageDescExt(const SwPageDescExt & rSrc);
390
392 SwPageDescExt & operator = (const SwPageDesc & rSrc);
393
394 OUString const & GetName() const;
395
396 operator SwPageDesc() const; // #i7983#
397};
398
399namespace sw {
400 class PageFootnoteHint final : public SfxHint {};
401
403}
404
405typedef boost::multi_index_container<
406 SwPageDesc*,
407 boost::multi_index::indexed_by<
408 boost::multi_index::random_access<>,
409 boost::multi_index::ordered_unique<
410 boost::multi_index::identity<SwPageDesc*> >
411 >
412 >
414
415class SwPageDescs final
416{
417 // function updating ByName index via modify
418 friend bool SwPageDesc::SetName( const OUString& rNewName );
419
420 typedef SwPageDescsBase::nth_index<0>::type ByPos;
421 typedef SwPageDescsBase::nth_index<1>::type ByName;
422 typedef ByPos::iterator iterator;
423
424 iterator find_( const OUString &name ) const;
425
429
430public:
431 typedef ByPos::const_iterator const_iterator;
432 typedef SwPageDescsBase::size_type size_type;
433 typedef SwPageDescsBase::value_type value_type;
434
435 SwPageDescs();
436
437 // frees all SwPageDesc!
438 ~SwPageDescs();
439
440 void clear() { return m_Array.clear(); }
441 bool empty() const { return m_Array.empty(); }
442 size_t size() const { return m_Array.size(); }
443
444 std::pair<const_iterator,bool> push_back( const value_type& x );
445 void erase( const value_type& x );
446 void erase( size_type index );
447 void erase( const_iterator const& position );
448
449 const_iterator find( const OUString &name ) const
450 { return find_( name ); }
451 const value_type& operator[]( size_t index_ ) const
452 { return m_PosIndex.operator[]( index_ ); }
453 const value_type& front() const { return m_PosIndex.front(); }
454 const value_type& back() const { return m_PosIndex.back(); }
455 const_iterator begin() const { return m_PosIndex.begin(); }
456 const_iterator end() const { return m_PosIndex.end(); }
457
458 bool contains( const value_type& x ) const
459 { return x->m_pdList == this; }
460
461 void dumpAsXml(xmlTextWriterPtr pWriter) const;
462};
463
464#endif // INCLUDED_SW_INC_PAGEDESC_HXX
465
466/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
struct _xmlTextWriter * xmlTextWriterPtr
SvxBorderLineStyle
Definition: doc.hxx:192
sal_uInt16 GetPoolFormatId() const
Get and set Pool style IDs.
Definition: format.hxx:163
void SetPoolHelpId(sal_uInt16 nId)
Definition: format.hxx:168
void SetPoolFormatId(sal_uInt16 nId)
Definition: format.hxx:164
sal_uInt16 GetPoolHelpId() const
Get and set Help-IDs for document templates.
Definition: format.hxx:167
sal_uInt8 GetPoolHlpFileId() const
Definition: format.hxx:169
void SetPoolHlpFileId(sal_uInt8 nId)
Definition: format.hxx:170
Style of a layout element.
Definition: frmfmt.hxx:62
Base class of the Writer document model elements.
Definition: node.hxx:84
OUString const & GetName() const
Definition: pagedesc.cxx:697
void SetPageDesc(const SwPageDesc &rPageDesc)
Definition: pagedesc.cxx:702
SwDoc * m_pDoc
Definition: pagedesc.hxx:381
SwPageDescExt & operator=(const SwPageDescExt &rSrc)
Definition: pagedesc.cxx:717
SwPageDescExt(const SwPageDesc &rPageDesc, SwDoc *pDoc)
Definition: pagedesc.cxx:679
SwPageDesc m_PageDesc
Definition: pagedesc.hxx:379
OUString m_sFollow
Definition: pagedesc.hxx:382
sal_uInt16 GetPoolFormatId() const
Query and set PoolFormat-Id.
Definition: pagedesc.hxx:275
SvxNumberType m_NumType
Definition: pagedesc.hxx:145
SwFrameFormat m_Left
Definition: pagedesc.hxx:147
sal_uInt16 GetPoolHelpId() const
Definition: pagedesc.hxx:277
SwPageDescs * m_pdList
Backref to the assigned SwPageDescs list to handle renames.
Definition: pagedesc.hxx:176
void ChgFooterShare(bool bNew)
Definition: pagedesc.hxx:334
const OUString & GetName() const
Definition: pagedesc.hxx:196
sal_uInt16 m_nRegAscent
For grid alignment (Registerhaltigkeit).
Definition: pagedesc.hxx:166
UseOnPage m_eUse
Definition: pagedesc.hxx:168
drawing::TextVerticalAdjust m_nVerticalAdjustment
Definition: pagedesc.hxx:167
void SetPoolHlpFileId(sal_uInt8 const nId)
Definition: pagedesc.hxx:280
void SetFollow(const SwPageDesc *pNew)
Definition: pagedesc.hxx:314
SwFrameFormat m_FirstMaster
Definition: pagedesc.hxx:149
const SwFrameFormat & GetMaster() const
Definition: pagedesc.hxx:242
void ResetAllMasterAttr()
Reset all attrs of the format but keep the ones a pagedesc cannot live without.
Definition: pagedesc.hxx:362
const SwFrameFormat & GetFirstMaster() const
Definition: pagedesc.hxx:244
void SetVerticalAdjustment(const drawing::TextVerticalAdjust nVA)
Definition: pagedesc.hxx:264
SwFrameFormat m_Master
Definition: pagedesc.hxx:146
SwPageFootnoteInfo m_FootnoteInfo
Footnote information.
Definition: pagedesc.hxx:173
sal_uInt16 GetRegHeight() const
Definition: pagedesc.hxx:258
SwFrameFormat & GetMaster()
Definition: pagedesc.hxx:238
bool IsHeaderShared() const
Definition: pagedesc.hxx:319
SwFrameFormat m_FirstLeft
Definition: pagedesc.hxx:150
const SvxNumberType & GetNumType() const
Definition: pagedesc.hxx:202
SwPageDesc * GetFollow()
Definition: pagedesc.hxx:268
void ChgHeaderShare(bool bNew)
Definition: pagedesc.hxx:327
void SetRegAscent(sal_uInt16 const nNew)
Definition: pagedesc.hxx:261
bool IsFooterShared() const
Definition: pagedesc.hxx:323
const SwFrameFormat & GetFirstLeft() const
Definition: pagedesc.hxx:245
sal_uInt8 GetPoolHlpFileId() const
Definition: pagedesc.hxx:279
SwFrameFormat & GetFirstLeft()
Definition: pagedesc.hxx:241
SwFrameFormat & GetFirstMaster()
Definition: pagedesc.hxx:240
void SetPoolFormatId(sal_uInt16 const nId)
Definition: pagedesc.hxx:276
void SetPoolHelpId(sal_uInt16 const nId)
Definition: pagedesc.hxx:278
bool GetLandscape() const
Definition: pagedesc.hxx:199
UseOnPage GetUseOn() const
Definition: pagedesc.hxx:353
void SetNumType(const SvxNumberType &rNew)
Definition: pagedesc.hxx:203
bool SetName(const OUString &rNewName)
Definition: pagedesc.cxx:147
SwFrameFormat * GetRightFormat(bool const bFirst=false)
Layout uses the following methods to obtain a format in order to be able to create a page.
Definition: pagedesc.cxx:389
void SetFootnoteInfo(const SwPageFootnoteInfo &rNew)
Definition: pagedesc.hxx:207
SwPageDesc * m_pFollow
Definition: pagedesc.hxx:164
SwFrameFormat & GetLeft()
Definition: pagedesc.hxx:239
bool m_IsHidden
Definition: pagedesc.hxx:170
const SwPageDesc * GetFollow() const
Definition: pagedesc.hxx:267
const SwFrameFormat & GetLeft() const
Definition: pagedesc.hxx:243
void WriteUseOn(UseOnPage const eNew)
Definition: pagedesc.hxx:235
sw::WriterMultiListener m_aDepends
Because of grid alignment (Registerhaltigkeit).
Definition: pagedesc.hxx:162
const SwPageFootnoteInfo & GetFootnoteInfo() const
Definition: pagedesc.hxx:205
bool m_IsLandscape
Definition: pagedesc.hxx:169
sal_uInt16 m_nRegHeight
Sentence spacing and fontascent of style.
Definition: pagedesc.hxx:165
SAL_DLLPRIVATE void ResetAllAttr()
Definition: pagedesc.cxx:189
OUString m_StyleName
Definition: pagedesc.hxx:144
void SetHidden(bool const bValue)
Definition: pagedesc.hxx:217
drawing::TextVerticalAdjust GetVerticalAdjustment() const
Definition: pagedesc.hxx:263
void SetRegHeight(sal_uInt16 const nNew)
Definition: pagedesc.hxx:260
UseOnPage ReadUseOn() const
Definition: pagedesc.hxx:236
const SwTextFormatColl * m_pTextFormatColl
Definition: pagedesc.hxx:163
SwFrameFormat * GetLeftFormat(bool const bFirst=false)
Definition: pagedesc.cxx:382
void SetUseOn(UseOnPage eNew)
Same as WriteUseOn(), but the >= HeaderShare part of the bitfield is not modified.
Definition: pagedesc.hxx:341
SwPageFootnoteInfo & GetFootnoteInfo()
Definition: pagedesc.hxx:206
StashedPageDesc m_aStashedFooter
Definition: pagedesc.hxx:160
void SetLandscape(bool bNew)
Definition: pagedesc.hxx:200
sal_uInt16 GetRegAscent() const
Definition: pagedesc.hxx:259
bool IsHidden() const
Definition: pagedesc.hxx:216
StashedPageDesc m_aStashedHeader
Definition: pagedesc.hxx:159
SwPageDescsBase::value_type value_type
Definition: pagedesc.hxx:433
SwPageDescsBase::size_type size_type
Definition: pagedesc.hxx:432
ByName & m_NameIndex
Definition: pagedesc.hxx:428
std::pair< const_iterator, bool > push_back(const value_type &x)
Definition: pagedesc.cxx:753
const_iterator begin() const
Definition: pagedesc.hxx:455
void clear()
Definition: pagedesc.hxx:440
void erase(const value_type &x)
Definition: pagedesc.cxx:764
ByPos & m_PosIndex
Definition: pagedesc.hxx:427
const value_type & operator[](size_t index_) const
Definition: pagedesc.hxx:451
size_t size() const
Definition: pagedesc.hxx:442
SwPageDescsBase::nth_index< 0 >::type ByPos
Definition: pagedesc.hxx:420
SwPageDescsBase::nth_index< 1 >::type ByName
Definition: pagedesc.hxx:421
void dumpAsXml(xmlTextWriterPtr pWriter) const
Definition: pagedesc.cxx:791
iterator find_(const OUString &name) const
Definition: pagedesc.cxx:747
const_iterator end() const
Definition: pagedesc.hxx:456
SwPageDescsBase m_Array
Definition: pagedesc.hxx:426
ByPos::const_iterator const_iterator
Definition: pagedesc.hxx:431
const value_type & front() const
Definition: pagedesc.hxx:453
bool empty() const
Definition: pagedesc.hxx:441
ByPos::iterator iterator
Definition: pagedesc.hxx:422
const_iterator find(const OUString &name) const
Definition: pagedesc.hxx:449
const value_type & back() const
Definition: pagedesc.hxx:454
bool contains(const value_type &x) const
Definition: pagedesc.hxx:458
Footnote information.
Definition: pagedesc.hxx:49
SwTwips m_nMaxHeight
maximum height of the footnote area.
Definition: pagedesc.hxx:51
SwTwips m_nBottomDist
distance between separator and first footnote
Definition: pagedesc.hxx:58
SwTwips GetHeight() const
Definition: pagedesc.hxx:61
sal_uLong GetLineWidth() const
Definition: pagedesc.hxx:62
SwTwips GetTopDist() const
Definition: pagedesc.hxx:67
void SetBottomDist(SwTwips const nNew)
Definition: pagedesc.hxx:77
void SetWidth(const Fraction &rNew)
Definition: pagedesc.hxx:74
void SetLineWidth(sal_uLong const nSet)
Definition: pagedesc.hxx:71
Fraction m_Width
percentage width of the separator line.
Definition: pagedesc.hxx:55
css::text::HorizontalAdjust GetAdj() const
Definition: pagedesc.hxx:66
void SetLineStyle(SvxBorderLineStyle const eSet)
Definition: pagedesc.hxx:72
SvxBorderLineStyle m_eLineStyle
Style of the separator line.
Definition: pagedesc.hxx:53
void SetAdj(css::text::HorizontalAdjust const eNew)
Definition: pagedesc.hxx:75
SwTwips m_nTopDist
distance between body and separator.
Definition: pagedesc.hxx:57
const Color & GetLineColor() const
Definition: pagedesc.hxx:63
sal_uLong m_nLineWidth
width of separator line
Definition: pagedesc.hxx:52
Color m_LineColor
color of the separator line
Definition: pagedesc.hxx:54
void SetHeight(SwTwips const nNew)
Definition: pagedesc.hxx:70
void SetTopDist(SwTwips const nNew)
Definition: pagedesc.hxx:76
css::text::HorizontalAdjust m_eAdjust
line adjustment.
Definition: pagedesc.hxx:56
SwTwips GetBottomDist() const
Definition: pagedesc.hxx:68
void SetLineColor(const Color &rCol)
Definition: pagedesc.hxx:73
const Fraction & GetWidth() const
Definition: pagedesc.hxx:65
SvxBorderLineStyle GetLineStyle() const
Definition: pagedesc.hxx:64
Represents the style of a paragraph.
Definition: fmtcol.hxx:59
float x
const char * name
sal_uInt32 index_
bool less(const T &rfValA, const T &rfValB)
NONE
Dialog to specify the properties of date form field.
SwTwips FootnoteSeparatorHeight(SwPageFootnoteInfo const &rInf)
Definition: ftnfrm.cxx:222
sal_Int16 nId
UseOnPage
Definition: pagedesc.hxx:121
@ NoFooterShare
For internal use only.
@ NONE
For internal use only.
@ NoHeaderShare
For internal use only.
struct _xmlTextWriter * xmlTextWriterPtr
Definition: pagedesc.hxx:45
boost::multi_index_container< SwPageDesc *, boost::multi_index::indexed_by< boost::multi_index::random_access<>, boost::multi_index::ordered_unique< boost::multi_index::identity< SwPageDesc * > > > > SwPageDescsBase
Definition: pagedesc.hxx:413
sal_uIntPtr sal_uLong
std::shared_ptr< SwFrameFormat > m_pStashedFirst
Definition: pagedesc.hxx:154
std::shared_ptr< SwFrameFormat > m_pStashedFirstLeft
Definition: pagedesc.hxx:156
std::shared_ptr< SwFrameFormat > m_pStashedLeft
Definition: pagedesc.hxx:155
change_name(const OUString &rName)
Definition: pagedesc.hxx:188
void operator()(SwPageDesc *pPageDesc)
Definition: pagedesc.hxx:189
const OUString & mName
Definition: pagedesc.hxx:190
bool operator()(const SwPageDesc *lhs, const SwPageDesc *rhs) const
Definition: pagedesc.hxx:309
bool operator()(const SwPageDesc *pPageDesc, std::u16string_view rName) const
Definition: pagedesc.hxx:305
bool operator()(std::u16string_view rName, const SwPageDesc *pPageDesc) const
Definition: pagedesc.hxx:307
#define SW_DLLPUBLIC
Definition: swdllapi.h:28
tools::Long SwTwips
Definition: swtypes.hxx:51
Left
Right
unsigned char sal_uInt8