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 
29 class WPXPropertyList;
30 class WPXDocumentProperty;
31 class WPSContentListener;
32 
34 typedef shared_ptr<WPSSubDocument> WPSSubDocumentPtr;
35 
36 namespace WPSPageSpanInternal
37 {
39 typedef shared_ptr<HeaderFooter> HeaderFooterPtr;
40 }
41 
43 {
44  friend class WPSContentListener;
45 public:
47 
50 
53  };
54 public:
55  WPSPageSpan();
56  virtual ~WPSPageSpan();
57 
58  double getFormLength() const
59  {
60  return m_formLength;
61  }
62  double getFormWidth() const
63  {
64  return m_formWidth;
65  }
67  {
68  return m_formOrientation;
69  }
70  double getMarginLeft() const
71  {
72  return m_marginLeft;
73  }
74  double getMarginRight() const
75  {
76  return m_marginRight;
77  }
78  double getMarginTop() const
79  {
80  return m_marginTop;
81  }
82  double getMarginBottom() const
83  {
84  return m_marginBottom;
85  }
87  {
88  return m_pageNumberPosition;
89  }
90  int getPageNumber() const
91  {
92  return m_pageNumber;
93  }
95  {
96  return m_pageNumberingType;
97  }
98  double getPageNumberingFontSize() const
99  {
101  }
102  WPXString getPageNumberingFontName() const
103  {
105  }
106  int getPageSpan() const
107  {
108  return m_pageSpan;
109  }
110  const std::vector<WPSPageSpanInternal::HeaderFooterPtr> &getHeaderFooterList() const
111  {
112  return m_headerFooterList;
113  }
114 
115  void setHeaderFooter(const HeaderFooterType type, const HeaderFooterOccurence occurence,
116  WPSSubDocumentPtr &subDocument);
117  void setFormLength(const double formLength)
118  {
119  m_formLength = formLength;
120  }
121  void setFormWidth(const double formWidth)
122  {
123  m_formWidth = formWidth;
124  }
125  void setFormOrientation(const FormOrientation formOrientation)
126  {
127  m_formOrientation = formOrientation;
128  }
129  void setMarginLeft(const double marginLeft)
130  {
131  m_marginLeft = marginLeft;
132  }
133  void setMarginRight(const double marginRight)
134  {
135  m_marginRight = marginRight;
136  }
137  void setMarginTop(const double marginTop)
138  {
139  m_marginTop = marginTop;
140  }
141  void setMarginBottom(const double marginBottom)
142  {
143  m_marginBottom = marginBottom;
144  }
145  void setPageNumberPosition(const PageNumberPosition pageNumberPosition)
146  {
147  m_pageNumberPosition = pageNumberPosition;
148  }
149  void setPageNumber(const int pageNumber)
150  {
151  m_pageNumber = pageNumber;
152  }
153  void setPageNumberingType(const libwps::NumberingType pageNumberingType)
154  {
155  m_pageNumberingType = pageNumberingType;
156  }
157  void setPageNumberingFontSize(const double pageNumberingFontSize)
158  {
159  m_pageNumberingFontSize = pageNumberingFontSize;
160  }
161  void setPageNumberingFontName(const WPXString &pageNumberingFontName)
162  {
163  m_pageNumberingFontName = pageNumberingFontName;
164  }
165  void setPageSpan(const int pageSpan)
166  {
167  m_pageSpan = pageSpan;
168  }
169 
170  bool operator==(shared_ptr<WPSPageSpan> const &pageSpan) const;
171  bool operator!=(shared_ptr<WPSPageSpan> const &pageSpan) const
172  {
173  return !operator==(pageSpan);
174  }
175 protected:
176  // interface with WPSContentListener
177  void getPageProperty(WPXPropertyList &pList) const;
178  void sendHeaderFooters(WPSContentListener *listener,
179  WPXDocumentInterface *documentInterface);
180 
181 protected:
182 
187 
188  void _insertPageNumberParagraph(WPXDocumentInterface *documentInterface);
189 private:
199  std::vector<WPSPageSpanInternal::HeaderFooterPtr> m_headerFooterList;
200 
202 };
203 
204 #endif
205 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
virtual ~WPSPageSpan()
Definition: WPSPageSpan.cpp:104
void setHeaderFooter(const HeaderFooterType type, const HeaderFooterOccurence occurence, WPSSubDocumentPtr &subDocument)
Definition: WPSPageSpan.cpp:108
double m_formLength
Definition: WPSPageSpan.h:190
bool operator!=(shared_ptr< WPSPageSpan > const &pageSpan) const
Definition: WPSPageSpan.h:171
Definition: WPSPageSpan.h:52
Definition: WPSPageSpan.h:51
WPXString getPageNumberingFontName() const
Definition: WPSPageSpan.h:102
void setMarginRight(const double marginRight)
Definition: WPSPageSpan.h:133
Definition: WPSPageSpan.h:46
WPSPageSpan()
Definition: WPSPageSpan.cpp:86
PageNumberPosition
Definition: WPSPageSpan.h:51
double getFormLength() const
Definition: WPSPageSpan.h:58
int getPageSpan() const
Definition: WPSPageSpan.h:106
double getMarginTop() const
Definition: WPSPageSpan.h:78
int getPageNumber() const
Definition: WPSPageSpan.h:90
double getFormWidth() const
Definition: WPSPageSpan.h:62
void _insertPageNumberParagraph(WPXDocumentInterface *documentInterface)
Definition: WPSPageSpan.cpp:305
int m_pageNumber
Definition: WPSPageSpan.h:195
double m_pageNumberingFontSize
Definition: WPSPageSpan.h:198
Definition: WPSPageSpan.h:48
double getMarginBottom() const
Definition: WPSPageSpan.h:82
Definition: WPSPageSpan.h:49
Definition: WPSContentListener.h:168
double getMarginRight() const
Definition: WPSPageSpan.h:74
void setPageNumberingFontName(const WPXString &pageNumberingFontName)
Definition: WPSPageSpan.h:161
shared_ptr< HeaderFooter > HeaderFooterPtr
Definition: WPSPageSpan.h:38
const std::vector< WPSPageSpanInternal::HeaderFooterPtr > & getHeaderFooterList() const
Definition: WPSPageSpan.h:110
Definition: WPSPageSpan.h:51
void setPageNumberingFontSize(const double pageNumberingFontSize)
Definition: WPSPageSpan.h:157
Basic class used to store a sub document.
Definition: WPSSubDocument.h:33
void setPageNumberingType(const libwps::NumberingType pageNumberingType)
Definition: WPSPageSpan.h:153
void setFormWidth(const double formWidth)
Definition: WPSPageSpan.h:121
Definition: WPSPageSpan.h:48
void setPageNumberPosition(const PageNumberPosition pageNumberPosition)
Definition: WPSPageSpan.h:145
int _getHeaderFooterPosition(HeaderFooterType type, HeaderFooterOccurence occurence)
Definition: WPSPageSpan.cpp:377
std::vector< WPSPageSpanInternal::HeaderFooterPtr > m_headerFooterList
Definition: WPSPageSpan.h:199
double getPageNumberingFontSize() const
Definition: WPSPageSpan.h:98
Definition: WPSPageSpan.cpp:35
WPXString m_pageNumberingFontName
Definition: WPSPageSpan.h:197
Definition: WPSPageSpan.h:52
double m_marginLeft
Definition: WPSPageSpan.h:192
PageNumberPosition getPageNumberPosition() const
Definition: WPSPageSpan.h:86
FormOrientation getFormOrientation() const
Definition: WPSPageSpan.h:66
void setPageNumber(const int pageNumber)
Definition: WPSPageSpan.h:149
HeaderFooterOccurence
Definition: WPSPageSpan.h:49
FormOrientation
Definition: WPSPageSpan.h:46
PageNumberPosition m_pageNumberPosition
Definition: WPSPageSpan.h:194
void setMarginBottom(const double marginBottom)
Definition: WPSPageSpan.h:141
Definition: WPSPageSpan.h:49
void setMarginTop(const double marginTop)
Definition: WPSPageSpan.h:137
int m_pageSpan
Definition: WPSPageSpan.h:201
shared_ptr< WPSSubDocument > WPSSubDocumentPtr
Definition: WPSContentListener.h:44
Definition: WPSPageSpan.h:52
NumberingType
Definition: libwps_internal.h:263
void _removeHeaderFooter(HeaderFooterType type, HeaderFooterOccurence occurence)
Definition: WPSPageSpan.cpp:362
void setFormOrientation(const FormOrientation formOrientation)
Definition: WPSPageSpan.h:125
Definition: WPSPageSpan.h:49
Definition: WPSPageSpan.h:52
Definition: WPSPageSpan.h:49
HeaderFooterType
Definition: WPSPageSpan.h:48
Definition: WPSPageSpan.h:51
void _setHeaderFooter(HeaderFooterType type, HeaderFooterOccurence occurence, WPSSubDocumentPtr &doc)
Definition: WPSPageSpan.cpp:353
libwps::NumberingType getPageNumberingType() const
Definition: WPSPageSpan.h:94
double m_marginRight
Definition: WPSPageSpan.h:192
Definition: WPSPageSpan.h:51
Definition: WPSPageSpan.h:51
bool _containsHeaderFooter(HeaderFooterType type, HeaderFooterOccurence occurence)
Definition: WPSPageSpan.cpp:369
void setMarginLeft(const double marginLeft)
Definition: WPSPageSpan.h:129
void setFormLength(const double formLength)
Definition: WPSPageSpan.h:117
Definition: WPSPageSpan.h:42
Definition: WPSPageSpan.h:51
double m_formWidth
Definition: WPSPageSpan.h:190
double m_marginTop
Definition: WPSPageSpan.h:193
Definition: WPSPageSpan.h:46
Definition: WPSPageSpan.h:52
void sendHeaderFooters(WPSContentListener *listener, WPXDocumentInterface *documentInterface)
Definition: WPSPageSpan.cpp:150
FormOrientation m_formOrientation
Definition: WPSPageSpan.h:191
bool operator==(shared_ptr< WPSPageSpan > const &pageSpan) const
Definition: WPSPageSpan.cpp:246
double getMarginLeft() const
Definition: WPSPageSpan.h:70
double m_marginBottom
Definition: WPSPageSpan.h:193
libwps::NumberingType m_pageNumberingType
Definition: WPSPageSpan.h:196
void setPageSpan(const int pageSpan)
Definition: WPSPageSpan.h:165
void getPageProperty(WPXPropertyList &pList) const
Definition: WPSPageSpan.cpp:229

Generated on Wed Jun 11 2014 02:26:01 for libwps by doxygen 1.8.5