LibreOffice Module lotuswordpro (master) 1
lwpbreaksoverride.cxx
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* Breaks override of Wordpro.
59************************************************************************/
60#include <memory>
61
62#include "clone.hxx"
63#include "lwpbreaksoverride.hxx"
64#include <lwpobjstrm.hxx>
65#include <lwpatomholder.hxx>
66
68 : m_pNextStyle(new LwpAtomHolder)
69{
70}
71
73 : LwpOverride(rOther)
74 , m_pNextStyle(::clone(rOther.m_pNextStyle.get()))
75{
76}
77
79
81
83{
84 if (pStrm->QuickReadBool())
85 {
86 ReadCommon(pStrm);
87
88 m_pNextStyle->Read(pStrm);
89 }
90
91 pStrm->SkipExtra();
92}
93
95{
97 {
99 {
101 }
102 else
103 {
104 pOther->RevertPageBreakBefore();
105 }
106 }
108 {
110 {
112 }
113 else
114 {
115 pOther->RevertPageBreakAfter();
116 }
117 }
119 {
121 {
123 }
124 else
125 {
126 pOther->RevertPageBreakWithin();
127 }
128 }
130 {
132 {
134 }
135 else
136 {
137 pOther->RevertColumnBreakBefore();
138 }
139 }
140 if (m_nApply & BO_COLAFTER)
141 {
143 {
145 }
146 else
147 {
148 pOther->RevertColumnBreakAfter();
149 }
150 }
151 if (m_nApply & BO_KEEPPREV)
152 {
154 {
156 }
157 else
158 {
159 pOther->RevertKeepWithPrevious();
160 }
161 }
162 if (m_nApply & BO_KEEPNEXT)
163 {
165 {
167 }
168 else
169 {
170 pOther->RevertKeepWithNext();
171 }
172 }
174 {
176 {
178 }
179 else
180 {
181 pOther->RevertUseNextStyle();
182 }
183 }
184}
185
187{
188 if (bVal)
189 {
191 }
192 else
193 {
195 }
196}
198{
199 if (bVal)
200 {
202 }
203 else
204 {
206 }
207}
209{
210 // Note the flipped logic
211 if (!bVal)
212 {
214 }
215 else
216 {
218 }
219}
221{
222 if (bVal)
223 {
225 }
226 else
227 {
229 }
230}
232{
233 if (bVal)
234 {
236 }
237 else
238 {
240 }
241}
243{
244 if (bVal)
245 {
247 }
248 else
249 {
251 }
252}
254{
255 if (bVal)
256 {
258 }
259 else
260 {
262 }
263}
265{
266 if (bVal)
267 {
269 }
270 else
271 {
273 }
274}
275
276/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
AtomHolder class of Word Pro to hold a string.
void OverrideKeepWithPrevious(bool bVal)
void OverridePageBreakBefore(bool bVal)
bool IsKeepWithNextOverridden() const
void OverrideColumnBreakAfter(bool bVal)
bool IsUseNextStyleOverridden() const
bool IsPageBreakBeforeOverridden() const
virtual LwpBreaksOverride * clone() const override
void OverrideColumnBreakBefore(bool bVal)
bool IsPageBreakAfter() const
void OverrideKeepWithNext(bool bVal)
void OverrideUseNextStyle(bool bVal)
bool IsPageBreakWithinOverridden() const
std::unique_ptr< LwpAtomHolder > m_pNextStyle
bool IsKeepWithNext() const
bool IsKeepWithPreviousOverridden() const
bool IsPageBreakWithin() const
void Override(LwpBreaksOverride *pOther)
bool IsColumnBreakBefore() const
bool IsColumnBreakAfter() const
void OverridePageBreakWithin(bool bVal)
bool IsColumnBreakAfterOverridden() const
bool IsPageBreakAfterOverridden() const
bool IsPageBreakBefore() const
virtual void Read(LwpObjectStream *pStrm) override
bool IsKeepWithPrevious() const
virtual ~LwpBreaksOverride() override
void OverridePageBreakAfter(bool bVal)
bool IsUseNextStyle() const
bool IsColumnBreakBeforeOverridden() const
stream class for LwpObject body data provide stream like interface to read object data
Definition: lwpobjstrm.hxx:77
void SkipExtra()
@descr skip extra bytes
Definition: lwpobjstrm.cxx:258
bool QuickReadBool()
@descr Quick read sal_Bool
Definition: lwpobjstrm.cxx:180
void Override(sal_uInt16 nBits, STATE eState)
Definition: lwpoverride.cxx:92
void ReadCommon(LwpObjectStream *pStrm)
Definition: lwpoverride.cxx:77
sal_uInt16 m_nApply
T * clone(T *const other)
Creates a new copy of the passed object.
Definition: clone.hxx:64
@ STATE_ON
Definition: lwpoverride.hxx:74
@ STATE_OFF
Definition: lwpoverride.hxx:73
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)