LibreOffice Module lotuswordpro (master) 1
lwppiece.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*************************************************************************
3 *
4 * The Contents of this file are made available subject to the terms of
5 * either of the following licenses
6 *
7 * - GNU Lesser General Public License Version 2.1
8 * - Sun Industry Standards Source License Version 1.1
9 *
10 * Sun Microsystems Inc., October, 2000
11 *
12 * GNU Lesser General Public License Version 2.1
13 * =============================================
14 * Copyright 2000 by Sun Microsystems, Inc.
15 * 901 San Antonio Road, Palo Alto, CA 94303, USA
16 *
17 * This library is free software; you can redistribute it and/or
18 * modify it under the terms of the GNU Lesser General Public
19 * License version 2.1, as published by the Free Software Foundation.
20 *
21 * This library is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 * Lesser General Public License for more details.
25 *
26 * You should have received a copy of the GNU Lesser General Public
27 * License along with this library; if not, write to the Free Software
28 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
29 * MA 02111-1307 USA
30 *
31 *
32 * Sun Industry Standards Source License Version 1.1
33 * =================================================
34 * The contents of this file are subject to the Sun Industry Standards
35 * Source License Version 1.1 (the "License"); You may not use this file
36 * except in compliance with the License. You may obtain a copy of the
37 * License at http://www.openoffice.org/license.html.
38 *
39 * Software provided under this License is provided on an "AS IS" basis,
40 * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
41 * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
42 * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
43 * See the License for the specific provisions governing your rights and
44 * obligations concerning the Software.
45 *
46 * The Initial Developer of the Original Code is: IBM Corporation
47 *
48 * Copyright: 2008 by IBM Corporation
49 *
50 * All Rights Reserved.
51 *
52 * Contributor(s): _______________________________________
53 *
54 *
55 ************************************************************************/
56/*************************************************************************
57 * @file
58 * For LWP filter architecture prototype
59 ************************************************************************/
60
61#ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPPIECE_HXX
62#define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPPIECE_HXX
63
64#include <lwpoverride.hxx>
65#include "lwpdlvlist.hxx"
66#include "lwpbreaksoverride.hxx"
71#include "lwptaboverride.hxx"
72
73class LwpOverride;
74class LwpDLVList;
75
77{
78public:
79 LwpVirtualPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpDLVList(objHdr, pStrm)
80 {
81 }
82
83 virtual void Read() override
84 {
86 if( m_pOverride )
87 m_pOverride->Read(m_pObjStrm.get());
88 }
89
91 {
92 return m_pOverride.get();
93 }
94protected:
95 virtual ~LwpVirtualPiece() override
96 {
97 }
98
99 std::unique_ptr<LwpOverride> m_pOverride;
100};
101
103{
104public:
105 LwpParaBorderPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
106 {
108 }
109
110private:
111 virtual ~LwpParaBorderPiece() override {}
112};
113
115{
116public:
117 LwpBreaksPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
118 {
119 m_pOverride.reset(new LwpBreaksOverride());
120 }
121
122private:
123 virtual ~LwpBreaksPiece() override {}
124};
125
127{
128public:
129 LwpNumberingPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
130 {
132 }
133
134private:
135 virtual ~LwpNumberingPiece() override {}
136};
137
139{
140public:
141 LwpTabPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
142 {
143 m_pOverride.reset(new LwpTabOverride());
144 }
145
146private:
147 virtual ~LwpTabPiece() override {}
148};
149
151{
152public:
153 LwpBackgroundPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
154 {
156 }
157
158private:
159 virtual ~LwpBackgroundPiece() override {}
160};
161
163{
164public:
165 LwpAlignmentPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
166 {
168 }
169
170private:
171 virtual ~LwpAlignmentPiece() override {}
172};
173
175{
176public:
177 LwpIndentPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
178 {
179 m_pOverride.reset(new LwpIndentOverride());
180 }
181
182private:
183 virtual ~LwpIndentPiece() override {}
184};
185
187{
188public:
189 LwpSpacingPiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
190 {
191 m_pOverride.reset(new LwpSpacingOverride());
192 }
193
194private:
195 virtual ~LwpSpacingPiece() override {}
196};
197
199{
200public:
201 LwpAmikakePiece(LwpObjectHeader const & objHdr, LwpSvStream* pStrm):LwpVirtualPiece(objHdr, pStrm)
202 {
203 m_pOverride.reset(new LwpAmikakeOverride());
204 }
205
206private:
207 virtual ~LwpAmikakePiece() override {}
208};
209
211{
212public:
214 {
216 }
217
218private:
219 virtual ~LwpCharacterBorderPiece() override {}
220};
221
222#endif
223/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
virtual ~LwpAlignmentPiece() override
Definition: lwppiece.hxx:171
LwpAlignmentPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:165
virtual ~LwpAmikakePiece() override
Definition: lwppiece.hxx:207
LwpAmikakePiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:201
virtual ~LwpBackgroundPiece() override
Definition: lwppiece.hxx:159
LwpBackgroundPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:153
virtual ~LwpBreaksPiece() override
Definition: lwppiece.hxx:123
LwpBreaksPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:117
virtual ~LwpCharacterBorderPiece() override
Definition: lwppiece.hxx:219
LwpCharacterBorderPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:213
Double Linked Virtual List.
Definition: lwpdlvlist.hxx:72
void Read() override
@descr Read LwpDLVList data from object stream
Definition: lwpdlvlist.cxx:72
virtual ~LwpIndentPiece() override
Definition: lwppiece.hxx:183
LwpIndentPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:177
virtual ~LwpNumberingPiece() override
Definition: lwppiece.hxx:135
LwpNumberingPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:129
Base class of all Lwp VO objects.
Definition: lwpobjhdr.hxx:71
std::unique_ptr< LwpObjectStream > m_pObjStrm
Definition: lwpobj.hxx:90
virtual ~LwpParaBorderPiece() override
Definition: lwppiece.hxx:111
LwpParaBorderPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:105
LwpSpacingPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:189
virtual ~LwpSpacingPiece() override
Definition: lwppiece.hxx:195
encapsulate XInputStream to provide SvStream like interfaces
Definition: lwpsvstream.hxx:69
LwpTabPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:141
virtual ~LwpTabPiece() override
Definition: lwppiece.hxx:147
LwpOverride * GetOverride()
Definition: lwppiece.hxx:90
LwpVirtualPiece(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwppiece.hxx:79
virtual ~LwpVirtualPiece() override
Definition: lwppiece.hxx:95
std::unique_ptr< LwpOverride > m_pOverride
Definition: lwppiece.hxx:99
virtual void Read() override
@descr Read LwpDLVList data from object stream
Definition: lwppiece.hxx:83