LibreOffice Module sw (master)  1
SwUndoFmt.cxx
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 
20 #include <poolfmt.hxx>
21 #include <charfmt.hxx>
22 #include <frmfmt.hxx>
23 #include <SwUndoFmt.hxx>
24 #include <SwRewriter.hxx>
25 #include <swundo.hxx>
26 #include <undobj.hxx>
27 #include <fmtcol.hxx>
28 #include <doc.hxx>
29 #include <IDocumentUndoRedo.hxx>
30 #include <strings.hrc>
31 
33 (SwUndoId nUndoId, SwFormat * _pNew, SwFormat const * _pDerivedFrom, SwDoc * _pDoc)
34  : SwUndo(nUndoId, _pDoc), pNew(_pNew),
35  pDoc(_pDoc), pNewSet(nullptr), nId(0), bAuto(false)
36 {
37  if (_pDerivedFrom)
38  sDerivedFrom = _pDerivedFrom->GetName();
39 }
40 
42 {
43 }
44 
46 {
47  if (pNew)
48  {
49  if (sNewName.isEmpty())
50  sNewName = pNew->GetName();
51 
52  if (!sNewName.isEmpty())
53  pNew = Find(sNewName);
54 
55  if (pNew)
56  {
59  bAuto = pNew->IsAuto();
60 
61  Delete();
62  }
63  }
64 }
65 
67 {
68  SwFormat * pDerivedFrom = Find(sDerivedFrom);
69  SwFormat * pFormat = Create(pDerivedFrom);
70 
71  if (pFormat && pNewSet)
72  {
73  pFormat->SetAuto(bAuto);
74  pDoc->ChgFormat(*pFormat, *pNewSet);
75  pFormat->SetPoolFormatId((pFormat->GetPoolFormatId()
77  | nId);
78 
79  pNew = pFormat;
80  }
81  else
82  pNew = nullptr;
83 }
84 
86 {
87  if (sNewName.isEmpty() && pNew)
88  sNewName = pNew->GetName();
89 
90  SwRewriter aRewriter;
91 
92  aRewriter.AddRule(UndoArg1, sNewName);
93 
94  return aRewriter;
95 }
96 
98 (SwUndoId nUndoId, SwFormat const * _pOld, SwDoc * _pDoc)
99  : SwUndo(nUndoId, _pDoc),
100  pDoc(_pDoc), sOldName(_pOld->GetName()),
101  aOldSet(_pOld->GetAttrSet())
102 {
103  sDerivedFrom = _pOld->DerivedFrom()->GetName();
105  bAuto = _pOld->IsAuto();
106 }
107 
109 {
110 }
111 
113 {
114  SwFormat * pDerivedFrom = Find(sDerivedFrom);
115 
116  SwFormat * pFormat = Create(pDerivedFrom);
117 
118  if (pFormat)
119  {
120  pDoc->ChgFormat(*pFormat, aOldSet);
121  pFormat->SetAuto(bAuto);
122  pFormat->SetPoolFormatId((pFormat->GetPoolFormatId() &
124  | nId);
125  }
126 }
127 
129 {
130  SwFormat * pOld = Find(sOldName);
131 
132  if (pOld)
133  {
134  Delete(pOld);
135  }
136 }
137 
139 {
140  SwRewriter aRewriter;
141 
142  aRewriter.AddRule(UndoArg1, sOldName);
143 
144  return aRewriter;
145 }
146 
148  const OUString & _sOldName,
149  const OUString & _sNewName,
150  SwDoc * _pDoc)
151  : SwUndo(nUndoId, _pDoc), sOldName(_sOldName),
152  sNewName(_sNewName), pDoc(_pDoc)
153 {
154 }
155 
157 {
158 }
159 
161 {
162  SwFormat * pFormat = Find(sNewName);
163 
164  if (pFormat)
165  {
166  pDoc->RenameFormat(*pFormat, sOldName, true);
167  }
168 }
169 
171 {
172  SwFormat * pFormat = Find(sOldName);
173 
174  if (pFormat)
175  {
176  pDoc->RenameFormat(*pFormat, sNewName, true);
177  }
178 }
179 
181 {
182  SwRewriter aRewriter;
183 
184  aRewriter.AddRule(UndoArg1, sOldName);
185  aRewriter.AddRule(UndoArg2, SwResId(STR_YIELDS));
186  aRewriter.AddRule(UndoArg3, sNewName);
187 
188  return aRewriter;
189 }
190 
192 (SwTextFormatColl * _pNew, SwTextFormatColl const * _pDerivedFrom, SwDoc * _pDoc)
193  : SwUndoFormatCreate(SwUndoId::TXTFMTCOL_CREATE, _pNew, _pDerivedFrom, _pDoc)
194 {
195 }
196 
198 {
199  return pDoc->MakeTextFormatColl(sNewName, static_cast<SwTextFormatColl *>(pDerivedFrom), true);
200 }
201 
203 {
204  pDoc->DelTextFormatColl(static_cast<SwTextFormatColl *>(pNew), true);
205 }
206 
207 SwFormat * SwUndoTextFormatCollCreate::Find(const OUString & rName) const
208 {
209  return pDoc->FindTextFormatCollByName(rName);
210 }
211 
213  SwDoc * _pDoc)
215 {
216 }
217 
219 {
220  return pDoc->MakeTextFormatColl(sOldName, static_cast<SwTextFormatColl *>(pDerivedFrom), true);
221 }
222 
224 {
225  pDoc->DelTextFormatColl(static_cast<SwTextFormatColl *>(pOld), true);
226 }
227 
228 SwFormat * SwUndoTextFormatCollDelete::Find(const OUString & rName) const
229 {
230  return pDoc->FindTextFormatCollByName(rName);
231 }
232 
234  SwTextFormatColl const *_pDerivedFrom, SwDoc *_pDoc)
235  : SwUndoTextFormatCollCreate(_pNew, _pDerivedFrom, _pDoc)
236 {
237 }
238 
240 {
241  return pDoc->MakeCondTextFormatColl(sNewName, static_cast<SwTextFormatColl *>(pDerivedFrom), true);
242 }
243 
245  SwDoc * _pDoc)
246  : SwUndoTextFormatCollDelete(_pOld, _pDoc)
247 {
248 }
249 
251 {
252  return pDoc->MakeCondTextFormatColl(sOldName, static_cast<SwTextFormatColl *>(pDerivedFrom), true);
253 }
254 
256  const OUString & sInitNewName,
257  SwDoc * _pDoc)
258  : SwUndoRenameFormat(SwUndoId::TXTFMTCOL_RENAME, sInitOldName, sInitNewName, _pDoc)
259 {
260 }
261 
262 SwFormat * SwUndoRenameFormatColl::Find(const OUString & rName) const
263 {
264  return pDoc->FindTextFormatCollByName(rName);
265 }
266 
268  SwCharFormat const * pDerivedFrom,
269  SwDoc * pDocument)
270  : SwUndoFormatCreate(SwUndoId::CHARFMT_CREATE, pNewFormat, pDerivedFrom, pDocument)
271 {
272 }
273 
275 {
276  return pDoc->MakeCharFormat(sNewName, static_cast<SwCharFormat *>(pDerivedFrom), true);
277 }
278 
280 {
281  pDoc->DelCharFormat(static_cast<SwCharFormat *>(pNew), true);
282 }
283 
284 SwFormat * SwUndoCharFormatCreate::Find(const OUString & rName) const
285 {
286  return pDoc->FindCharFormatByName(rName);
287 }
288 
290  : SwUndoFormatDelete(SwUndoId::CHARFMT_DELETE, pOld, pDocument)
291 {
292 }
293 
295 {
296  return pDoc->MakeCharFormat(sOldName, static_cast<SwCharFormat *>(pDerivedFrom), true);
297 }
298 
300 {
301  pDoc->DelCharFormat(static_cast<SwCharFormat *>(pFormat), true);
302 }
303 
304 SwFormat * SwUndoCharFormatDelete::Find(const OUString & rName) const
305 {
306  return pDoc->FindCharFormatByName(rName);
307 }
308 
310  const OUString & sInitNewName,
311  SwDoc * pDocument)
312  : SwUndoRenameFormat(SwUndoId::CHARFMT_RENAME, sInitOldName, sInitNewName, pDocument)
313 {
314 }
315 
316 SwFormat * SwUndoRenameCharFormat::Find(const OUString & rName) const
317 {
318  return pDoc->FindCharFormatByName(rName);
319 }
320 
322  SwFrameFormat const * pDerivedFrom,
323  SwDoc * pDocument)
324  : SwUndoFormatCreate(SwUndoId::FRMFMT_CREATE, pNewFormat, pDerivedFrom, pDocument)
325 {
326 }
327 
329 {
330  return pDoc->MakeFrameFormat(sNewName, static_cast<SwFrameFormat *>(pDerivedFrom), true, pNew->IsAuto());
331 }
332 
334 {
335  pDoc->DelFrameFormat(static_cast<SwFrameFormat *>(pNew), true);
336 }
337 
338 SwFormat * SwUndoFrameFormatCreate::Find(const OUString & rName) const
339 {
340  return pDoc->FindFrameFormatByName(rName);
341 }
342 
344  : SwUndoFormatDelete(SwUndoId::FRMFMT_DELETE, pOld, pDocument)
345 {
346 }
347 
349 {
350  return pDoc->MakeFrameFormat(sOldName, static_cast<SwFrameFormat *>(pDerivedFrom), true);
351 }
352 
354 {
355  pDoc->DelFrameFormat(static_cast<SwFrameFormat *>(pFormat), true);
356 }
357 
358 SwFormat * SwUndoFrameFormatDelete::Find(const OUString & rName) const
359 {
360  return pDoc->FindFrameFormatByName(rName);
361 }
362 
364  const OUString & sInitNewName,
365  SwDoc * pDocument)
366  : SwUndoRenameFormat(SwUndoId::FRMFMT_RENAME, sInitOldName, sInitNewName, pDocument)
367 {
368 }
369 
370 SwFormat * SwUndoRenameFrameFormat::Find(const OUString & rName) const
371 {
372  return pDoc->FindFrameFormatByName(rName);
373 }
374 
376  SwDoc * _pDoc)
377  : SwUndo(SwUndoId::NUMRULE_CREATE, _pDoc), pNew(_pNew), aNew(*_pNew), pDoc(_pDoc),
378  bInitialized(false)
379 {
380 }
381 
383 {
384  if (! bInitialized)
385  {
386  aNew = *pNew;
387  bInitialized = true;
388  }
389 
390  pDoc->DelNumRule(aNew.GetName(), true);
391 }
392 
394 {
395  pDoc->MakeNumRule(aNew.GetName(), &aNew, true);
396 }
397 
399 {
400  SwRewriter aResult;
401 
402  if (! bInitialized)
403  {
404  aNew = *pNew;
405  bInitialized = true;
406  }
407 
408  aResult.AddRule(UndoArg1, aNew.GetName());
409 
410  return aResult;
411 }
412 
414  SwDoc * _pDoc)
415  : SwUndo(SwUndoId::NUMRULE_DELETE, _pDoc), aOld(rRule), pDoc(_pDoc)
416 {
417 }
418 
420 {
421  pDoc->MakeNumRule(aOld.GetName(), &aOld, true);
422 }
423 
425 {
426  pDoc->DelNumRule(aOld.GetName(), true);
427 }
428 
430 {
431  SwRewriter aResult;
432 
433  aResult.AddRule(UndoArg1, aOld.GetName());
434 
435  return aResult;
436 }
437 
438 SwUndoNumruleRename::SwUndoNumruleRename(const OUString & _aOldName,
439  const OUString & _aNewName,
440  SwDoc * _pDoc)
441  : SwUndo(SwUndoId::NUMRULE_RENAME, _pDoc), aOldName(_aOldName), aNewName(_aNewName),
442  pDoc(_pDoc)
443 {
444 }
445 
447 {
449 }
450 
452 {
454 }
455 
457 {
458  SwRewriter aRewriter;
459 
460  aRewriter.AddRule(UndoArg1, aOldName);
461  aRewriter.AddRule(UndoArg2, SwResId(STR_YIELDS));
462  aRewriter.AddRule(UndoArg3, aNewName);
463 
464  return aRewriter;
465 }
466 
467 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SwTextFormatColl * MakeTextFormatColl(const OUString &rFormatName, SwTextFormatColl *pDerivedFrom, bool bBroadcast=false)
Create the FormatCollections.
Definition: docfmt.cxx:901
OUString sDerivedFrom
Definition: SwUndoFmt.hxx:36
virtual ~SwUndoFormatCreate() override
Definition: SwUndoFmt.cxx:41
virtual void Delete(SwFormat *pFormat) override
Definition: SwUndoFmt.cxx:353
sal_uInt16 nId
Definition: SwUndoFmt.hxx:40
Represents the style of a paragraph.
Definition: fmtcol.hxx:55
virtual void UndoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:160
SwUndoNumruleDelete(const SwNumRule &aRule, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:413
SwCharFormat * MakeCharFormat(const OUString &rFormatName, SwCharFormat *pDerivedFrom, bool bBroadcast=false)
Definition: docfmt.cxx:867
SwUndoId
Definition: swundo.hxx:29
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:370
virtual void RedoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:128
SwUndoFrameFormatDelete(SwFrameFormat const *pOld, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:343
const sal_uInt16 COLL_GET_RANGE_BITS
Definition: poolfmt.hxx:72
SwTextFormatColl * FindTextFormatCollByName(const OUString &rName) const
Definition: doc.hxx:794
virtual void RedoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:170
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:239
SwFrameFormat * MakeFrameFormat(const OUString &rFormatName, SwFrameFormat *pDerivedFrom, bool bBroadcast=false, bool bAuto=true)
Definition: docfmt.cxx:833
Definition: doc.hxx:185
sal_Int16 nId
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:218
const OUString & GetName() const
Definition: numrule.hxx:222
virtual void Delete(SwFormat *pFormat) override
Definition: SwUndoFmt.cxx:223
void RenameFormat(SwFormat &rFormat, const OUString &sNewName, bool bBroadcast=false)
Definition: docfmt.cxx:1910
SwUndoFrameFormatCreate(SwFrameFormat *pNew, SwFrameFormat const *pDerivedFrom, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:321
SwUndoFormatDelete(SwUndoId nUndoId, SwFormat const *pOld, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:98
SwFormat * pNew
Definition: SwUndoFmt.hxx:35
void DelCharFormat(size_t nFormat, bool bBroadcast=false)
Delete the formats.
Definition: docfmt.cxx:688
void SetPoolFormatId(sal_uInt16 nId)
Definition: format.hxx:144
virtual void Delete()=0
SfxItemSet const aOldSet
Definition: SwUndoFmt.hxx:64
virtual void Delete(SwFormat *pFormat)=0
virtual ~SwUndoRenameFormat() override
Definition: SwUndoFmt.cxx:156
const OUString & GetName() const
Definition: format.hxx:111
virtual SwFormat * Create(SwFormat *pDerivedFrom)=0
const SwNumRule * pNew
Definition: SwUndoFmt.hxx:211
SwUndoTextFormatCollDelete(SwTextFormatColl const *pOld, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:212
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:338
bool RenameNumRule(const OUString &aOldName, const OUString &aNewName, bool bBroadcast=false)
Definition: docnum.cxx:1115
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:250
sal_uInt16 GetPoolFormatId() const
Get and set Pool style IDs.
Definition: format.hxx:143
SwUndoCondTextFormatCollCreate(SwConditionTextFormatColl *pNew, SwTextFormatColl const *pDerivedFrom, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:233
SwFrameFormat * FindFrameFormatByName(const OUString &rName) const
Definition: doc.hxx:759
Base class for various Writer styles.
Definition: format.hxx:43
SwUndoRenameFormatColl(const OUString &sOldName, const OUString &sNewName, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:255
void DelTextFormatColl(size_t nFormat, bool bBroadcast=false)
Definition: docfmt.cxx:972
SwUndoNumruleCreate(const SwNumRule *pNew, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:375
virtual void RedoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:393
SwRewriter GetRewriter() const override
Returns the rewriter for this object.
Definition: SwUndoFmt.cxx:456
Style of a layout element.
Definition: frmfmt.hxx:57
SwUndoCharFormatCreate(SwCharFormat *pNew, SwCharFormat const *pDerivedFrom, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:267
OUString const sOldName
Definition: SwUndoFmt.hxx:63
virtual void UndoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:419
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:274
virtual void RedoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:451
virtual void UndoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:112
void SetAuto(bool bNew)
Definition: format.hxx:159
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:316
SwRewriter GetRewriter() const override
Returns the rewriter for this object.
Definition: SwUndoFmt.cxx:180
SwUndoNumruleRename(const OUString &aOldName, const OUString &aNewName, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:438
virtual void RedoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:424
void AddRule(SwUndoArg eWhat, const OUString &rWith)
Definition: SwRewriter.cxx:29
virtual SwFormat * Find(const OUString &rName) const =0
virtual void Delete() override
Definition: SwUndoFmt.cxx:279
OUString SwResId(const char *pId)
Definition: swmodule.cxx:191
virtual void RedoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:66
virtual void Delete() override
Definition: SwUndoFmt.cxx:202
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:348
virtual SwFormat * Find(const OUString &rName) const =0
virtual void UndoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:446
SwUndoFormatCreate(SwUndoId nUndoId, SwFormat *pNew, SwFormat const *pDerivedFrom, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:33
SwCharFormat * FindCharFormatByName(const OUString &rName) const
Definition: doc.hxx:766
SwFormat * DerivedFrom() const
Definition: format.hxx:108
SwUndoRenameFormat(SwUndoId nUndoId, const OUString &sOldName, const OUString &sNewName, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:147
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:284
SwUndoCondTextFormatCollDelete(SwTextFormatColl const *pOld, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:244
SwUndoRenameCharFormat(const OUString &sOldName, const OUString &sNewName, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:309
virtual void UndoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:382
virtual ~SwUndoFormatDelete() override
Definition: SwUndoFmt.cxx:108
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:328
SwConditionTextFormatColl * MakeCondTextFormatColl(const OUString &rFormatName, SwTextFormatColl *pDerivedFrom, bool bBroadcast=false)
Definition: docfmt.cxx:935
OUString sDerivedFrom
Definition: SwUndoFmt.hxx:61
SwRewriter GetRewriter() const override
Returns the rewriter for this object.
Definition: SwUndoFmt.cxx:429
sal_uInt16 MakeNumRule(const OUString &rName, const SwNumRule *pCpy=nullptr, bool bBroadcast=false, const SvxNumberFormat::SvxNumPositionAndSpaceMode eDefaultNumberFormatPositionAndSpaceMode=SvxNumberFormat::LABEL_WIDTH_AND_POSITION)
Definition: docnum.cxx:2457
SwUndoCharFormatDelete(SwCharFormat const *pOld, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:289
void ChgFormat(SwFormat &rFormat, const SfxItemSet &rSet)
Definition: docfmt.cxx:1875
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:294
virtual void UndoImpl(::sw::UndoRedoContext &) override
Definition: SwUndoFmt.cxx:45
void DelFrameFormat(SwFrameFormat *pFormat, bool bBroadcast=false)
Definition: docfmt.cxx:715
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:358
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:207
virtual void Delete() override
Definition: SwUndoFmt.cxx:333
SwUndoRenameFrameFormat(const OUString &sOldName, const OUString &sNewName, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:363
bool DelNumRule(const OUString &rName, bool bBroadCast=false)
Definition: docnum.cxx:1053
const SwAttrSet & GetAttrSet() const
For querying the attribute array.
Definition: format.hxx:116
virtual SwRewriter GetRewriter() const override
Returns the rewriter for this object.
Definition: SwUndoFmt.cxx:85
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:304
SwUndoTextFormatCollCreate(SwTextFormatColl *pNew, SwTextFormatColl const *pDerivedFrom, SwDoc *pDoc)
Definition: SwUndoFmt.cxx:192
virtual void Delete(SwFormat *pFormat) override
Definition: SwUndoFmt.cxx:299
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:228
virtual SwRewriter GetRewriter() const override
Returns the rewriter for this object.
Definition: SwUndoFmt.cxx:138
virtual SwFormat * Find(const OUString &rName) const =0
bool IsAuto() const
Query / set AutoFormat-flag.
Definition: format.hxx:158
virtual SwFormat * Create(SwFormat *pDerivedFrom)=0
SfxItemSet * pNewSet
Definition: SwUndoFmt.hxx:39
SwRewriter GetRewriter() const override
Returns the rewriter for this object.
Definition: SwUndoFmt.cxx:398
virtual SwFormat * Create(SwFormat *pDerivedFrom) override
Definition: SwUndoFmt.cxx:197
virtual SwFormat * Find(const OUString &rName) const override
Definition: SwUndoFmt.cxx:262
sal_uInt16 nId
Definition: SwUndoFmt.hxx:65