WPSPageSpan.h
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2/* libwps
3 * Version: MPL 2.0 / LGPLv2.1+
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 * Major Contributor(s):
10 * Copyright (C) 2002 William Lachance (william.lachance@sympatico.ca)
11 * Copyright (C) 2002 Marc Maurer (uwog@uwog.net)
12 * Copyright (C) 2006 Fridrich Strba (fridrich.strba@bluewin.ch)
13 *
14 * For minor contributions see the git repository.
15 *
16 * Alternatively, the contents of this file may be used under the terms
17 * of the GNU Lesser General Public License Version 2.1 or later
18 * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
19 * applicable instead of those above.
20 *
21 * For further information visit http://libwps.sourceforge.net
22 */
23
24#ifndef WPSPAGESPAN_H
25#define WPSPAGESPAN_H
26#include <vector>
27#include "libwps_internal.h"
28
31
32namespace WPSPageSpanInternal
33{
34class HeaderFooter;
35typedef shared_ptr<HeaderFooter> HeaderFooterPtr;
36}
37
39{
40public:
42
45
48 };
49public:
54
55 double getFormLength() const
56 {
57 return m_formLength;
58 }
59 double getFormWidth() const
60 {
61 return m_formWidth;
62 }
67 double getMarginLeft() const
68 {
69 return m_marginLeft;
70 }
71 double getMarginRight() const
72 {
73 return m_marginRight;
74 }
75 double getMarginTop() const
76 {
77 return m_marginTop;
78 }
79 double getMarginBottom() const
80 {
81 return m_marginBottom;
82 }
87 int getPageNumber() const
88 {
89 return m_pageNumber;
90 }
96 {
98 }
99 librevenge::RVNGString getPageNumberingFontName() const
100 {
102 }
103 int getPageSpan() const
104 {
105 return m_pageSpan;
106 }
107 const std::vector<WPSPageSpanInternal::HeaderFooterPtr> &getHeaderFooterList() const
108 {
109 return m_headerFooterList;
110 }
111
112 void setHeaderFooter(const HeaderFooterType type, const HeaderFooterOccurrence occurrence,
113 WPSSubDocumentPtr &subDocument);
114 void setFormLength(const double formLength)
115 {
116 m_formLength = formLength;
117 }
118 void setFormWidth(const double formWidth)
119 {
120 m_formWidth = formWidth;
121 }
122 void setFormOrientation(const FormOrientation formOrientation)
123 {
124 m_formOrientation = formOrientation;
125 }
126 void setMarginLeft(const double marginLeft)
127 {
128 m_marginLeft = marginLeft;
129 }
130 void setMarginRight(const double marginRight)
131 {
132 m_marginRight = marginRight;
133 }
134 void setMarginTop(const double marginTop)
135 {
136 m_marginTop = marginTop;
137 }
138 void setMarginBottom(const double marginBottom)
139 {
140 m_marginBottom = marginBottom;
141 }
142 void setPageNumberPosition(const PageNumberPosition pageNumberPosition)
143 {
144 m_pageNumberPosition = pageNumberPosition;
145 }
146 void setPageNumber(const int pageNumber)
147 {
148 m_pageNumber = pageNumber;
149 }
150 void setPageNumberingType(const libwps::NumberingType pageNumberingType)
151 {
152 m_pageNumberingType = pageNumberingType;
153 }
154 void setPageNumberingFontSize(const double pageNumberingFontSize)
155 {
156 m_pageNumberingFontSize = pageNumberingFontSize;
157 }
158 void setPageNumberingFontName(const librevenge::RVNGString &pageNumberingFontName)
159 {
160 m_pageNumberingFontName = pageNumberingFontName;
161 }
162 void setPageSpan(const int pageSpan)
163 {
164 m_pageSpan = pageSpan;
165 }
166
167 bool operator==(shared_ptr<WPSPageSpan> const &pageSpan) const;
168 bool operator!=(shared_ptr<WPSPageSpan> const &pageSpan) const
169 {
170 return !operator==(pageSpan);
171 }
172
173 // interface with the listeners
174 void getPageProperty(librevenge::RVNGPropertyList &pList) const;
175 void sendHeaderFooters(WPSContentListener *listener, librevenge::RVNGTextInterface *documentInterface);
176 void sendHeaderFooters(WKSContentListener *listener, librevenge::RVNGSpreadsheetInterface *documentInterface);
177
178protected:
179
184
185 void _insertPageNumberParagraph(librevenge::RVNGTextInterface *documentInterface);
186private:
194 librevenge::RVNGString m_pageNumberingFontName;
196 std::vector<WPSPageSpanInternal::HeaderFooterPtr> m_headerFooterList;
197
199};
200
201#endif
202/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
Definition WKSContentListener.h:53
Definition WPSContentListener.h:45
Definition WPSPageSpan.h:39
double m_marginRight
Definition WPSPageSpan.h:189
double getPageNumberingFontSize() const
Definition WPSPageSpan.h:95
void _setHeaderFooter(HeaderFooterType type, HeaderFooterOccurrence occurrence, WPSSubDocumentPtr &doc)
Definition WPSPageSpan.cpp:406
PageNumberPosition m_pageNumberPosition
Definition WPSPageSpan.h:191
bool operator==(shared_ptr< WPSPageSpan > const &pageSpan) const
Definition WPSPageSpan.cpp:298
double getMarginLeft() const
Definition WPSPageSpan.h:67
HeaderFooterType
Definition WPSPageSpan.h:43
@ FOOTER
Definition WPSPageSpan.h:43
@ HEADER
Definition WPSPageSpan.h:43
int m_pageSpan
Definition WPSPageSpan.h:198
bool operator!=(shared_ptr< WPSPageSpan > const &pageSpan) const
Definition WPSPageSpan.h:168
void setFormLength(const double formLength)
Definition WPSPageSpan.h:114
librevenge::RVNGString getPageNumberingFontName() const
Definition WPSPageSpan.h:99
void setFormWidth(const double formWidth)
Definition WPSPageSpan.h:118
FormOrientation getFormOrientation() const
Definition WPSPageSpan.h:63
void getPageProperty(librevenge::RVNGPropertyList &pList) const
Definition WPSPageSpan.cpp:281
double m_pageNumberingFontSize
Definition WPSPageSpan.h:195
double getFormWidth() const
Definition WPSPageSpan.h:59
HeaderFooterOccurrence
Definition WPSPageSpan.h:44
@ EVEN
Definition WPSPageSpan.h:44
@ FIRST
Definition WPSPageSpan.h:44
@ NEVER
Definition WPSPageSpan.h:44
@ ODD
Definition WPSPageSpan.h:44
@ ALL
Definition WPSPageSpan.h:44
void sendHeaderFooters(WPSContentListener *listener, librevenge::RVNGTextInterface *documentInterface)
Definition WPSPageSpan.cpp:152
FormOrientation
Definition WPSPageSpan.h:41
@ LANDSCAPE
Definition WPSPageSpan.h:41
@ PORTRAIT
Definition WPSPageSpan.h:41
void _removeHeaderFooter(HeaderFooterType type, HeaderFooterOccurrence occurrence)
Definition WPSPageSpan.cpp:415
void setMarginTop(const double marginTop)
Definition WPSPageSpan.h:134
int getPageNumber() const
Definition WPSPageSpan.h:87
void setPageNumberingFontName(const librevenge::RVNGString &pageNumberingFontName)
Definition WPSPageSpan.h:158
std::vector< WPSPageSpanInternal::HeaderFooterPtr > m_headerFooterList
Definition WPSPageSpan.h:196
~WPSPageSpan()
destructor
Definition WPSPageSpan.cpp:105
double m_marginBottom
Definition WPSPageSpan.h:190
PageNumberPosition
Definition WPSPageSpan.h:46
@ TopRight
Definition WPSPageSpan.h:46
@ BottomLeftAndRight
Definition WPSPageSpan.h:47
@ TopInsideLeftAndRight
Definition WPSPageSpan.h:46
@ TopLeft
Definition WPSPageSpan.h:46
@ BottomInsideLeftAndRight
Definition WPSPageSpan.h:47
@ BottomCenter
Definition WPSPageSpan.h:47
@ TopLeftAndRight
Definition WPSPageSpan.h:46
@ BottomLeft
Definition WPSPageSpan.h:47
@ TopCenter
Definition WPSPageSpan.h:46
@ BottomRight
Definition WPSPageSpan.h:47
@ None
Definition WPSPageSpan.h:46
double m_formLength
Definition WPSPageSpan.h:187
void setMarginBottom(const double marginBottom)
Definition WPSPageSpan.h:138
PageNumberPosition getPageNumberPosition() const
Definition WPSPageSpan.h:83
int _getHeaderFooterPosition(HeaderFooterType type, HeaderFooterOccurrence occurrence)
Definition WPSPageSpan.cpp:430
librevenge::RVNGString m_pageNumberingFontName
Definition WPSPageSpan.h:194
double getMarginTop() const
Definition WPSPageSpan.h:75
void setHeaderFooter(const HeaderFooterType type, const HeaderFooterOccurrence occurrence, WPSSubDocumentPtr &subDocument)
Definition WPSPageSpan.cpp:109
bool _containsHeaderFooter(HeaderFooterType type, HeaderFooterOccurrence occurrence)
Definition WPSPageSpan.cpp:422
void setPageNumberingType(const libwps::NumberingType pageNumberingType)
Definition WPSPageSpan.h:150
FormOrientation m_formOrientation
Definition WPSPageSpan.h:188
void setMarginLeft(const double marginLeft)
Definition WPSPageSpan.h:126
void setPageNumber(const int pageNumber)
Definition WPSPageSpan.h:146
int m_pageNumber
Definition WPSPageSpan.h:192
double getFormLength() const
Definition WPSPageSpan.h:55
double m_marginTop
Definition WPSPageSpan.h:190
double getMarginBottom() const
Definition WPSPageSpan.h:79
const std::vector< WPSPageSpanInternal::HeaderFooterPtr > & getHeaderFooterList() const
Definition WPSPageSpan.h:107
void setPageSpan(const int pageSpan)
Definition WPSPageSpan.h:162
void setPageNumberPosition(const PageNumberPosition pageNumberPosition)
Definition WPSPageSpan.h:142
int getPageSpan() const
Definition WPSPageSpan.h:103
void setFormOrientation(const FormOrientation formOrientation)
Definition WPSPageSpan.h:122
double getMarginRight() const
Definition WPSPageSpan.h:71
double m_formWidth
Definition WPSPageSpan.h:187
WPSPageSpan()
constructor
Definition WPSPageSpan.cpp:87
void _insertPageNumberParagraph(librevenge::RVNGTextInterface *documentInterface)
Definition WPSPageSpan.cpp:357
void setPageNumberingFontSize(const double pageNumberingFontSize)
Definition WPSPageSpan.h:154
libwps::NumberingType getPageNumberingType() const
Definition WPSPageSpan.h:91
libwps::NumberingType m_pageNumberingType
Definition WPSPageSpan.h:193
void setMarginRight(const double marginRight)
Definition WPSPageSpan.h:130
double m_marginLeft
Definition WPSPageSpan.h:189
shared_ptr< WPSSubDocument > WPSSubDocumentPtr
shared pointer to WPSSubDocument
Definition libwps_internal.h:112
Definition WPSPageSpan.cpp:34
shared_ptr< HeaderFooter > HeaderFooterPtr
Definition WPSPageSpan.h:35
NumberingType
Definition libwps_internal.h:244

Generated on Mon Nov 27 2023 04:06:28 for libwps by doxygen 1.9.8