LibreOffice Module sw (master)  1
rolbck.hxx
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 #ifndef INCLUDED_SW_SOURCE_CORE_INC_ROLBCK_HXX
20 #define INCLUDED_SW_SOURCE_CORE_INC_ROLBCK_HXX
21 
22 #include <o3tl/deleter.hxx>
23 #include <o3tl/sorted_vector.hxx>
24 #include <svl/itemset.hxx>
25 #include <tools/solar.h>
26 #include <vcl/keycod.hxx>
27 #include <tox.hxx>
28 
29 #include <IDocumentMarkAccess.hxx>
30 
31 #include <memory>
32 #include <vector>
33 
34 namespace sfx2 {
35  class MetadatableUndo;
36 }
37 
38 class SwDoc;
39 class SwFormatColl;
40 class SwTextAttr;
41 class SfxPoolItem;
42 class SwUndoSaveSection;
43 class SwTextFootnote;
44 class SwUndoDelLayFormat;
45 class SwFlyFrameFormat;
46 class SwFormatField;
47 class SwTextField;
48 class SwFieldType;
49 class SwTextTOXMark;
50 class SwTextRefMark;
51 class SwFrameFormat;
52 class SwpHints;
53 class SwFormatChain;
54 class SwNode;
55 class SwCharFormat;
56 enum class SwFieldIds : sal_uInt16;
57 typedef struct _xmlTextWriter* xmlTextWriterPtr;
58 
77 };
78 
80 {
82 
83 public:
84  SwHistoryHint( HISTORY_HINT eWhich ) : m_eWhichId( eWhich ) {}
85  virtual ~SwHistoryHint() {}
86  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) = 0;
87  HISTORY_HINT Which() const { return m_eWhichId; }
88  virtual OUString GetDescription() const;
89  virtual void dumpAsXml(xmlTextWriterPtr pWriter) const;
90 };
91 
93 {
94  std::unique_ptr<SfxPoolItem> m_pAttr;
96 
97 public:
98  SwHistorySetFormat( const SfxPoolItem* pFormatHt, sal_uLong nNode );
99  virtual ~SwHistorySetFormat() override;
100  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
101  virtual OUString GetDescription() const override;
102 
103  void dumpAsXml(xmlTextWriterPtr pWriter) const override;
104 };
105 
107 {
109  const sal_uInt16 m_nWhich;
110 
111 public:
112  SwHistoryResetFormat( const SfxPoolItem* pFormatHt, sal_uLong nNodeIdx );
113  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
114 
115 };
116 
118 {
119  std::unique_ptr<SfxPoolItem> m_pAttr;
121  const sal_Int32 m_nStart;
122  const sal_Int32 m_nEnd;
125 
126 public:
127  SwHistorySetText( SwTextAttr* pTextHt, sal_uLong nNode );
128  virtual ~SwHistorySetText() override;
129  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
130 
131 };
132 
134 {
137  std::unique_ptr<SwFieldType> m_pFieldType;
138  const std::unique_ptr<SwFormatField> m_pField;
139 
141  sal_Int32 m_nPos;
143 
144 public:
145  SwHistorySetTextField( const SwTextField* pTextField, sal_uLong nNode );
146  virtual ~SwHistorySetTextField() override;
147  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
148 
149  virtual OUString GetDescription() const override;
150 
151 };
152 
154 {
155  const OUString m_RefName;
157  const sal_Int32 m_nStart;
158  const sal_Int32 m_nEnd;
159 
160 public:
161  SwHistorySetRefMark( const SwTextRefMark* pTextHt, sal_uLong nNode );
162  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
163 
164 };
165 
167 {
169  const OUString m_TOXName;
172  const sal_Int32 m_nStart;
173  const sal_Int32 m_nEnd;
174 
175 public:
176  SwHistorySetTOXMark( const SwTextTOXMark* pTextHt, sal_uLong nNode );
177  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
178  bool IsEqual( const SwTOXMark& rCmp ) const;
179 
180  static SwTOXType* GetSwTOXType(SwDoc& rDoc, TOXTypes eTOXTypes, const OUString& rTOXName);
181 };
182 
184 {
186  const sal_Int32 m_nStart;
187  const sal_Int32 m_nEnd;
188  const sal_uInt16 m_nAttr;
189 
190 public:
191  SwHistoryResetText( sal_uInt16 nWhich, sal_Int32 nStt, sal_Int32 nEnd,
192  sal_uLong nNode );
193  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
194 
195  sal_uInt16 GetWhich() const { return m_nAttr; }
196  sal_uLong GetNode() const { return m_nNodeIndex; }
197  sal_Int32 GetContent() const { return m_nStart; }
198 
199 };
200 
202 {
203  const std::unique_ptr<SwUndoSaveSection, o3tl::default_delete<SwUndoSaveSection>> m_pUndo;
204  const OUString m_FootnoteNumber;
206  const sal_Int32 m_nStart;
207  const bool m_bEndNote;
208 
209 public:
210  SwHistorySetFootnote( SwTextFootnote* pTextFootnote, sal_uLong nNode );
212  virtual ~SwHistorySetFootnote() override;
213  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
214 
215  virtual OUString GetDescription() const override;
216 
217 };
218 
220 {
224 
225 public:
226  SwHistoryChangeFormatColl( SwFormatColl* pColl, sal_uLong nNode, SwNodeType nNodeWhich );
227  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
228 
229 };
230 
232 {
233  std::unique_ptr<SwUndoDelLayFormat> m_pUndo;
234 
235 public:
236  SwHistoryTextFlyCnt( SwFrameFormat* const pFlyFormat );
237  virtual ~SwHistoryTextFlyCnt() override;
238  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
239  SwUndoDelLayFormat* GetUDelLFormat() { return m_pUndo.get(); }
240 
241  void dumpAsXml(xmlTextWriterPtr pWriter) const override;
242 };
243 
245 {
246  public:
247  SwHistoryBookmark(const ::sw::mark::IMark& rBkmk,
248  bool bSavePos, bool bSaveOtherPos);
249  virtual void SetInDoc(SwDoc * pDoc, bool) override;
250 
251  bool IsEqualBookmark(const ::sw::mark::IMark& rBkmk);
252  const OUString& GetName() const { return m_aName;}
253 
254  private:
255  const OUString m_aName;
256  OUString m_aShortName;
257  bool m_bHidden;
262  const sal_Int32 m_nContent;
263  const sal_Int32 m_nOtherContent;
264  const bool m_bSavePos;
265  const bool m_bSaveOtherPos;
266  const bool m_bHadOtherPos;
268  std::shared_ptr< ::sfx2::MetadatableUndo > m_pMetadataUndo;
269 };
270 
274 {
275  public:
276  SwHistoryNoTextFieldmark(const ::sw::mark::IFieldmark& rFieldMark);
277  virtual void SetInDoc(SwDoc* pDoc, bool) override;
278  void ResetInDoc(SwDoc& rDoc);
279 
280  private:
281  const OUString m_sType;
283  const sal_Int32 m_nContent;
284 };
285 
289 {
290  public:
291  SwHistoryTextFieldmark(const ::sw::mark::IFieldmark& rFieldMark);
292  virtual void SetInDoc(SwDoc* pDoc, bool) override;
293  void ResetInDoc(SwDoc& rDoc);
294 
295  private:
296  const OUString m_sName;
297  const OUString m_sType;
299  const sal_Int32 m_nStartContent;
301  const sal_Int32 m_nEndContent;
303  /*const*/ sal_Int32 m_nSepContent;
304 };
305 
307 {
309  std::vector<sal_uInt16> m_ResetArray;
311 
312 public:
313  SwHistorySetAttrSet( const SfxItemSet& rSet, sal_uLong nNode,
314  const o3tl::sorted_vector<sal_uInt16> &rSetArr );
315  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
316 
317 };
318 
320 {
323  const sal_Int32 m_nOldContentIndex;
324 
325 public:
327  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
328 };
329 
331 {
335 
336 public:
337  SwHistoryChangeFlyChain( SwFlyFrameFormat& rFormat, const SwFormatChain& rAttr );
338  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
339 };
340 
342 {
344  const OUString m_Format;
345 
346 public:
347  SwHistoryChangeCharFormat( const SfxItemSet& rSet, const OUString & sFormat);
348  virtual void SetInDoc( SwDoc* pDoc, bool bTmpSet ) override;
349 
350 };
351 
353 {
354  friend class SwDoc; // actually only SwDoc::DelUndoObj may access
355  friend class SwRegHistory; // for inserting History attributes
356 
357  std::vector<std::unique_ptr<SwHistoryHint>> m_SwpHstry;
358  sal_uInt16 m_nEndDiff;
359 
360 public:
361  SwHistory();
362  ~SwHistory();
363 
364  // call and delete all objects between nStart and array end
365  bool Rollback( SwDoc* pDoc, sal_uInt16 nStart = 0 );
366  // call all objects between nStart and TmpEnd; store nStart as TmpEnd
367  bool TmpRollback( SwDoc* pDoc, sal_uInt16 nStart, bool ToFirst = true );
368 
369  void Add( const SfxPoolItem* pOldValue, const SfxPoolItem* pNewValue,
370  sal_uLong nNodeIdx );
371  void Add( SwTextAttr* pTextHt, sal_uLong nNodeIdx, bool bNewAttr );
372  void Add( SwFormatColl*, sal_uLong nNodeIdx, SwNodeType nWhichNd );
373  void Add( const ::sw::mark::IMark&, bool bSavePos, bool bSaveOtherPos );
374  void AddChangeFlyAnchor( SwFrameFormat& rFormat );
375  void AddDeleteFly( SwFrameFormat&, sal_uInt16& rSetPos );
376  void Add( const SwTextFootnote& );
377  void Add( const SfxItemSet & rSet, const SwCharFormat & rCharFormat);
378 
379  sal_uInt16 Count() const { return m_SwpHstry.size(); }
380  sal_uInt16 GetTmpEnd() const { return m_SwpHstry.size() - m_nEndDiff; }
381  sal_uInt16 SetTmpEnd( sal_uInt16 nTmpEnd ); // return previous value
382  SwHistoryHint * operator[]( sal_uInt16 nPos ) { return m_SwpHstry[nPos].get(); }
383  SwHistoryHint const* operator[]( sal_uInt16 nPos ) const
384  { return m_SwpHstry[nPos].get(); }
385 
386  // for SwUndoDelete::Undo/Redo
387  void Move( sal_uInt16 nPos, SwHistory *pIns,
388  sal_uInt16 const nStart = 0)
389  {
390  auto itSourceBegin = pIns->m_SwpHstry.begin() + nStart;
391  auto itSourceEnd = pIns->m_SwpHstry.end();
392  if (itSourceBegin == itSourceEnd)
393  return;
394  m_SwpHstry.insert(m_SwpHstry.begin() + nPos, std::make_move_iterator(itSourceBegin), std::make_move_iterator(itSourceEnd));
395  pIns->m_SwpHstry.erase( itSourceBegin, itSourceEnd );
396  }
397 
398  // helper methods for recording attribute in History
399  // used by Undo classes (Delete/Overwrite/Inserts)
400  void CopyAttr(
401  SwpHints const * pHts,
402  const sal_uLong nNodeIdx,
403  const sal_Int32 nStart,
404  const sal_Int32 nEnd,
405  const bool bCopyFields );
406 
407  void CopyFormatAttr( const SfxItemSet& rSet, sal_uLong nNodeIdx );
408 
409  void dumpAsXml(xmlTextWriterPtr pWriter) const;
410 };
411 
412 class SwRegHistory final: public SwClient
413 {
414 private:
418 
419  void MakeSetWhichIds();
420 
421 public:
422  SwRegHistory( SwHistory* pHst );
423  SwRegHistory( const SwNode& rNd, SwHistory* pHst );
424  SwRegHistory( sw::BroadcastingModify* pRegIn, const SwNode& rNd, SwHistory* pHst );
425  virtual void SwClientNotify(const SwModify&, const SfxHint& rHint) override;
426 
428  bool InsertItems( const SfxItemSet& rSet,
429  sal_Int32 const nStart, sal_Int32 const nEnd,
430  SetAttrMode const nFlags,
431  SwTextAttr **ppNewTextAttr );
432 
433  void AddHint( SwTextAttr* pHt, const bool bNew );
434 
435  void RegisterInModify( sw::BroadcastingModify* pRegIn, const SwNode& rNd );
436  void ChangeNodeIndex( sal_uLong nNew ) { m_nNodeIndex = nNew; }
437 };
438 
439 #endif // INCLUDED_SW_SOURCE_CORE_INC_ROLBCK_HXX
440 
441 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
const std::unique_ptr< SwFormatField > m_pField
Definition: rolbck.hxx:138
Instances of SwFields and those derived from it occur 0 to n times.
Definition: fldbas.hxx:240
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:207
History object containing all information used during undo / redo of text form field insertion...
Definition: rolbck.hxx:288
const OUString m_sType
Definition: rolbck.hxx:281
TOXTypes
Definition: toxe.hxx:39
const TOXTypes m_eTOXTypes
Definition: rolbck.hxx:170
void dumpAsXml(xmlTextWriterPtr pWriter) const override
Definition: rolbck.cxx:149
SwHistoryNoTextFieldmark(const ::sw::mark::IFieldmark &rFieldMark)
Definition: rolbck.cxx:729
const std::unique_ptr< SwUndoSaveSection, o3tl::default_delete< SwUndoSaveSection > > m_pUndo
Definition: rolbck.hxx:203
sal_uInt16 GetWhich() const
Definition: rolbck.hxx:195
std::vector< std::unique_ptr< SwHistoryHint > > m_SwpHstry
Definition: rolbck.hxx:357
const sal_Int32 m_nStart
Definition: rolbck.hxx:186
const sal_uInt16 m_nWhich
Definition: rolbck.hxx:109
const sal_uInt16 m_nAttr
Definition: rolbck.hxx:188
const bool m_bHadOtherPos
Definition: rolbck.hxx:266
SwHistoryChangeCharFormat(const SfxItemSet &rSet, const OUString &sFormat)
Definition: rolbck.cxx:1007
const sal_Int32 m_nEndContent
Definition: rolbck.hxx:301
bool Rollback(SwDoc *pDoc, sal_uInt16 nStart=0)
Definition: rolbck.cxx:1210
const bool m_bSavePos
Definition: rolbck.hxx:264
const SfxItemSet m_OldSet
Definition: rolbck.hxx:343
sal_uIntPtr sal_uLong
virtual ~SwHistorySetFormat() override
Definition: rolbck.cxx:196
SwHistorySetTextField(const SwTextField *pTextField, sal_uLong nNode)
Definition: rolbck.cxx:282
SwHistorySetFootnote(SwTextFootnote *pTextFootnote, sal_uLong nNode)
Definition: rolbck.cxx:447
Definition: doc.hxx:186
sal_uInt16 GetTmpEnd() const
Definition: rolbck.hxx:380
SwHistoryHint * operator[](sal_uInt16 nPos)
Definition: rolbck.hxx:382
virtual void SetInDoc(SwDoc *pDoc, bool) override
Definition: rolbck.cxx:737
bool IsEqual(const SwTOXMark &rCmp) const
Definition: rolbck.cxx:417
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:312
virtual OUString GetDescription() const
Definition: rolbck.cxx:62
bool TmpRollback(SwDoc *pDoc, sal_uInt16 nStart, bool ToFirst=true)
Definition: rolbck.cxx:1225
void dumpAsXml(xmlTextWriterPtr pWriter) const
Definition: rolbck.cxx:1292
sal_Int32 m_nSepContent
Definition: rolbck.hxx:303
const sal_Int32 m_nEnd
Definition: rolbck.hxx:122
const OUString & GetName() const
Definition: rolbck.hxx:252
const sal_uLong m_nStartNode
Definition: rolbck.hxx:298
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:401
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet)=0
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:437
virtual ~SwHistorySetText() override
Definition: rolbck.cxx:245
void AddDeleteFly(SwFrameFormat &, sal_uInt16 &rSetPos)
Definition: rolbck.cxx:1156
SwHistoryHint const * operator[](sal_uInt16 nPos) const
Definition: rolbck.hxx:383
const sal_Int32 m_nStart
Definition: rolbck.hxx:172
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:185
SwHistoryHint(HISTORY_HINT eWhich)
Definition: rolbck.hxx:84
SwHistoryChangeFormatColl(SwFormatColl *pColl, sal_uLong nNode, SwNodeType nNodeWhich)
Definition: rolbck.cxx:539
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:349
virtual void dumpAsXml(xmlTextWriterPtr pWriter) const
Definition: rolbck.cxx:67
void RegisterInModify(sw::BroadcastingModify *pRegIn, const SwNode &rNd)
Definition: rolbck.cxx:1496
const sal_uLong m_nOldNodeIndex
Definition: rolbck.hxx:322
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:156
std::shared_ptr< ::sfx2::MetadatableUndo > m_pMetadataUndo
Definition: rolbck.hxx:268
const IDocumentMarkAccess::MarkType m_eBkmkType
Definition: rolbck.hxx:267
History object containing all information used during undo / redo of checkbox and drop-down form fiel...
Definition: rolbck.hxx:273
SwFlyFrameFormat *const m_pPrevFormat
Definition: rolbck.hxx:332
std::unique_ptr< SwFieldType > m_pFieldType
! beware of the order for the declaration of the unique_ptrs.
Definition: rolbck.hxx:137
const sal_uLong m_nNode
Definition: rolbck.hxx:260
virtual ~SwHistoryHint()
Definition: rolbck.hxx:85
bool IsEqualBookmark(const ::sw::mark::IMark &rBkmk)
Definition: rolbck.cxx:722
const OUString m_FootnoteNumber
Definition: rolbck.hxx:204
OUString m_aHideCondition
Definition: rolbck.hxx:258
SwHistoryChangeFlyChain(SwFlyFrameFormat &rFormat, const SwFormatChain &rAttr)
Definition: rolbck.cxx:966
virtual OUString GetDescription() const override
Definition: rolbck.cxx:483
const sal_uLong m_nOtherNode
Definition: rolbck.hxx:261
SwUndoDelLayFormat * GetUDelLFormat()
Definition: rolbck.hxx:239
virtual OUString GetDescription() const override
Definition: rolbck.cxx:117
SwHistorySetFormat(const SfxPoolItem *pFormatHt, sal_uLong nNode)
Definition: rolbck.cxx:77
const sal_Int32 m_nContent
Definition: rolbck.hxx:283
const OUString m_sName
Definition: rolbck.hxx:296
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:583
const sal_Int32 m_nEnd
Definition: rolbck.hxx:158
SwHistoryTextFieldmark(const ::sw::mark::IFieldmark &rFieldMark)
Definition: rolbck.cxx:773
SwHistory *const m_pHistory
Definition: rolbck.hxx:416
std::unique_ptr< SfxPoolItem > m_pAttr
Definition: rolbck.hxx:94
sal_uLong GetNode() const
Definition: rolbck.hxx:196
SwHistoryResetFormat(const SfxPoolItem *pFormatHt, sal_uLong nNodeIdx)
Definition: rolbck.cxx:200
virtual void SwClientNotify(const SwModify &, const SfxHint &rHint) override
Definition: rolbck.cxx:1388
OUString m_aShortName
Definition: rolbck.hxx:256
SwHistoryTextFlyCnt(SwFrameFormat *const pFlyFormat)
Definition: rolbck.cxx:571
struct _xmlTextWriter * xmlTextWriterPtr
HISTORY_HINT
Definition: rolbck.hxx:59
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:935
Style of a layout element.
Definition: frmfmt.hxx:58
SwNodeType
Definition: ndtyp.hxx:28
const OUString m_TOXName
Definition: rolbck.hxx:169
SwHistoryResetText(sal_uInt16 nWhich, sal_Int32 nStt, sal_Int32 nEnd, sal_uLong nNode)
Definition: rolbck.cxx:429
SwFieldIds m_nFieldWhich
Definition: rolbck.hxx:142
o3tl::sorted_vector< sal_uInt16 > m_WhichIdSet
Definition: rolbck.hxx:415
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:222
const OUString m_aName
Definition: rolbck.hxx:255
virtual ~SwHistorySetTextField() override
Definition: rolbck.cxx:308
void CopyAttr(SwpHints const *pHts, const sal_uLong nNodeIdx, const sal_Int32 nStart, const sal_Int32 nEnd, const bool bCopyFields)
Definition: rolbck.cxx:1307
SetAttrMode
Definition: swtypes.hxx:135
const sal_uLong m_nEndNode
Definition: rolbck.hxx:300
const bool m_bEndNote
Definition: rolbck.hxx:207
sal_uLong m_nNodeIndex
Definition: rolbck.hxx:140
SwFieldIds
Definition: fldbas.hxx:44
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:108
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:120
virtual void SetInDoc(SwDoc *pDoc, bool) override
Definition: rolbck.cxx:787
void CopyFormatAttr(const SfxItemSet &rSet, sal_uLong nNodeIdx)
Definition: rolbck.cxx:1271
const sal_Int32 m_nStart
Definition: rolbck.hxx:121
const sal_uLong m_nNode
Definition: rolbck.hxx:282
std::unique_ptr< SwUndoDelLayFormat > m_pUndo
Definition: rolbck.hxx:233
const sal_Int32 m_nStart
Definition: rolbck.hxx:157
virtual ~SwHistorySetFootnote() override
Definition: rolbck.cxx:488
Connection (text flow) between two FlyFrames.
Definition: fmtcnct.hxx:31
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:310
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:492
SwFrameFormat & m_rFormat
Definition: rolbck.hxx:321
void Add(const SfxPoolItem *pOldValue, const SfxPoolItem *pNewValue, sal_uLong nNodeIdx)
Definition: rolbck.cxx:1035
void AddChangeFlyAnchor(SwFrameFormat &rFormat)
Definition: rolbck.cxx:1150
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:171
const sal_Int32 m_nStart
Definition: rolbck.hxx:206
sal_uInt16 Count() const
Definition: rolbck.hxx:379
void ResetInDoc(SwDoc &rDoc)
Definition: rolbck.cxx:813
const OUString m_RefName
Definition: rolbck.hxx:155
void ChangeNodeIndex(sal_uLong nNew)
Definition: rolbck.hxx:436
SwHistorySetTOXMark(const SwTextTOXMark *pTextHt, sal_uLong nNode)
Definition: rolbck.cxx:367
void AddHint(SwTextAttr *pHt, const bool bNew)
Definition: rolbck.cxx:1431
const sal_Int32 m_nOldContentIndex
Definition: rolbck.hxx:323
SwHistorySetRefMark(const SwTextRefMark *pTextHt, sal_uLong nNode)
Definition: rolbck.cxx:340
SwHistorySetAttrSet(const SfxItemSet &rSet, sal_uLong nNode, const o3tl::sorted_vector< sal_uInt16 > &rSetArr)
Definition: rolbck.cxx:829
An SwTextAttr container, stores all directly formatted text portions for a text node.
Definition: ndhints.hxx:67
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:975
const sal_Int32 m_nContent
Definition: rolbck.hxx:262
void dumpAsXml(xmlTextWriterPtr pWriter) const override
Definition: rolbck.cxx:591
const sal_Int32 m_nEnd
Definition: rolbck.hxx:187
virtual ~SwHistoryTextFlyCnt() override
Definition: rolbck.cxx:579
void MakeSetWhichIds()
Definition: rolbck.cxx:1510
SfxItemSet m_OldSet
Definition: rolbck.hxx:308
SwTOXMark m_TOXMark
Definition: rolbck.hxx:168
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:249
sal_uLong m_nSepNode
Definition: rolbck.hxx:302
sal_uInt16 SetTmpEnd(sal_uInt16 nTmpEnd)
Definition: rolbck.cxx:1250
SwFlyFrameFormat *const m_pFlyFormat
Definition: rolbck.hxx:334
const OUString m_Format
Definition: rolbck.hxx:344
sal_Int32 GetContent() const
Definition: rolbck.hxx:197
SwFlyFrameFormat *const m_pNextFormat
Definition: rolbck.hxx:333
HISTORY_HINT Which() const
Definition: rolbck.hxx:87
const OUString m_sType
Definition: rolbck.hxx:297
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:548
const sal_Int32 m_nStartContent
Definition: rolbck.hxx:299
void ResetInDoc(SwDoc &rDoc)
Definition: rolbck.cxx:755
~SwHistory()
Definition: rolbck.cxx:1031
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:164
virtual void SetInDoc(SwDoc *pDoc, bool) override
Definition: rolbck.cxx:641
const bool m_bSaveOtherPos
Definition: rolbck.hxx:265
SwHistorySetText(SwTextAttr *pTextHt, sal_uLong nNode)
Definition: rolbck.cxx:221
const HISTORY_HINT m_eWhichId
Definition: rolbck.hxx:81
vcl::KeyCode m_aKeycode
Definition: rolbck.hxx:259
const sal_Int32 m_nEnd
Definition: rolbck.hxx:173
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:900
std::unique_ptr< SfxPoolItem > m_pAttr
Definition: rolbck.hxx:119
bool InsertItems(const SfxItemSet &rSet, sal_Int32 const nStart, sal_Int32 const nEnd, SetAttrMode const nFlags, SwTextAttr **ppNewTextAttr)
Definition: rolbck.cxx:1436
SwHistoryBookmark(const ::sw::mark::IMark &rBkmk, bool bSavePos, bool bSaveOtherPos)
Definition: rolbck.cxx:604
SwFormatColl *const m_pColl
Definition: rolbck.hxx:221
const SwNodeType m_nNodeType
Definition: rolbck.hxx:223
sal_uInt16 m_nEndDiff
Definition: rolbck.hxx:358
std::vector< sal_uInt16 > m_ResetArray
Definition: rolbck.hxx:309
void Move(sal_uInt16 nPos, SwHistory *pIns, sal_uInt16 const nStart=0)
Definition: rolbck.hxx:387
bool m_bFormatIgnoreStart
Definition: rolbck.hxx:123
static SwTOXType * GetSwTOXType(SwDoc &rDoc, TOXTypes eTOXTypes, const OUString &rTOXName)
Definition: rolbck.cxx:379
sal_uLong m_nNodeIndex
Definition: rolbck.hxx:205
SwHistoryChangeFlyAnchor(SwFrameFormat &rFormat)
Definition: rolbck.cxx:925
virtual void SetInDoc(SwDoc *pDoc, bool bTmpSet) override
Definition: rolbck.cxx:1014
sal_uLong m_nNodeIndex
Definition: rolbck.hxx:417
SwRegHistory(SwHistory *pHst)
Definition: rolbck.cxx:1363
const sal_Int32 m_nOtherContent
Definition: rolbck.hxx:263
bool m_bFormatIgnoreEnd
Definition: rolbck.hxx:124
const sal_uLong m_nNodeIndex
Definition: rolbck.hxx:95
Base class of the Writer document model elements.
Definition: node.hxx:79
virtual OUString GetDescription() const override
Definition: rolbck.cxx:303