LibreOffice Module sc (master)  1
undoblk.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 #pragma once
20 
21 #include "undobase.hxx"
22 #include <markdata.hxx>
23 #include "spellparam.hxx"
24 #include "cellmergeoption.hxx"
25 #include <paramisc.hxx>
26 #include <editeng/boxitem.hxx>
27 
28 #include <memory>
29 
30 class ScDocShell;
31 class ScOutlineTable;
32 class ScPatternAttr;
33 class SvxSearchItem;
34 class SdrUndoAction;
35 class ScEditDataArray;
36 
38 {
39 public:
40  ScUndoInsertCells( ScDocShell* pNewDocShell,
41  const ScRange& rRange,
42  SCTAB nNewCount, std::unique_ptr<SCTAB[]> pNewTabs, std::unique_ptr<SCTAB[]> pNewScenarios,
43  InsCellCmd eNewCmd, ScDocumentUniquePtr pUndoDocument, std::unique_ptr<ScRefUndoData> pRefData,
44  bool bNewPartOfPaste );
45  virtual ~ScUndoInsertCells() override;
46 
47  virtual void Undo() override;
48  virtual void Redo() override;
49  virtual void Repeat( SfxRepeatTarget& rTarget ) override;
50  virtual bool CanRepeat( SfxRepeatTarget& rTarget ) const override;
51 
52  virtual OUString GetComment() const override;
53 
54  virtual bool Merge( SfxUndoAction *pNextAction ) override;
55 
56 private:
59  std::unique_ptr<SCTAB[]>
61  std::unique_ptr<SCTAB[]>
66  std::unique_ptr<SfxUndoAction>
68 
69  void DoChange ( const bool bUndo );
70  void SetChangeTrack();
71 };
72 
74 {
75 public:
76  ScUndoDeleteCells( ScDocShell* pNewDocShell,
77  const ScRange& rRange,
78  SCTAB nNewCount, std::unique_ptr<SCTAB[]> pNewTabs, std::unique_ptr<SCTAB[]> pNewScenarios,
79  DelCellCmd eNewCmd, ScDocumentUniquePtr pUndoDocument, std::unique_ptr<ScRefUndoData> pRefData );
80  virtual ~ScUndoDeleteCells() override;
81 
82  virtual void Undo() override;
83  virtual void Redo() override;
84  virtual void Repeat(SfxRepeatTarget& rTarget) override;
85  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
86 
87  virtual OUString GetComment() const override;
88 
89 private:
92  std::unique_ptr<SCTAB[]>
94  std::unique_ptr<SCTAB[]>
99 
100  void DoChange ( const bool bUndo );
101  void SetChangeTrack();
102 };
103 
105 {
106 public:
107 
108  ScUndoDeleteMulti( ScDocShell* pNewDocShell,
109  bool bNewRows, bool bNeedsRefresh, SCTAB nNewTab,
110  std::vector<sc::ColRowSpan>&& rSpans,
111  ScDocumentUniquePtr pUndoDocument, std::unique_ptr<ScRefUndoData> pRefData );
112 
113  virtual ~ScUndoDeleteMulti() override;
114 
115  virtual void Undo() override;
116  virtual void Redo() override;
117  virtual void Repeat(SfxRepeatTarget& rTarget) override;
118  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
119 
120  virtual OUString GetComment() const override;
121 
122 private:
123  bool mbRows:1;
124  bool mbRefresh:1;
126  std::vector<sc::ColRowSpan> maSpans;
129 
130  void DoChange() const;
131  void SetChangeTrack();
132 };
133 
135 {
136 public:
137  ScUndoCut(ScDocShell* pNewDocShell,
138  const ScRange& aRange, // adjusted for merged cells
139  const ScAddress& aOldEnd, // end position without adjustment
140  const ScMarkData& rMark, // selected sheets
141  ScDocumentUniquePtr pNewUndoDoc);
142  virtual ~ScUndoCut() override;
143 
144  virtual void Undo() override;
145  virtual void Redo() override;
146  virtual void Repeat(SfxRepeatTarget& rTarget) override;
147  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
148 
149  virtual OUString GetComment() const override;
150 
151 private:
158 
159  void DoChange( const bool bUndo );
160  void SetChangeTrack();
161 };
162 
164 {
168  bool bAsLink;
170 
172  nFunction( ScPasteFunc::NONE ),
173  bSkipEmpty( false ),
174  bTranspose( false ),
175  bAsLink( false ),
176  eMoveMode( INS_NONE )
177  {}
178 };
179 
181 {
182 public:
183  ScUndoPaste(ScDocShell* pNewDocShell, const ScRangeList& rRanges,
184  const ScMarkData& rMark,
185  ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc,
186  InsertDeleteFlags nNewFlags,
187  std::unique_ptr<ScRefUndoData> pRefData,
188  bool bRedoIsFilled = true,
189  const ScUndoPasteOptions* pOptions = nullptr);
190  virtual ~ScUndoPaste() override;
191 
192  virtual void Undo() override;
193  virtual void Redo() override;
194  virtual void Repeat(SfxRepeatTarget& rTarget) override;
195  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
196 
197  virtual OUString GetComment() const override;
198 
199 private:
204  std::unique_ptr<ScRefUndoData> pRefUndoData;
205  std::unique_ptr<ScRefUndoData> pRefRedoData;
210 
211  void DoChange(bool bUndo);
212  void SetChangeTrack();
213 };
214 
216 {
217 public:
218  ScUndoDragDrop( ScDocShell* pNewDocShell,
219  const ScRange& rRange, const ScAddress& aNewDestPos, bool bNewCut,
220  ScDocumentUniquePtr pUndoDocument,
221  bool bScenario );
222  virtual ~ScUndoDragDrop() override;
223 
224  virtual void Undo() override;
225  virtual void Redo() override;
226  virtual void Repeat(SfxRepeatTarget& rTarget) override;
227  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
228 
229  virtual OUString GetComment() const override;
230 
231 private:
232  sal_uInt16 mnPaintExtFlags;
234 
239  bool bCut;
241 
242  void PaintArea( ScRange aRange, sal_uInt16 nExtFlags ) const;
243  void DoUndo( ScRange aRange );
244 
245  void SetChangeTrack();
246 };
247 
249 {
250 public:
251  ScUndoDeleteContents( ScDocShell* pNewDocShell,
252  const ScMarkData& rMark,
253  const ScRange& rRange,
254  ScDocumentUniquePtr&& pNewUndoDoc, bool bNewMulti,
255  InsertDeleteFlags nNewFlags, bool bObjects );
256  virtual ~ScUndoDeleteContents() override;
257 
258  virtual void Undo() override;
259  virtual void Redo() override;
260  virtual void Repeat(SfxRepeatTarget& rTarget) override;
261  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
262 
263  virtual OUString GetComment() const override;
264 
265  void SetDataSpans( const std::shared_ptr<DataSpansType>& pSpans );
266 
267 private:
268  std::shared_ptr<DataSpansType> mpDataSpans; // Spans of non-empty cells.
269 
272  ScDocumentUniquePtr pUndoDoc; // Block mark and deleted data
273  std::unique_ptr<SdrUndoAction> pDrawUndo; // Deleted objects
277  bool bMulti; // Multi selection
278 
279  void DoChange( const bool bUndo );
280  void SetChangeTrack();
281 };
282 
284 {
285 public:
286  ScUndoFillTable( ScDocShell* pNewDocShell,
287  const ScMarkData& rMark,
288  SCCOL nStartX, SCROW nStartY, SCTAB nStartZ,
289  SCCOL nEndX, SCROW nEndY, SCTAB nEndZ,
290  ScDocumentUniquePtr pNewUndoDoc, bool bNewMulti, SCTAB nSrc,
291  InsertDeleteFlags nFlg, ScPasteFunc nFunc, bool bSkip, bool bLink );
292  virtual ~ScUndoFillTable() override;
293 
294  virtual void Undo() override;
295  virtual void Redo() override;
296  virtual void Repeat(SfxRepeatTarget& rTarget) override;
297  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
298 
299  virtual OUString GetComment() const override;
300 
301 private:
305  pUndoDoc; // Block mark and deleted data
311  bool bMulti; // Multi selection
313  bool bAsLink;
314 
315  void DoChange( const bool bUndo );
316  void SetChangeTrack();
317 };
318 
320 {
321 public:
322  ScUndoSelectionAttr( ScDocShell* pNewDocShell,
323  const ScMarkData& rMark,
324  SCCOL nStartX, SCROW nStartY, SCTAB nStartZ,
325  SCCOL nEndX, SCROW nEndY, SCTAB nEndZ,
326  ScDocumentUniquePtr pNewUndoDoc, bool bNewMulti,
327  const ScPatternAttr* pNewApply,
328  const SvxBoxItem* pNewOuter = nullptr,
329  const SvxBoxInfoItem* pNewInner = nullptr,
330  const ScRange* pRangeCover = nullptr );
331  virtual ~ScUndoSelectionAttr() override;
332 
333  virtual void Undo() override;
334  virtual void Redo() override;
335  virtual void Repeat(SfxRepeatTarget& rTarget) override;
336  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
337 
338  virtual OUString GetComment() const override;
339 
341 private:
345  std::unique_ptr<ScEditDataArray> mpDataArray;
347  bool bMulti;
351 
352  void DoChange( const bool bUndo );
353  void ChangeEditData( const bool bUndo );
354 };
355 
357 {
358 public:
359  ScUndoWidthOrHeight( ScDocShell* pNewDocShell,
360  const ScMarkData& rMark,
361  SCCOLROW nNewStart, SCTAB nNewStartTab,
362  SCCOLROW nNewEnd, SCTAB nNewEndTab,
363  ScDocumentUniquePtr pNewUndoDoc,
364  std::vector<sc::ColRowSpan>&& rRanges,
365  std::unique_ptr<ScOutlineTable> pNewUndoTab,
366  ScSizeMode eNewMode, sal_uInt16 nNewSizeTwips,
367  bool bNewWidth );
368  virtual ~ScUndoWidthOrHeight() override;
369 
370  virtual void Undo() override;
371  virtual void Redo() override;
372  virtual void Repeat(SfxRepeatTarget& rTarget) override;
373  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
374 
375  virtual OUString GetComment() const override;
376 
377 private:
384  std::unique_ptr<ScOutlineTable> pUndoTab;
385  std::vector<sc::ColRowSpan> maRanges;
386  sal_uInt16 nNewSize;
387  bool bWidth;
389  std::unique_ptr<SdrUndoAction> pDrawUndo;
390 };
391 
393 {
394 public:
395  ScUndoAutoFill( ScDocShell* pNewDocShell,
396  const ScRange& rRange, const ScRange& rSourceArea,
397  ScDocumentUniquePtr pNewUndoDoc, const ScMarkData& rMark,
398  FillDir eNewFillDir,
399  FillCmd eNewFillCmd, FillDateCmd eNewFillDateCmd,
400  double fNewStartValue, double fNewStepValue, double fNewMaxValue );
401  virtual ~ScUndoAutoFill() override;
402 
403  virtual void Undo() override;
404  virtual void Redo() override;
405  virtual void Repeat(SfxRepeatTarget& rTarget) override;
406  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
407 
408  virtual OUString GetComment() const override;
409 
410 private:
418  double fStartValue;
419  double fStepValue;
420  double fMaxValue;
423 
424  void SetChangeTrack();
425 };
426 
428 {
429 public:
430  ScUndoMerge( ScDocShell* pNewDocShell, const ScCellMergeOption& rOption,
431  bool bMergeContents, ScDocumentUniquePtr pUndoDoc,
432  std::unique_ptr<SdrUndoAction> pDrawUndo);
433  virtual ~ScUndoMerge() override;
434 
435  virtual void Undo() override;
436  virtual void Redo() override;
437  virtual void Repeat(SfxRepeatTarget& rTarget) override;
438  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
439 
440  virtual OUString GetComment() const override;
441 
442 private:
444  bool mbMergeContents; // Merge contents in Redo().
445  ScDocumentUniquePtr mxUndoDoc; // when data is merged
446  std::unique_ptr<SdrUndoAction> mpDrawUndo;
447 
448  void DoChange( bool bUndo ) const;
449 };
450 
452 {
453 public:
454  ScUndoAutoFormat( ScDocShell* pNewDocShell,
455  const ScRange& rRange, ScDocumentUniquePtr pNewUndoDoc,
456  const ScMarkData& rMark,
457  bool bNewSize, sal_uInt16 nNewFormatNo );
458  virtual ~ScUndoAutoFormat() override;
459 
460  virtual void Undo() override;
461  virtual void Redo() override;
462  virtual void Repeat(SfxRepeatTarget& rTarget) override;
463  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
464 
465  virtual OUString GetComment() const override;
466 
467 private:
469  pUndoDoc; // deleted data
471  bool bSize;
472  sal_uInt16 nFormatNo;
473 };
474 
476 {
477 public:
478  ScUndoReplace( ScDocShell* pNewDocShell,
479  const ScMarkData& rMark,
480  SCCOL nCurX, SCROW nCurY, SCTAB nCurZ,
481  const OUString& rNewUndoStr, ScDocumentUniquePtr pNewUndoDoc,
482  const SvxSearchItem* pItem );
483  virtual ~ScUndoReplace() override;
484 
485  virtual void Undo() override;
486  virtual void Redo() override;
487  virtual void Repeat(SfxRepeatTarget& rTarget) override;
488  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
489 
490  virtual OUString GetComment() const override;
491 
492 private:
495  OUString aUndoStr; // Data at single selection
496  ScDocumentUniquePtr pUndoDoc; // Block mark and deleted data
497  std::unique_ptr<SvxSearchItem> pSearchItem;
500 
501  void SetChangeTrack();
502 };
503 
505 {
506 public:
507  ScUndoTabOp( ScDocShell* pNewDocShell,
508  SCCOL nStartX, SCROW nStartY, SCTAB nStartZ,
509  SCCOL nEndX, SCROW nEndY, SCTAB nEndZ,
510  ScDocumentUniquePtr pNewUndoDoc,
511  const ScRefAddress& rFormulaCell,
512  const ScRefAddress& rFormulaEnd,
513  const ScRefAddress& rRowCell,
514  const ScRefAddress& rColCell,
516  virtual ~ScUndoTabOp() override;
517 
518  virtual void Undo() override;
519  virtual void Redo() override;
520  virtual void Repeat(SfxRepeatTarget& rTarget) override;
521  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
522 
523  virtual OUString GetComment() const override;
524 
525 private:
528  pUndoDoc; // Deleted data
534 };
535 
537 {
538 public:
539 
540  ScUndoConversion( ScDocShell* pNewDocShell, const ScMarkData& rMark,
541  SCCOL nCurX, SCROW nCurY, SCTAB nCurZ, ScDocumentUniquePtr pNewUndoDoc,
542  SCCOL nNewX, SCROW nNewY, SCTAB nNewZ, ScDocumentUniquePtr pNewRedoDoc,
543  const ScConversionParam& rConvParam );
544  virtual ~ScUndoConversion() override;
545 
546  virtual void Undo() override;
547  virtual void Redo() override;
548  virtual void Repeat(SfxRepeatTarget& rTarget) override;
549  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
550 
551  virtual OUString GetComment() const override;
552 
553 private:
556  ScDocumentUniquePtr pUndoDoc; // Block mark and deleted data
558  ScDocumentUniquePtr pRedoDoc; // Block mark and new data
562 
563  void DoChange( ScDocument* pRefDoc, const ScAddress& rCursorPos );
564  void SetChangeTrack();
565 };
566 
568 {
569 public:
570  ScUndoRefConversion( ScDocShell* pNewDocShell,
571  const ScRange& aMarkRange, const ScMarkData& rMark,
572  ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc, bool bNewMulti);
573  virtual ~ScUndoRefConversion() override;
574 
575  virtual void Undo() override;
576  virtual void Redo() override;
577  virtual void Repeat(SfxRepeatTarget& rTarget) override;
578  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
579 
580  virtual OUString GetComment() const override;
581 
582 private:
587  bool bMulti;
590 
591  void DoChange( ScDocument* pRefDoc);
592  void SetChangeTrack();
593 };
594 
596 {
597 public:
598  ScUndoListNames(ScDocShell* pNewDocShell,
599  const ScRange& rRange,
600  ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc);
601 
602  virtual void Undo() override;
603  virtual void Redo() override;
604  virtual void Repeat(SfxRepeatTarget& rTarget) override;
605  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
606 
607  virtual OUString GetComment() const override;
608 
609 private:
612 
613  void DoChange( ScDocument* pSrcDoc ) const;
614 };
615 
617 {
618 public:
619  ScUndoConditionalFormat( ScDocShell* pNewDocShell,
620  ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, const ScRange& rRange);
621  virtual ~ScUndoConditionalFormat() override;
622 
623  virtual void Undo() override;
624  virtual void Redo() override;
625  virtual void Repeat(SfxRepeatTarget& rTarget) override;
626  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
627 
628  virtual OUString GetComment() const override;
629 
630 private:
631  void DoChange(ScDocument* pDoc);
635 };
636 
638 {
639 public:
641  ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, SCTAB nTab);
642  virtual ~ScUndoConditionalFormatList() override;
643 
644  virtual void Undo() override;
645  virtual void Redo() override;
646  virtual void Repeat(SfxRepeatTarget& rTarget) override;
647  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
648 
649  virtual OUString GetComment() const override;
650 
651 private:
652  void DoChange(const ScDocument* pDoc);
656 };
657 
659 {
660 public:
661  ScUndoUseScenario( ScDocShell* pNewDocShell,
662  const ScMarkData& rMark,
663  const ScArea& rDestArea, ScDocumentUniquePtr pNewUndoDoc,
664  const OUString& rNewName );
665  virtual ~ScUndoUseScenario() override;
666 
667  virtual void Undo() override;
668  virtual void Redo() override;
669  virtual void Repeat(SfxRepeatTarget& rTarget) override;
670  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
671 
672  virtual OUString GetComment() const override;
673 
674 private:
679  OUString aName;
680 };
681 
683 {
684 public:
685  ScUndoSelectionStyle( ScDocShell* pNewDocShell,
686  const ScMarkData& rMark,
687  const ScRange& rRange,
688  const OUString& rName,
689  ScDocumentUniquePtr pNewUndoDoc );
690  virtual ~ScUndoSelectionStyle() override;
691 
692  virtual void Undo() override;
693  virtual void Redo() override;
694  virtual void Repeat(SfxRepeatTarget& rTarget) override;
695  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
696 
697  virtual OUString GetComment() const override;
698 
699 private:
703  OUString aStyleName;
705 
706  void DoChange( const bool bUndo );
707 };
708 
710 {
711 public:
712  ScUndoRefreshLink(ScDocShell* pNewDocShell,
713  ScDocumentUniquePtr pNewUndoDoc);
714 
715  virtual void Undo() override;
716  virtual void Redo() override;
717  virtual void Repeat(SfxRepeatTarget& rTarget) override;
718  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
719 
720  virtual OUString GetComment() const override;
721 
722 private:
725 };
726 
728 {
729 public:
730  ScUndoEnterMatrix( ScDocShell* pNewDocShell,
731  const ScRange& rArea,
732  ScDocumentUniquePtr pNewUndoDoc,
733  const OUString& rForm );
734  virtual ~ScUndoEnterMatrix() override;
735 
736  virtual void Undo() override;
737  virtual void Redo() override;
738  virtual void Repeat(SfxRepeatTarget& rTarget) override;
739  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
740 
741  virtual OUString GetComment() const override;
742 
743 private:
746  OUString aFormula;
749 
750  void SetChangeTrack();
751 };
752 
754 {
755 public:
757  const OUString& rDocName,
758  const OUString& rFltName, const OUString& rOptions,
759  const OUString& rAreaName, const ScRange& rDestRange,
761  virtual ~ScUndoInsertAreaLink() override;
762 
763  virtual void Undo() override;
764  virtual void Redo() override;
765  virtual void Repeat(SfxRepeatTarget& rTarget) override;
766  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
767 
768  virtual OUString GetComment() const override;
769 
770 private:
771  OUString aDocName;
772  OUString aFltName;
773  OUString aOptions;
774  OUString aAreaName;
777 };
778 
780 {
781 public:
783  const OUString& rDocName,
784  const OUString& rFltName, const OUString& rOptions,
785  const OUString& rAreaName, const ScRange& rDestRange,
787  virtual ~ScUndoRemoveAreaLink() override;
788 
789  virtual void Undo() override;
790  virtual void Redo() override;
791  virtual void Repeat(SfxRepeatTarget& rTarget) override;
792  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
793 
794  virtual OUString GetComment() const override;
795 
796 private:
797  OUString aDocName;
798  OUString aFltName;
799  OUString aOptions;
800  OUString aAreaName;
803 };
804 
806 {
807 public:
809  const OUString& rOldD,
810  const OUString& rOldF, const OUString& rOldO,
811  const OUString& rOldA, const ScRange& rOldR,
812  sal_uLong nOldRD,
813  const OUString& rNewD,
814  const OUString& rNewF, const OUString& rNewO,
815  const OUString& rNewA, const ScRange& rNewR,
816  sal_uLong nNewRD,
818  bool bDoInsert);
819 
820  virtual void Undo() override;
821  virtual void Redo() override;
822  virtual void Repeat(SfxRepeatTarget& rTarget) override;
823  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
824 
825  virtual OUString GetComment() const override;
826 
827 private:
828  OUString aOldDoc;
829  OUString aOldFlt;
830  OUString aOldOpt;
831  OUString aOldArea;
833  OUString aNewDoc;
834  OUString aNewFlt;
835  OUString aNewOpt;
836  OUString aNewArea;
843 
844  void DoChange( const bool bUndo ) const;
845 };
846 
848 {
849 public:
850  ScUndoIndent( ScDocShell* pNewDocShell, const ScMarkData& rMark,
851  ScDocumentUniquePtr pNewUndoDoc, bool bIncrement );
852  virtual ~ScUndoIndent() override;
853 
854  virtual void Undo() override;
855  virtual void Redo() override;
856  virtual void Repeat(SfxRepeatTarget& rTarget) override;
857  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
858 
859  virtual OUString GetComment() const override;
860 
861 private:
866 };
867 
869 {
870 public:
871  ScUndoTransliterate( ScDocShell* pNewDocShell, const ScMarkData& rMark,
873  virtual ~ScUndoTransliterate() override;
874 
875  virtual void Undo() override;
876  virtual void Redo() override;
877  virtual void Repeat(SfxRepeatTarget& rTarget) override;
878  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
879 
880  virtual OUString GetComment() const override;
881 
882 private:
888 };
889 
891 {
892 public:
893  ScUndoClearItems( ScDocShell* pNewDocShell, const ScMarkData& rMark,
894  ScDocumentUniquePtr pNewUndoDoc, const sal_uInt16* pW );
895  virtual ~ScUndoClearItems() override;
896 
897  virtual void Undo() override;
898  virtual void Redo() override;
899  virtual void Repeat(SfxRepeatTarget& rTarget) override;
900  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
901 
902  virtual OUString GetComment() const override;
903 
904 private:
908  std::unique_ptr<sal_uInt16[]>
910 };
911 
913 {
914 public:
915  ScUndoRemoveBreaks( ScDocShell* pNewDocShell,
916  SCTAB nNewTab, ScDocumentUniquePtr pNewUndoDoc );
917  virtual ~ScUndoRemoveBreaks() override;
918 
919  virtual void Undo() override;
920  virtual void Redo() override;
921  virtual void Repeat(SfxRepeatTarget& rTarget) override;
922  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
923 
924  virtual OUString GetComment() const override;
925 
926 private:
930 };
931 
933 {
934 public:
935  ScUndoRemoveMerge( ScDocShell* pNewDocShell,
936  const ScCellMergeOption& rOption,
937  ScDocumentUniquePtr pNewUndoDoc );
938  ScUndoRemoveMerge( ScDocShell* pNewDocShell,
939  const ScRange& rRange,
940  ScDocumentUniquePtr pNewUndoDoc );
941  virtual ~ScUndoRemoveMerge() override;
942 
943  virtual void Undo() override;
944  virtual void Redo() override;
945  virtual void Repeat(SfxRepeatTarget& rTarget) override;
946  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
947 
948  virtual OUString GetComment() const override;
949 
951  void AddCellMergeOption( const ScCellMergeOption& rOption );
952 
953 private:
954  void SetCurTab();
955 
956  std::vector<ScCellMergeOption> maOptions;
958 };
959 
961 {
962 public:
963  ScUndoBorder(ScDocShell* pNewDocShell,
964  const ScRangeList& rRangeList,
965  ScDocumentUniquePtr pNewUndoDoc,
966  const SvxBoxItem& rNewOuter,
967  const SvxBoxInfoItem& rNewInner);
968 
969  virtual void Undo() override;
970  virtual void Redo() override;
971  virtual void Repeat(SfxRepeatTarget& rTarget) override;
972  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
973 
974  virtual OUString GetComment() const override;
975 
976 private:
978  std::unique_ptr<ScRangeList> xRanges;
979  std::unique_ptr<SvxBoxItem> xOuter;
980  std::unique_ptr<SvxBoxInfoItem> xInner;
981 };
982 
983 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ScDocumentUniquePtr mxUndoDoc
Definition: undoblk.hxx:445
ScDocumentUniquePtr pRedoDoc
Definition: undoblk.hxx:585
virtual void Redo() override
Definition: undoblk3.cxx:823
ScUndoIndent(ScDocShell *pNewDocShell, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, bool bIncrement)
Definition: undoblk.cxx:1974
virtual ~ScUndoFillTable() override
Definition: undoblk3.cxx:223
virtual void Undo() override
Definition: undoblk.cxx:734
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:885
double fStepValue
Definition: undoblk.hxx:419
void SetChangeTrack()
Definition: undoblk3.cxx:232
sal_uLong nEndChangeAction
Definition: undoblk.hxx:748
virtual OUString GetComment() const override
Definition: undoblk3.cxx:85
virtual ~ScUndoRemoveBreaks() override
Definition: undoblk.cxx:2155
std::unique_ptr< SdrUndoAction > pDrawUndo
Definition: undoblk.hxx:389
virtual void Undo() override
Definition: undoblk.cxx:1566
sal_uLong nStartChangeAction
Definition: undoblk.hxx:206
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2421
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1758
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1653
virtual void Redo() override
Definition: undoblk3.cxx:457
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1950
virtual OUString GetComment() const override
Definition: undoblk.cxx:1561
todo: It should be possible to have MarkArrays for each table, in order to enable "search all" across...
Definition: markdata.hxx:42
std::unique_ptr< ScOutlineTable > pUndoTab
Definition: undoblk.hxx:384
ScUndoTransliterate(ScDocShell *pNewDocShell, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, TransliterationFlags nType)
Definition: undoblk.cxx:2030
virtual void Redo() override
Definition: undoblk.cxx:1530
virtual void Redo() override
Definition: undoblk.cxx:308
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1083
ScRangeList maPaintRanges
Definition: undoblk.hxx:233
virtual ~ScUndoEnterMatrix() override
Definition: undoblk.cxx:1890
virtual void Undo() override
Definition: undoblk.cxx:1339
FillDir
Definition: global.hxx:318
virtual void Undo() override
Definition: undoblk.cxx:1993
std::unique_ptr< SCTAB[]> pScenarios
Definition: undoblk.hxx:62
OUString aFormula
Definition: undoblk.hxx:746
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2132
virtual void Undo() override
Definition: undoblk.cxx:2110
std::vector< sc::ColRowSpan > maRanges
Definition: undoblk.hxx:385
ScUndoSelectionAttr(ScDocShell *pNewDocShell, const ScMarkData &rMark, SCCOL nStartX, SCROW nStartY, SCTAB nStartZ, SCCOL nEndX, SCROW nEndY, SCTAB nEndZ, ScDocumentUniquePtr pNewUndoDoc, bool bNewMulti, const ScPatternAttr *pNewApply, const SvxBoxItem *pNewOuter=nullptr, const SvxBoxInfoItem *pNewInner=nullptr, const ScRange *pRangeCover=nullptr)
Definition: undoblk3.cxx:339
void SetChangeTrack()
Definition: undoblk.cxx:1899
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:334
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1274
virtual OUString GetComment() const override
Definition: undoblk3.cxx:964
virtual void Undo() override
Definition: undoblk3.cxx:785
void DoChange(const bool bUndo)
Definition: undoblk.cxx:1800
sal_uIntPtr sal_uLong
void AddCellMergeOption(const ScCellMergeOption &rOption)
Definition: undoblk.cxx:2238
ScUndoRemoveMerge(ScDocShell *pNewDocShell, const ScCellMergeOption &rOption, ScDocumentUniquePtr pNewUndoDoc)
Definition: undoblk.cxx:2209
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2416
virtual void Undo()
FilterGroup & rTarget
ScDocumentUniquePtr mpRedoDoc
Definition: undoblk.hxx:633
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1960
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:556
virtual ~ScUndoDeleteCells() override
Definition: undoblk.cxx:371
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:584
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:323
virtual void Redo() override
Definition: undoblk.cxx:1621
std::unique_ptr< ScRangeList > xRanges
Definition: undoblk.hxx:978
virtual void Undo() override
Definition: undoblk3.cxx:314
ScRange aDestRange
Definition: undoblk.hxx:236
ScRange aEffRange
Definition: undoblk.hxx:57
virtual ~ScUndoSelectionStyle() override
Definition: undoblk.cxx:1791
FillDir eFillDir
Definition: undoblk.hxx:415
virtual OUString GetComment() const override
Definition: undoblk.cxx:97
ScRefAddress theFormulaCell
Definition: undoblk.hxx:529
virtual OUString GetComment() const override
Definition: undoblk2.cxx:65
virtual bool Merge(SfxUndoAction *pNextAction) override
Definition: undoblk.cxx:102
ScRefAddress theColCell
Definition: undoblk.hxx:532
ScUndoDeleteContents(ScDocShell *pNewDocShell, const ScMarkData &rMark, const ScRange &rRange, ScDocumentUniquePtr &&pNewUndoDoc, bool bNewMulti, InsertDeleteFlags nNewFlags, bool bObjects)
Definition: undoblk3.cxx:58
InsertDeleteFlags nFlags
Definition: undoblk.hxx:203
ScMarkData aMarkData
Definition: undoblk.hxx:678
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:469
sal_uLong nStartChangeAction
Definition: undoblk.hxx:559
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:272
ScMarkData aMarkData
Definition: undoblk.hxx:303
virtual void Redo() override
Definition: undoblk.cxx:1740
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:630
double fMaxValue
Definition: undoblk.hxx:420
virtual ~ScUndoReplace() override
Definition: undoblk3.cxx:929
sal_uLong nStartChangeAction
Definition: undoblk.hxx:96
virtual ~ScUndoRemoveMerge() override
Definition: undoblk.cxx:2224
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:464
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:910
ScUndoSelectionStyle(ScDocShell *pNewDocShell, const ScMarkData &rMark, const ScRange &rRange, const OUString &rName, ScDocumentUniquePtr pNewUndoDoc)
Definition: undoblk.cxx:1777
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1589
ScUndoMerge(ScDocShell *pNewDocShell, const ScCellMergeOption &rOption, bool bMergeContents, ScDocumentUniquePtr pUndoDoc, std::unique_ptr< SdrUndoAction > pDrawUndo)
Definition: undoblk3.cxx:635
ScUndoAutoFill(ScDocShell *pNewDocShell, const ScRange &rRange, const ScRange &rSourceArea, ScDocumentUniquePtr pNewUndoDoc, const ScMarkData &rMark, FillDir eNewFillDir, FillCmd eNewFillCmd, FillDateCmd eNewFillDateCmd, double fNewStartValue, double fNewStepValue, double fNewMaxValue)
Definition: undoblk3.cxx:481
ScDocumentUniquePtr mpUndoDoc
Definition: undoblk.hxx:632
virtual ~ScUndoTabOp() override
Definition: undoblk3.cxx:1114
virtual OUString GetComment() const override
Definition: undoblk.cxx:1894
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1593
virtual void Redo() override
Definition: undoblk.cxx:1850
sal_uLong nStartChangeAction
Definition: undoblk.hxx:237
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:328
ScMarkData aMarkData
Definition: undoblk.hxx:905
virtual OUString GetComment() const override
Definition: undoblk.cxx:375
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1268
virtual void Undo() override
Definition: undoblk3.cxx:174
ScMarkData aMarkData
Definition: undoblk.hxx:494
void DoUndo(ScRange aRange)
Definition: undoblk.cxx:1302
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1354
bool bIsIncrement
Definition: undoblk.hxx:865
ScMarkData aMarkData
Definition: undoblk.hxx:883
virtual OUString GetComment() const override
Definition: undoblk.cxx:1680
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:957
virtual ~ScUndoInsertCells() override
Definition: undoblk.cxx:93
NONE
DelCellCmd
Definition: global.hxx:290
virtual void Undo() override
Definition: undoblk.cxx:1843
void SetChangeTrack()
Definition: undoblk3.cxx:935
virtual void Undo() override
Definition: undoblk3.cxx:969
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:632
void SetChangeTrack()
Definition: undoblk.cxx:127
void DoChange(ScDocument *pRefDoc, const ScAddress &rCursorPos)
Conversion type and parameters.
Definition: undoblk3.cxx:1222
InsertDeleteFlags nFlags
Definition: undoblk.hxx:308
void SetChangeTrack()
Definition: undoblk3.cxx:1190
ScUndoWidthOrHeight(ScDocShell *pNewDocShell, const ScMarkData &rMark, SCCOLROW nNewStart, SCTAB nNewStartTab, SCCOLROW nNewEnd, SCTAB nNewEndTab, ScDocumentUniquePtr pNewUndoDoc, std::vector< sc::ColRowSpan > &&rRanges, std::unique_ptr< ScOutlineTable > pNewUndoTab, ScSizeMode eNewMode, sal_uInt16 nNewSizeTwips, bool bNewWidth)
Change column widths or row heights.
Definition: undoblk2.cxx:36
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:201
void DoChange(const bool bUndo)
Definition: undoblk3.cxx:260
ScDocumentUniquePtr mpRedoDoc
Definition: undoblk.hxx:654
ScRefAddress theFormulaEnd
Definition: undoblk.hxx:530
virtual void Redo() override
Definition: undoblk3.cxx:560
sal_Int32 SCCOLROW
a type capable of holding either SCCOL or SCROW
Definition: types.hxx:23
void SetChangeTrack()
Definition: undoblk.cxx:1234
virtual void Undo() override
Definition: undoblk2.cxx:79
sal_uLong nStartChangeAction
Definition: undoblk.hxx:156
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2025
ScUndoAutoFormat(ScDocShell *pNewDocShell, const ScRange &rRange, ScDocumentUniquePtr pNewUndoDoc, const ScMarkData &rMark, bool bNewSize, sal_uInt16 nNewFormatNo)
Definition: undoblk3.cxx:765
ScMarkData aMarkData
Definition: undoblk.hxx:470
virtual ~ScUndoConversion() override
Definition: undoblk3.cxx:1184
bool bKeepScenarioFlags
Definition: undoblk.hxx:240
FillDateCmd
Definition: global.hxx:343
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:864
ScUndoDeleteMulti(ScDocShell *pNewDocShell, bool bNewRows, bool bNeedsRefresh, SCTAB nNewTab, std::vector< sc::ColRowSpan > &&rSpans, ScDocumentUniquePtr pUndoDocument, std::unique_ptr< ScRefUndoData > pRefData)
Definition: undoblk.cxx:638
std::unique_ptr< SvxBoxItem > xOuter
Definition: undoblk.hxx:979
bool mbMergeContents
Definition: undoblk.hxx:444
ScDocument * GetUndoDoc()
Definition: undoblk.cxx:2233
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:383
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:929
InsCellCmd eCmd
Definition: undoblk.hxx:64
ScUndoTabOp(ScDocShell *pNewDocShell, SCCOL nStartX, SCROW nStartY, SCTAB nStartZ, SCCOL nEndX, SCROW nEndY, SCTAB nEndZ, ScDocumentUniquePtr pNewUndoDoc, const ScRefAddress &rFormulaCell, const ScRefAddress &rFormulaEnd, const ScRefAddress &rRowCell, const ScRefAddress &rColCell, ScTabOpParam::Mode eMode)
Definition: undoblk3.cxx:1095
ScUndoListNames(ScDocShell *pNewDocShell, const ScRange &rRange, ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc)
Definition: undoblk.cxx:1497
Mode eMode
ScDocumentUniquePtr xRedoDoc
Definition: undoblk.hxx:611
virtual void Undo() override
Definition: undoblk.cxx:2380
ScUndoConditionalFormat(ScDocShell *pNewDocShell, ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, const ScRange &rRange)
Definition: undoblk.cxx:1548
ScSizeMode eMode
Definition: undoblk.hxx:388
virtual void Undo() override
Definition: undoblk.cxx:1685
virtual void Redo() override
Definition: undoblk3.cxx:743
void SetChangeTrack()
Definition: undoblk.cxx:380
ScUndoConversion(ScDocShell *pNewDocShell, const ScMarkData &rMark, SCCOL nCurX, SCROW nCurY, SCTAB nCurZ, ScDocumentUniquePtr pNewUndoDoc, SCCOL nNewX, SCROW nNewY, SCTAB nNewZ, ScDocumentUniquePtr pNewRedoDoc, const ScConversionParam &rConvParam)
Definition: undoblk3.cxx:1168
virtual ~ScUndoAutoFormat() override
Definition: undoblk3.cxx:776
virtual void Undo() override
Definition: undoblk.cxx:1616
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2074
virtual OUString GetComment() const override
Definition: undoblk3.cxx:780
std::unique_ptr< SfxUndoAction > pPasteUndo
Definition: undoblk.hxx:67
ScUndoPasteOptions aPasteOptions
Definition: undoblk.hxx:209
TransliterationFlags
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2195
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:626
virtual void Undo() override
Definition: undoblk.cxx:293
sal_uLong nEndChangeAction
Definition: undoblk.hxx:97
InsertDeleteFlags nFlags
Definition: undoblk.hxx:276
virtual void Undo() override
Definition: undoblk.cxx:2048
virtual ~ScUndoWidthOrHeight() override
Definition: undoblk2.cxx:58
ScUndoDeleteCells(ScDocShell *pNewDocShell, const ScRange &rRange, SCTAB nNewCount, std::unique_ptr< SCTAB[]> pNewTabs, std::unique_ptr< SCTAB[]> pNewScenarios, DelCellCmd eNewCmd, ScDocumentUniquePtr pUndoDocument, std::unique_ptr< ScRefUndoData > pRefData)
Definition: undoblk.cxx:344
ScUndoClearItems(ScDocShell *pNewDocShell, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, const sal_uInt16 *pW)
Definition: undoblk.cxx:2085
virtual void Redo() override
Definition: undoblk2.cxx:143
ScPasteFunc
Definition: global.hxx:189
sal_uLong nEndChangeAction
Definition: undoblk.hxx:589
virtual void Redo() override
Definition: undoblk.cxx:1402
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:810
virtual void Undo() override
Definition: undoblk.cxx:2164
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1876
ScUndoInsertCells(ScDocShell *pNewDocShell, const ScRange &rRange, SCTAB nNewCount, std::unique_ptr< SCTAB[]> pNewTabs, std::unique_ptr< SCTAB[]> pNewScenarios, InsCellCmd eNewCmd, ScDocumentUniquePtr pUndoDocument, std::unique_ptr< ScRefUndoData > pRefData, bool bNewPartOfPaste)
Definition: undoblk.cxx:64
FillCmd
Definition: global.hxx:326
ScMarkData aMarkData
Definition: undoblk.hxx:862
sal_uLong nEndChangeAction
Definition: undoblk.hxx:275
ScUndoConditionalFormatList(ScDocShell *pNewDocShell, ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, SCTAB nTab)
Definition: undoblk.cxx:1598
virtual ~ScUndoConditionalFormatList() override
Definition: undoblk.cxx:1607
std::unique_ptr< SdrUndoAction > mpDrawUndo
Definition: undoblk.hxx:446
virtual void Redo() override
Definition: undoblk.cxx:2121
sal_uLong nEndChangeAction
Definition: undoblk.hxx:238
virtual OUString GetComment() const override
Definition: undoblk.cxx:1611
std::vector< ScCellMergeOption > maOptions
Definition: undoblk.hxx:956
ScRange aSource
Definition: undoblk.hxx:411
sal_uLong nStartChangeAction
Definition: undoblk.hxx:747
ScDocumentUniquePtr xUndoDoc
Definition: undoblk.hxx:610
virtual void Redo() override
Definition: undoblk3.cxx:1144
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:750
virtual void Redo() override
Definition: undoblk.cxx:601
ScMarkData aMarkData
Definition: undoblk.hxx:554
sal_uLong nStartChangeAction
Definition: undoblk.hxx:306
std::unique_ptr< ScDocument, o3tl::default_delete< ScDocument > > ScDocumentUniquePtr
Definition: document.hxx:2622
sal_Int16 SCCOL
Definition: types.hxx:21
InsertDeleteFlags
Definition: global.hxx:158
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:192
std::unique_ptr< SvxBoxInfoItem > xInner
Definition: undoblk.hxx:980
virtual void Undo() override
Definition: undoblk3.cxx:736
sal_uInt16 nFormatNo
Definition: undoblk.hxx:472
sal_uLong nStartChangeAction
Definition: undoblk.hxx:588
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2080
ScUndoFillTable(ScDocShell *pNewDocShell, const ScMarkData &rMark, SCCOL nStartX, SCROW nStartY, SCTAB nStartZ, SCCOL nEndX, SCROW nEndY, SCTAB nEndZ, ScDocumentUniquePtr pNewUndoDoc, bool bNewMulti, SCTAB nSrc, InsertDeleteFlags nFlg, ScPasteFunc nFunc, bool bSkip, bool bLink)
Definition: undoblk3.cxx:203
Parameters for conversion.
Definition: spellparam.hxx:32
ScUndoRemoveBreaks(ScDocShell *pNewDocShell, SCTAB nNewTab, ScDocumentUniquePtr pNewUndoDoc)
Definition: undoblk.cxx:2147
virtual OUString GetComment() const override
Definition: undoblk.cxx:1795
std::unique_ptr< ScRefUndoData > pRefRedoData
Definition: undoblk.hxx:205
void SetChangeTrack()
Definition: undoblk3.cxx:509
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:617
ScRefAddress theRowCell
Definition: undoblk.hxx:531
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2325
ScUndoUseScenario(ScDocShell *pNewDocShell, const ScMarkData &rMark, const ScArea &rDestArea, ScDocumentUniquePtr pNewUndoDoc, const OUString &rNewName)
Definition: undoblk.cxx:1658
ScUndoBorder(ScDocShell *pNewDocShell, const ScRangeList &rRangeList, ScDocumentUniquePtr pNewUndoDoc, const SvxBoxItem &rNewOuter, const SvxBoxInfoItem &rNewInner)
Definition: undoblk.cxx:2364
sal_uLong nEndChangeAction
Definition: undoblk.hxx:499
void DoChange(const bool bUndo)
Definition: undoblk.cxx:390
virtual void Undo() override
Definition: undoblk3.cxx:519
ScPatternAttr * pApplyPattern
Definition: undoblk.hxx:348
virtual void Undo() override
Definition: undoblk3.cxx:450
ScMarkData aMarkData
Definition: undoblk.hxx:200
virtual ~ScUndoUseScenario() override
Definition: undoblk.cxx:1676
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2331
ScMarkData aMarkData
Definition: undoblk.hxx:700
ScMarkData aMarkData
Definition: undoblk.hxx:152
virtual OUString GetComment() const override
Definition: undoblk.cxx:1987
ScMarkData aMarkData
Definition: undoblk.hxx:412
ScPasteFunc nFunction
Definition: undoblk.hxx:165
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:198
sal_uLong nStartChangeAction
Definition: undoblk.hxx:421
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:676
void DoChange(ScDocument *pRefDoc)
Definition: undoblk3.cxx:1314
virtual ~ScUndoDeleteContents() override
Definition: undoblk3.cxx:79
ScRange aSrcRange
Definition: undoblk.hxx:235
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:339
virtual OUString GetComment() const override
Definition: undoblk3.cxx:227
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2204
virtual ~ScUndoAutoFill() override
Definition: undoblk3.cxx:500
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1537
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:702
ScDocumentUniquePtr mpUndoDoc
Definition: undoblk.hxx:653
std::unique_ptr< sal_uInt16[]> pWhich
Definition: undoblk.hxx:909
void PaintArea(ScRange aRange, sal_uInt16 nExtFlags) const
Definition: undoblk.cxx:1253
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:528
FillCmd eFillCmd
Definition: undoblk.hxx:416
sal_uLong nEndChangeAction
Definition: undoblk.hxx:307
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk2.cxx:181
ScSizeMode
Definition: global.hxx:360
sal_uInt16 mnPaintExtFlags
Definition: undoblk.hxx:232
ScUndoReplace(ScDocShell *pNewDocShell, const ScMarkData &rMark, SCCOL nCurX, SCROW nCurY, SCTAB nCurZ, const OUString &rNewUndoStr, ScDocumentUniquePtr pNewUndoDoc, const SvxSearchItem *pItem)
Definition: undoblk3.cxx:915
sal_uLong nStartChangeAction
Definition: undoblk.hxx:498
void DoChange(const bool bUndo)
Definition: undoblk.cxx:139
ScMarkData aMarkData
Definition: undoblk.hxx:378
ScAddress aNewCursorPos
Definition: undoblk.hxx:557
ScDocumentUniquePtr xUndoDoc
Definition: undoblk.hxx:977
sal_uLong nEndChangeAction
Definition: undoblk.hxx:422
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1649
virtual void Undo() override
Definition: undoblk3.cxx:1123
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2141
virtual void Undo() override
Definition: undoblk.cxx:2243
sal_uLong nStartChangeAction
Definition: undoblk.hxx:127
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1089
virtual void Redo() override
Definition: undoblk.cxx:2393
OUString aName
Definition: undoblk.hxx:679
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1767
virtual ~ScUndoDeleteMulti() override
Definition: undoblk.cxx:652
ScRange aExtendedRange
Definition: undoblk.hxx:155
virtual void Undo() override
Definition: undoblk.cxx:1523
ScPasteFunc nFunction
Definition: undoblk.hxx:309
double fStartValue
Definition: undoblk.hxx:418
ScRange aEffRange
Definition: undoblk.hxx:90
virtual OUString GetComment() const override
Definition: undoblk3.cxx:1299
sal_uLong nEndChangeAction
Definition: undoblk.hxx:560
OUString aUndoStr
Definition: undoblk.hxx:495
sal_Int32 SCROW
Definition: types.hxx:17
virtual OUString GetComment() const override
Definition: undoblk3.cxx:373
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk2.cxx:175
virtual OUString GetComment() const override
Definition: undoblk3.cxx:504
void ChangeEditData(const bool bUndo)
Definition: undoblk3.cxx:424
virtual void Redo() override
Definition: undoblk3.cxx:183
ScRange aRange
Definition: undoblk.hxx:526
sal_uLong nStartChangeAction
Definition: undoblk.hxx:274
virtual OUString GetComment() const override
Definition: undoblk.cxx:2105
virtual OUString GetComment() const
ScCellMergeOption maOption
Definition: undoblk.hxx:443
ScRange aRange
Definition: undoblk.hxx:302
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:154
virtual void Redo() override
Definition: undoblk.cxx:2063
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:760
void DoChange(const bool bUndo)
Definition: undoblk3.cxx:105
ScMarkData aMarkData
Definition: undoblk.hxx:342
void DoChange(const bool bUndo)
Definition: undoblk3.cxx:384
sal_uLong nEndChangeAction
Definition: undoblk.hxx:207
virtual void Redo() override
Definition: undoblk.cxx:2008
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:907
virtual OUString GetComment() const override
Definition: undoblk.cxx:2228
ScTabOpParam::Mode meMode
Definition: undoblk.hxx:533
void DoChange(bool bUndo) const
Definition: undoblk3.cxx:655
std::unique_ptr< SCTAB[]> pTabs
Definition: undoblk.hxx:93
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1490
virtual ~ScUndoDragDrop() override
Definition: undoblk.cxx:1223
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:476
virtual OUString GetComment() const override
Definition: undoblk.cxx:1227
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:904
SvxBoxItem * pLineOuter
Definition: undoblk.hxx:349
InsCellCmd
Definition: global.hxx:299
virtual void Redo() override
Definition: undoblk.cxx:776
virtual void Undo() override
Definition: undoblk.cxx:1910
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1857
void DoChange(ScDocument *pDoc)
Definition: undoblk.cxx:1576
ScUndoDragDrop(ScDocShell *pNewDocShell, const ScRange &rRange, const ScAddress &aNewDestPos, bool bNewCut, ScDocumentUniquePtr pUndoDocument, bool bScenario)
Definition: undoblk.cxx:1191
virtual void Repeat(SfxRepeatTarget &)
virtual OUString GetComment() const override
Definition: undoblk3.cxx:650
sal_uLong nEndChangeAction
Definition: undoblk.hxx:157
QPRO_FUNC_TYPE nType
Definition: qproform.cxx:398
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:305
ScUndoEnterMatrix(ScDocShell *pNewDocShell, const ScRange &rArea, ScDocumentUniquePtr pNewUndoDoc, const OUString &rForm)
Definition: undoblk.cxx:1881
virtual OUString GetComment() const override
Definition: undoblk.cxx:656
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:803
virtual OUString GetComment() const override
Definition: undoblk.cxx:2375
virtual OUString GetComment() const override
Definition: undoblk3.cxx:1209
virtual OUString GetComment() const override
Definition: undoblk.cxx:2159
virtual void Redo() override
Definition: undoblk3.cxx:1345
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1360
virtual OUString GetComment() const override
Definition: undoblk3.cxx:1118
void DoChange(ScDocument *pSrcDoc) const
Definition: undoblk.cxx:1510
virtual void Redo() override
Definition: undoblk.cxx:1931
ScMarkData aMarkData
Definition: undoblk.hxx:583
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:414
virtual void Redo() override
Definition: undoblk.cxx:2279
ScDocumentUniquePtr pRedoDoc
Definition: undoblk.hxx:202
std::unique_ptr< SCTAB[]> pScenarios
Definition: undoblk.hxx:95
std::unique_ptr< ScEditDataArray > mpDataArray
Definition: undoblk.hxx:345
std::unique_ptr< SvxSearchItem > pSearchItem
Definition: undoblk.hxx:497
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2019
TransliterationFlags nTransliterationType
Definition: undoblk.hxx:887
virtual ~ScUndoSelectionAttr() override
Definition: undoblk3.cxx:361
void DoChange(const ScDocument *pDoc)
Definition: undoblk.cxx:1626
virtual ~ScUndoClearItems() override
Definition: undoblk.cxx:2101
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1543
SvxBoxInfoItem * pLineInner
Definition: undoblk.hxx:350
ScConversionParam maConvParam
Definition: undoblk.hxx:561
void SetDataSpans(const std::shared_ptr< DataSpansType > &pSpans)
Definition: undoblk3.cxx:90
virtual void Redo() override
Definition: undoblk.cxx:1571
virtual bool CanRepeat(SfxRepeatTarget &) const
DelCellCmd eCmd
Definition: undoblk.hxx:98
InsCellCmd eMoveMode
Definition: undoblk.hxx:169
virtual void Undo() override
Definition: undoblk.cxx:565
virtual ~ScUndoRefConversion() override
Definition: undoblk3.cxx:1293
void DoChange() const
Definition: undoblk.cxx:661
ScMarkData aMarkData
Definition: undoblk.hxx:271
std::unique_ptr< SdrUndoAction > pDrawUndo
Definition: undoblk.hxx:273
ScEditDataArray * GetDataArray()
Definition: undoblk3.cxx:379
virtual ~ScUndoIndent() override
Definition: undoblk.cxx:1983
ScDocumentUniquePtr pRedoDoc
Definition: undoblk.hxx:558
virtual void Undo() override
Definition: undoblk3.cxx:1250
virtual ~ScUndoMerge() override
Definition: undoblk3.cxx:645
virtual void Redo()
ScAddress aCursorPos
Definition: undoblk.hxx:555
std::shared_ptr< DataSpansType > mpDataSpans
Definition: undoblk.hxx:268
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1486
virtual void Redo() override
Definition: undoblk3.cxx:321
void SetChangeTrack()
Definition: undoblk.cxx:697
virtual void Redo() override
Definition: undoblk.cxx:2179
std::unique_ptr< SCTAB[]> pTabs
Definition: undoblk.hxx:60
ScUndoRefConversion(ScDocShell *pNewDocShell, const ScRange &aMarkRange, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc, bool bNewMulti)
Definition: undoblk3.cxx:1279
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:346
sal_uLong nEndChangeAction
Definition: undoblk.hxx:63
sal_uLong nEndChangeAction
Definition: undoblk.hxx:128
virtual OUString GetComment() const override
Definition: undoblk.cxx:1505
virtual void Undo() override
Definition: undoblk3.cxx:1334
sal_uInt16 nNewSize
Definition: undoblk.hxx:386
virtual void Redo() override
Definition: undoblk3.cxx:1260
ScAddress aCursorPos
Definition: undoblk.hxx:493
#define SC_DLLPUBLIC
Definition: scdllapi.h:27
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1159
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:496
std::vector< sc::ColRowSpan > maSpans
Definition: undoblk.hxx:126
FillDateCmd eFillDateCmd
Definition: undoblk.hxx:417
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1163
sal_Int16 SCTAB
Definition: types.hxx:22
std::unique_ptr< ScRefUndoData > pRefUndoData
Definition: undoblk.hxx:204
virtual OUString GetComment() const override
Definition: undoblk.cxx:2043
virtual void Redo() override
Definition: undoblk3.cxx:1047
virtual ~ScUndoConditionalFormat() override
Definition: undoblk.cxx:1557
virtual ~ScUndoTransliterate() override
Definition: undoblk.cxx:2039
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:745
bool bRedoFilled
Definition: undoblk.hxx:208