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 #ifndef INCLUDED_SC_SOURCE_UI_INC_UNDOBLK_HXX
20 #define INCLUDED_SC_SOURCE_UI_INC_UNDOBLK_HXX
21 
22 #include "undobase.hxx"
23 #include <markdata.hxx>
24 #include "spellparam.hxx"
25 #include "cellmergeoption.hxx"
26 #include <paramisc.hxx>
27 #include <editeng/boxitem.hxx>
28 
29 #include <memory>
30 
31 class ScDocShell;
32 class ScOutlineTable;
33 class ScPatternAttr;
34 class SvxSearchItem;
35 class SdrUndoAction;
36 class ScEditDataArray;
37 
39 {
40 public:
41  ScUndoInsertCells( ScDocShell* pNewDocShell,
42  const ScRange& rRange,
43  SCTAB nNewCount, std::unique_ptr<SCTAB[]> pNewTabs, std::unique_ptr<SCTAB[]> pNewScenarios,
44  InsCellCmd eNewCmd, ScDocumentUniquePtr pUndoDocument, std::unique_ptr<ScRefUndoData> pRefData,
45  bool bNewPartOfPaste );
46  virtual ~ScUndoInsertCells() override;
47 
48  virtual void Undo() override;
49  virtual void Redo() override;
50  virtual void Repeat( SfxRepeatTarget& rTarget ) override;
51  virtual bool CanRepeat( SfxRepeatTarget& rTarget ) const override;
52 
53  virtual OUString GetComment() const override;
54 
55  virtual bool Merge( SfxUndoAction *pNextAction ) override;
56 
57 private:
60  std::unique_ptr<SCTAB[]>
62  std::unique_ptr<SCTAB[]>
67  std::unique_ptr<SfxUndoAction>
69 
70  void DoChange ( const bool bUndo );
71  void SetChangeTrack();
72 };
73 
75 {
76 public:
77  ScUndoDeleteCells( ScDocShell* pNewDocShell,
78  const ScRange& rRange,
79  SCTAB nNewCount, std::unique_ptr<SCTAB[]> pNewTabs, std::unique_ptr<SCTAB[]> pNewScenarios,
80  DelCellCmd eNewCmd, ScDocumentUniquePtr pUndoDocument, std::unique_ptr<ScRefUndoData> pRefData );
81  virtual ~ScUndoDeleteCells() override;
82 
83  virtual void Undo() override;
84  virtual void Redo() override;
85  virtual void Repeat(SfxRepeatTarget& rTarget) override;
86  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
87 
88  virtual OUString GetComment() const override;
89 
90 private:
93  std::unique_ptr<SCTAB[]>
95  std::unique_ptr<SCTAB[]>
100 
101  void DoChange ( const bool bUndo );
102  void SetChangeTrack();
103 };
104 
106 {
107 public:
108 
109  ScUndoDeleteMulti( ScDocShell* pNewDocShell,
110  bool bNewRows, bool bNeedsRefresh, SCTAB nNewTab,
111  const std::vector<sc::ColRowSpan>& rSpans,
112  ScDocumentUniquePtr pUndoDocument, std::unique_ptr<ScRefUndoData> pRefData );
113 
114  virtual ~ScUndoDeleteMulti() override;
115 
116  virtual void Undo() override;
117  virtual void Redo() override;
118  virtual void Repeat(SfxRepeatTarget& rTarget) override;
119  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
120 
121  virtual OUString GetComment() const override;
122 
123 private:
124  bool mbRows:1;
125  bool mbRefresh:1;
127  std::vector<sc::ColRowSpan> maSpans;
130 
131  void DoChange() const;
132  void SetChangeTrack();
133 };
134 
135 class ScUndoCut: public ScBlockUndo
136 {
137 public:
138  ScUndoCut(ScDocShell* pNewDocShell,
139  const ScRange& aRange, // adjusted for merged cells
140  const ScAddress& aOldEnd, // end position without adjustment
141  const ScMarkData& rMark, // selected sheets
142  ScDocumentUniquePtr pNewUndoDoc);
143  virtual ~ScUndoCut() override;
144 
145  virtual void Undo() override;
146  virtual void Redo() override;
147  virtual void Repeat(SfxRepeatTarget& rTarget) override;
148  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
149 
150  virtual OUString GetComment() const override;
151 
152 private:
159 
160  void DoChange( const bool bUndo );
161  void SetChangeTrack();
162 };
163 
165 {
169  bool bAsLink;
171 
173  nFunction( ScPasteFunc::NONE ),
174  bSkipEmpty( false ),
175  bTranspose( false ),
176  bAsLink( false ),
177  eMoveMode( INS_NONE )
178  {}
179 };
180 
182 {
183 public:
184  ScUndoPaste(ScDocShell* pNewDocShell, const ScRangeList& rRanges,
185  const ScMarkData& rMark,
186  ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc,
187  InsertDeleteFlags nNewFlags,
188  std::unique_ptr<ScRefUndoData> pRefData,
189  bool bRedoIsFilled = true,
190  const ScUndoPasteOptions* pOptions = nullptr);
191  virtual ~ScUndoPaste() override;
192 
193  virtual void Undo() override;
194  virtual void Redo() override;
195  virtual void Repeat(SfxRepeatTarget& rTarget) override;
196  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
197 
198  virtual OUString GetComment() const override;
199 
200 private:
205  std::unique_ptr<ScRefUndoData> pRefUndoData;
206  std::unique_ptr<ScRefUndoData> pRefRedoData;
211 
212  void DoChange(bool bUndo);
213  void SetChangeTrack();
214 };
215 
217 {
218 public:
219  ScUndoDragDrop( ScDocShell* pNewDocShell,
220  const ScRange& rRange, const ScAddress& aNewDestPos, bool bNewCut,
221  ScDocumentUniquePtr pUndoDocument,
222  bool bScenario );
223  virtual ~ScUndoDragDrop() override;
224 
225  virtual void Undo() override;
226  virtual void Redo() override;
227  virtual void Repeat(SfxRepeatTarget& rTarget) override;
228  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
229 
230  virtual OUString GetComment() const override;
231 
232 private:
233  sal_uInt16 mnPaintExtFlags;
235 
240  bool bCut;
242 
243  void PaintArea( ScRange aRange, sal_uInt16 nExtFlags ) const;
244  void DoUndo( ScRange aRange );
245 
246  void SetChangeTrack();
247 };
248 
250 {
251 public:
252  ScUndoDeleteContents( ScDocShell* pNewDocShell,
253  const ScMarkData& rMark,
254  const ScRange& rRange,
255  ScDocumentUniquePtr&& pNewUndoDoc, bool bNewMulti,
256  InsertDeleteFlags nNewFlags, bool bObjects );
257  virtual ~ScUndoDeleteContents() override;
258 
259  virtual void Undo() override;
260  virtual void Redo() override;
261  virtual void Repeat(SfxRepeatTarget& rTarget) override;
262  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
263 
264  virtual OUString GetComment() const override;
265 
266  void SetDataSpans( const std::shared_ptr<DataSpansType>& pSpans );
267 
268 private:
269  std::shared_ptr<DataSpansType> mpDataSpans; // Spans of non-empty cells.
270 
273  ScDocumentUniquePtr pUndoDoc; // Block mark and deleted data
274  std::unique_ptr<SdrUndoAction> pDrawUndo; // Deleted objects
278  bool bMulti; // Multi selection
279 
280  void DoChange( const bool bUndo );
281  void SetChangeTrack();
282 };
283 
285 {
286 public:
287  ScUndoFillTable( ScDocShell* pNewDocShell,
288  const ScMarkData& rMark,
289  SCCOL nStartX, SCROW nStartY, SCTAB nStartZ,
290  SCCOL nEndX, SCROW nEndY, SCTAB nEndZ,
291  ScDocumentUniquePtr pNewUndoDoc, bool bNewMulti, SCTAB nSrc,
292  InsertDeleteFlags nFlg, ScPasteFunc nFunc, bool bSkip, bool bLink );
293  virtual ~ScUndoFillTable() override;
294 
295  virtual void Undo() override;
296  virtual void Redo() override;
297  virtual void Repeat(SfxRepeatTarget& rTarget) override;
298  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
299 
300  virtual OUString GetComment() const override;
301 
302 private:
306  pUndoDoc; // Block mark and deleted data
312  bool bMulti; // Multi selection
314  bool bAsLink;
315 
316  void DoChange( const bool bUndo );
317  void SetChangeTrack();
318 };
319 
321 {
322 public:
323  ScUndoSelectionAttr( ScDocShell* pNewDocShell,
324  const ScMarkData& rMark,
325  SCCOL nStartX, SCROW nStartY, SCTAB nStartZ,
326  SCCOL nEndX, SCROW nEndY, SCTAB nEndZ,
327  ScDocumentUniquePtr pNewUndoDoc, bool bNewMulti,
328  const ScPatternAttr* pNewApply,
329  const SvxBoxItem* pNewOuter = nullptr,
330  const SvxBoxInfoItem* pNewInner = nullptr,
331  const ScRange* pRangeCover = nullptr );
332  virtual ~ScUndoSelectionAttr() override;
333 
334  virtual void Undo() override;
335  virtual void Redo() override;
336  virtual void Repeat(SfxRepeatTarget& rTarget) override;
337  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
338 
339  virtual OUString GetComment() const override;
340 
342 private:
346  std::unique_ptr<ScEditDataArray> mpDataArray;
348  bool bMulti;
352 
353  void DoChange( const bool bUndo );
354  void ChangeEditData( const bool bUndo );
355 };
356 
358 {
359 public:
360  ScUndoWidthOrHeight( ScDocShell* pNewDocShell,
361  const ScMarkData& rMark,
362  SCCOLROW nNewStart, SCTAB nNewStartTab,
363  SCCOLROW nNewEnd, SCTAB nNewEndTab,
364  ScDocumentUniquePtr pNewUndoDoc,
365  const std::vector<sc::ColRowSpan>& rRanges,
366  std::unique_ptr<ScOutlineTable> pNewUndoTab,
367  ScSizeMode eNewMode, sal_uInt16 nNewSizeTwips,
368  bool bNewWidth );
369  virtual ~ScUndoWidthOrHeight() override;
370 
371  virtual void Undo() override;
372  virtual void Redo() override;
373  virtual void Repeat(SfxRepeatTarget& rTarget) override;
374  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
375 
376  virtual OUString GetComment() const override;
377 
378 private:
385  std::unique_ptr<ScOutlineTable> pUndoTab;
386  std::vector<sc::ColRowSpan> maRanges;
387  sal_uInt16 nNewSize;
388  bool bWidth;
390  std::unique_ptr<SdrUndoAction> pDrawUndo;
391 };
392 
394 {
395 public:
396  ScUndoAutoFill( ScDocShell* pNewDocShell,
397  const ScRange& rRange, const ScRange& rSourceArea,
398  ScDocumentUniquePtr pNewUndoDoc, const ScMarkData& rMark,
399  FillDir eNewFillDir,
400  FillCmd eNewFillCmd, FillDateCmd eNewFillDateCmd,
401  double fNewStartValue, double fNewStepValue, double fNewMaxValue );
402  virtual ~ScUndoAutoFill() override;
403 
404  virtual void Undo() override;
405  virtual void Redo() override;
406  virtual void Repeat(SfxRepeatTarget& rTarget) override;
407  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
408 
409  virtual OUString GetComment() const override;
410 
411 private:
419  double fStartValue;
420  double fStepValue;
421  double fMaxValue;
424 
425  void SetChangeTrack();
426 };
427 
429 {
430 public:
431  ScUndoMerge( ScDocShell* pNewDocShell, const ScCellMergeOption& rOption,
432  bool bMergeContents, ScDocumentUniquePtr pUndoDoc,
433  std::unique_ptr<SdrUndoAction> pDrawUndo);
434  virtual ~ScUndoMerge() override;
435 
436  virtual void Undo() override;
437  virtual void Redo() override;
438  virtual void Repeat(SfxRepeatTarget& rTarget) override;
439  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
440 
441  virtual OUString GetComment() const override;
442 
443 private:
445  bool mbMergeContents; // Merge contents in Redo().
446  ScDocumentUniquePtr mxUndoDoc; // when data is merged
447  std::unique_ptr<SdrUndoAction> mpDrawUndo;
448 
449  void DoChange( bool bUndo ) const;
450 };
451 
453 {
454 public:
455  ScUndoAutoFormat( ScDocShell* pNewDocShell,
456  const ScRange& rRange, ScDocumentUniquePtr pNewUndoDoc,
457  const ScMarkData& rMark,
458  bool bNewSize, sal_uInt16 nNewFormatNo );
459  virtual ~ScUndoAutoFormat() override;
460 
461  virtual void Undo() override;
462  virtual void Redo() override;
463  virtual void Repeat(SfxRepeatTarget& rTarget) override;
464  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
465 
466  virtual OUString GetComment() const override;
467 
468 private:
470  pUndoDoc; // deleted data
472  bool bSize;
473  sal_uInt16 nFormatNo;
474 };
475 
477 {
478 public:
479  ScUndoReplace( ScDocShell* pNewDocShell,
480  const ScMarkData& rMark,
481  SCCOL nCurX, SCROW nCurY, SCTAB nCurZ,
482  const OUString& rNewUndoStr, ScDocumentUniquePtr pNewUndoDoc,
483  const SvxSearchItem* pItem );
484  virtual ~ScUndoReplace() override;
485 
486  virtual void Undo() override;
487  virtual void Redo() override;
488  virtual void Repeat(SfxRepeatTarget& rTarget) override;
489  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
490 
491  virtual OUString GetComment() const override;
492 
493 private:
496  OUString aUndoStr; // Data at single selection
497  ScDocumentUniquePtr pUndoDoc; // Block mark and deleted data
498  std::unique_ptr<SvxSearchItem> pSearchItem;
501 
502  void SetChangeTrack();
503 };
504 
506 {
507 public:
508  ScUndoTabOp( ScDocShell* pNewDocShell,
509  SCCOL nStartX, SCROW nStartY, SCTAB nStartZ,
510  SCCOL nEndX, SCROW nEndY, SCTAB nEndZ,
511  ScDocumentUniquePtr pNewUndoDoc,
512  const ScRefAddress& rFormulaCell,
513  const ScRefAddress& rFormulaEnd,
514  const ScRefAddress& rRowCell,
515  const ScRefAddress& rColCell,
517  virtual ~ScUndoTabOp() override;
518 
519  virtual void Undo() override;
520  virtual void Redo() override;
521  virtual void Repeat(SfxRepeatTarget& rTarget) override;
522  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
523 
524  virtual OUString GetComment() const override;
525 
526 private:
529  pUndoDoc; // Deleted data
535 };
536 
538 {
539 public:
540 
541  ScUndoConversion( ScDocShell* pNewDocShell, const ScMarkData& rMark,
542  SCCOL nCurX, SCROW nCurY, SCTAB nCurZ, ScDocumentUniquePtr pNewUndoDoc,
543  SCCOL nNewX, SCROW nNewY, SCTAB nNewZ, ScDocumentUniquePtr pNewRedoDoc,
544  const ScConversionParam& rConvParam );
545  virtual ~ScUndoConversion() override;
546 
547  virtual void Undo() override;
548  virtual void Redo() override;
549  virtual void Repeat(SfxRepeatTarget& rTarget) override;
550  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
551 
552  virtual OUString GetComment() const override;
553 
554 private:
557  ScDocumentUniquePtr pUndoDoc; // Block mark and deleted data
559  ScDocumentUniquePtr pRedoDoc; // Block mark and new data
563 
564  void DoChange( ScDocument* pRefDoc, const ScAddress& rCursorPos );
565  void SetChangeTrack();
566 };
567 
569 {
570 public:
571  ScUndoRefConversion( ScDocShell* pNewDocShell,
572  const ScRange& aMarkRange, const ScMarkData& rMark,
573  ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc, bool bNewMulti);
574  virtual ~ScUndoRefConversion() override;
575 
576  virtual void Undo() override;
577  virtual void Redo() override;
578  virtual void Repeat(SfxRepeatTarget& rTarget) override;
579  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
580 
581  virtual OUString GetComment() const override;
582 
583 private:
588  bool bMulti;
591 
592  void DoChange( ScDocument* pRefDoc);
593  void SetChangeTrack();
594 };
595 
597 {
598 public:
599  ScUndoListNames(ScDocShell* pNewDocShell,
600  const ScRange& rRange,
601  ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc);
602 
603  virtual void Undo() override;
604  virtual void Redo() override;
605  virtual void Repeat(SfxRepeatTarget& rTarget) override;
606  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
607 
608  virtual OUString GetComment() const override;
609 
610 private:
613 
614  void DoChange( ScDocument* pSrcDoc ) const;
615 };
616 
618 {
619 public:
620  ScUndoConditionalFormat( ScDocShell* pNewDocShell,
621  ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, const ScRange& rRange);
622  virtual ~ScUndoConditionalFormat() override;
623 
624  virtual void Undo() override;
625  virtual void Redo() override;
626  virtual void Repeat(SfxRepeatTarget& rTarget) override;
627  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
628 
629  virtual OUString GetComment() const override;
630 
631 private:
632  void DoChange(ScDocument* pDoc);
636 };
637 
639 {
640 public:
642  ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, SCTAB nTab);
643  virtual ~ScUndoConditionalFormatList() override;
644 
645  virtual void Undo() override;
646  virtual void Redo() override;
647  virtual void Repeat(SfxRepeatTarget& rTarget) override;
648  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
649 
650  virtual OUString GetComment() const override;
651 
652 private:
653  void DoChange(const ScDocument* pDoc);
657 };
658 
660 {
661 public:
662  ScUndoUseScenario( ScDocShell* pNewDocShell,
663  const ScMarkData& rMark,
664  const ScArea& rDestArea, ScDocumentUniquePtr pNewUndoDoc,
665  const OUString& rNewName );
666  virtual ~ScUndoUseScenario() override;
667 
668  virtual void Undo() override;
669  virtual void Redo() override;
670  virtual void Repeat(SfxRepeatTarget& rTarget) override;
671  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
672 
673  virtual OUString GetComment() const override;
674 
675 private:
680  OUString aName;
681 };
682 
684 {
685 public:
686  ScUndoSelectionStyle( ScDocShell* pNewDocShell,
687  const ScMarkData& rMark,
688  const ScRange& rRange,
689  const OUString& rName,
690  ScDocumentUniquePtr pNewUndoDoc );
691  virtual ~ScUndoSelectionStyle() override;
692 
693  virtual void Undo() override;
694  virtual void Redo() override;
695  virtual void Repeat(SfxRepeatTarget& rTarget) override;
696  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
697 
698  virtual OUString GetComment() const override;
699 
700 private:
704  OUString aStyleName;
706 
707  void DoChange( const bool bUndo );
708 };
709 
711 {
712 public:
713  ScUndoRefreshLink(ScDocShell* pNewDocShell,
714  ScDocumentUniquePtr pNewUndoDoc);
715 
716  virtual void Undo() override;
717  virtual void Redo() override;
718  virtual void Repeat(SfxRepeatTarget& rTarget) override;
719  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
720 
721  virtual OUString GetComment() const override;
722 
723 private:
726 };
727 
729 {
730 public:
731  ScUndoEnterMatrix( ScDocShell* pNewDocShell,
732  const ScRange& rArea,
733  ScDocumentUniquePtr pNewUndoDoc,
734  const OUString& rForm );
735  virtual ~ScUndoEnterMatrix() override;
736 
737  virtual void Undo() override;
738  virtual void Redo() override;
739  virtual void Repeat(SfxRepeatTarget& rTarget) override;
740  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
741 
742  virtual OUString GetComment() const override;
743 
744 private:
747  OUString aFormula;
750 
751  void SetChangeTrack();
752 };
753 
755 {
756 public:
758  const OUString& rDocName,
759  const OUString& rFltName, const OUString& rOptions,
760  const OUString& rAreaName, const ScRange& rDestRange,
762  virtual ~ScUndoInsertAreaLink() override;
763 
764  virtual void Undo() override;
765  virtual void Redo() override;
766  virtual void Repeat(SfxRepeatTarget& rTarget) override;
767  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
768 
769  virtual OUString GetComment() const override;
770 
771 private:
772  OUString aDocName;
773  OUString aFltName;
774  OUString aOptions;
775  OUString aAreaName;
778 };
779 
781 {
782 public:
784  const OUString& rDocName,
785  const OUString& rFltName, const OUString& rOptions,
786  const OUString& rAreaName, const ScRange& rDestRange,
788  virtual ~ScUndoRemoveAreaLink() override;
789 
790  virtual void Undo() override;
791  virtual void Redo() override;
792  virtual void Repeat(SfxRepeatTarget& rTarget) override;
793  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
794 
795  virtual OUString GetComment() const override;
796 
797 private:
798  OUString aDocName;
799  OUString aFltName;
800  OUString aOptions;
801  OUString aAreaName;
804 };
805 
807 {
808 public:
810  const OUString& rOldD,
811  const OUString& rOldF, const OUString& rOldO,
812  const OUString& rOldA, const ScRange& rOldR,
813  sal_uLong nOldRD,
814  const OUString& rNewD,
815  const OUString& rNewF, const OUString& rNewO,
816  const OUString& rNewA, const ScRange& rNewR,
817  sal_uLong nNewRD,
819  bool bDoInsert);
820 
821  virtual void Undo() override;
822  virtual void Redo() override;
823  virtual void Repeat(SfxRepeatTarget& rTarget) override;
824  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
825 
826  virtual OUString GetComment() const override;
827 
828 private:
829  OUString aOldDoc;
830  OUString aOldFlt;
831  OUString aOldOpt;
832  OUString aOldArea;
834  OUString aNewDoc;
835  OUString aNewFlt;
836  OUString aNewOpt;
837  OUString aNewArea;
844 
845  void DoChange( const bool bUndo ) const;
846 };
847 
849 {
850 public:
851  ScUndoIndent( ScDocShell* pNewDocShell, const ScMarkData& rMark,
852  ScDocumentUniquePtr pNewUndoDoc, bool bIncrement );
853  virtual ~ScUndoIndent() override;
854 
855  virtual void Undo() override;
856  virtual void Redo() override;
857  virtual void Repeat(SfxRepeatTarget& rTarget) override;
858  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
859 
860  virtual OUString GetComment() const override;
861 
862 private:
867 };
868 
870 {
871 public:
872  ScUndoTransliterate( ScDocShell* pNewDocShell, const ScMarkData& rMark,
874  virtual ~ScUndoTransliterate() override;
875 
876  virtual void Undo() override;
877  virtual void Redo() override;
878  virtual void Repeat(SfxRepeatTarget& rTarget) override;
879  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
880 
881  virtual OUString GetComment() const override;
882 
883 private:
889 };
890 
892 {
893 public:
894  ScUndoClearItems( ScDocShell* pNewDocShell, const ScMarkData& rMark,
895  ScDocumentUniquePtr pNewUndoDoc, const sal_uInt16* pW );
896  virtual ~ScUndoClearItems() override;
897 
898  virtual void Undo() override;
899  virtual void Redo() override;
900  virtual void Repeat(SfxRepeatTarget& rTarget) override;
901  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
902 
903  virtual OUString GetComment() const override;
904 
905 private:
909  std::unique_ptr<sal_uInt16[]>
911 };
912 
914 {
915 public:
916  ScUndoRemoveBreaks( ScDocShell* pNewDocShell,
917  SCTAB nNewTab, ScDocumentUniquePtr pNewUndoDoc );
918  virtual ~ScUndoRemoveBreaks() override;
919 
920  virtual void Undo() override;
921  virtual void Redo() override;
922  virtual void Repeat(SfxRepeatTarget& rTarget) override;
923  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
924 
925  virtual OUString GetComment() const override;
926 
927 private:
931 };
932 
934 {
935 public:
936  ScUndoRemoveMerge( ScDocShell* pNewDocShell,
937  const ScCellMergeOption& rOption,
938  ScDocumentUniquePtr pNewUndoDoc );
939  ScUndoRemoveMerge( ScDocShell* pNewDocShell,
940  const ScRange& rRange,
941  ScDocumentUniquePtr pNewUndoDoc );
942  virtual ~ScUndoRemoveMerge() override;
943 
944  virtual void Undo() override;
945  virtual void Redo() override;
946  virtual void Repeat(SfxRepeatTarget& rTarget) override;
947  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
948 
949  virtual OUString GetComment() const override;
950 
952  void AddCellMergeOption( const ScCellMergeOption& rOption );
953 
954 private:
955  void SetCurTab();
956 
957  std::vector<ScCellMergeOption> maOptions;
959 };
960 
962 {
963 public:
964  ScUndoBorder(ScDocShell* pNewDocShell,
965  const ScRangeList& rRangeList,
966  ScDocumentUniquePtr pNewUndoDoc,
967  const SvxBoxItem& rNewOuter,
968  const SvxBoxInfoItem& rNewInner);
969 
970  virtual void Undo() override;
971  virtual void Redo() override;
972  virtual void Repeat(SfxRepeatTarget& rTarget) override;
973  virtual bool CanRepeat(SfxRepeatTarget& rTarget) const override;
974 
975  virtual OUString GetComment() const override;
976 
977 private:
979  std::unique_ptr<ScRangeList> xRanges;
980  std::unique_ptr<SvxBoxItem> xOuter;
981  std::unique_ptr<SvxBoxInfoItem> xInner;
982 };
983 
984 #endif
985 
986 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ScDocumentUniquePtr mxUndoDoc
Definition: undoblk.hxx:446
ScDocumentUniquePtr pRedoDoc
Definition: undoblk.hxx:586
virtual void Redo() override
Definition: undoblk3.cxx:822
ScUndoIndent(ScDocShell *pNewDocShell, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, bool bIncrement)
Definition: undoblk.cxx:1976
virtual ~ScUndoFillTable() override
Definition: undoblk3.cxx:222
virtual void Undo() override
Definition: undoblk.cxx:736
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:886
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:905
double fStepValue
Definition: undoblk.hxx:420
void SetChangeTrack()
Definition: undoblk3.cxx:231
sal_uLong nEndChangeAction
Definition: undoblk.hxx:749
virtual OUString GetComment() const override
Definition: undoblk3.cxx:84
virtual ~ScUndoRemoveBreaks() override
Definition: undoblk.cxx:2157
std::unique_ptr< SdrUndoAction > pDrawUndo
Definition: undoblk.hxx:390
virtual void Undo() override
Definition: undoblk.cxx:1568
sal_uLong nStartChangeAction
Definition: undoblk.hxx:207
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2423
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1760
void SetChangeTrack()
Definition: undoblk.cxx:952
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1655
virtual void Redo() override
Definition: undoblk3.cxx:456
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1952
ScUndoPaste(ScDocShell *pNewDocShell, const ScRangeList &rRanges, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc, InsertDeleteFlags nNewFlags, std::unique_ptr< ScRefUndoData > pRefData, bool bRedoIsFilled=true, const ScUndoPasteOptions *pOptions=nullptr)
Definition: undoblk.cxx:916
virtual OUString GetComment() const override
Definition: undoblk.cxx:1563
todo: It should be possible to have MarkArrays for each table, in order to enable "search all" across...
Definition: markdata.hxx:43
std::unique_ptr< ScOutlineTable > pUndoTab
Definition: undoblk.hxx:385
ScUndoTransliterate(ScDocShell *pNewDocShell, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, TransliterationFlags nType)
Definition: undoblk.cxx:2032
virtual void Redo() override
Definition: undoblk.cxx:1532
virtual void Redo() override
Definition: undoblk.cxx:310
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1082
ScRangeList maPaintRanges
Definition: undoblk.hxx:234
virtual ~ScUndoEnterMatrix() override
Definition: undoblk.cxx:1892
virtual void Undo() override
Definition: undoblk.cxx:1341
FillDir
Definition: global.hxx:318
virtual void Undo() override
Definition: undoblk.cxx:1995
std::unique_ptr< SCTAB[]> pScenarios
Definition: undoblk.hxx:63
OUString aFormula
Definition: undoblk.hxx:747
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2134
virtual void Undo() override
Definition: undoblk.cxx:2112
std::vector< sc::ColRowSpan > maRanges
Definition: undoblk.hxx:386
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:338
void SetChangeTrack()
Definition: undoblk.cxx:1901
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:333
virtual OUString GetComment() const override
Definition: undoblk.cxx:831
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1273
virtual OUString GetComment() const override
Definition: undoblk3.cxx:963
virtual void Undo() override
Definition: undoblk3.cxx:784
void DoChange(const bool bUndo)
Definition: undoblk.cxx:1802
virtual void Undo() override
Definition: undoblk.cxx:888
sal_uIntPtr sal_uLong
void AddCellMergeOption(const ScCellMergeOption &rOption)
Definition: undoblk.cxx:2240
ScUndoRemoveMerge(ScDocShell *pNewDocShell, const ScCellMergeOption &rOption, ScDocumentUniquePtr pNewUndoDoc)
Definition: undoblk.cxx:2211
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2418
FilterGroup & rTarget
ScDocumentUniquePtr mpRedoDoc
Definition: undoblk.hxx:634
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1962
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:557
virtual ~ScUndoDeleteCells() override
Definition: undoblk.cxx:373
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:585
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:325
virtual void Redo() override
Definition: undoblk.cxx:1623
std::unique_ptr< ScRangeList > xRanges
Definition: undoblk.hxx:979
virtual void Undo() override
Definition: undoblk3.cxx:313
ScRange aDestRange
Definition: undoblk.hxx:237
ScRange aEffRange
Definition: undoblk.hxx:58
virtual ~ScUndoSelectionStyle() override
Definition: undoblk.cxx:1793
FillDir eFillDir
Definition: undoblk.hxx:416
virtual OUString GetComment() const override
Definition: undoblk.cxx:99
ScRefAddress theFormulaCell
Definition: undoblk.hxx:530
virtual OUString GetComment() const override
Definition: undoblk2.cxx:65
virtual bool Merge(SfxUndoAction *pNextAction) override
Definition: undoblk.cxx:104
ScRefAddress theColCell
Definition: undoblk.hxx:533
ScUndoDeleteContents(ScDocShell *pNewDocShell, const ScMarkData &rMark, const ScRange &rRange, ScDocumentUniquePtr &&pNewUndoDoc, bool bNewMulti, InsertDeleteFlags nNewFlags, bool bObjects)
Definition: undoblk3.cxx:57
InsertDeleteFlags nFlags
Definition: undoblk.hxx:204
ScMarkData aMarkData
Definition: undoblk.hxx:679
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:470
sal_uLong nStartChangeAction
Definition: undoblk.hxx:560
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:273
ScMarkData aMarkData
Definition: undoblk.hxx:304
virtual void Redo() override
Definition: undoblk.cxx:1742
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:629
virtual OUString GetComment() const override
Definition: undoblk.cxx:947
double fMaxValue
Definition: undoblk.hxx:421
virtual ~ScUndoReplace() override
Definition: undoblk3.cxx:928
void SetChangeTrack()
Definition: undoblk.cxx:836
sal_uLong nStartChangeAction
Definition: undoblk.hxx:97
virtual ~ScUndoRemoveMerge() override
Definition: undoblk.cxx:2226
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:463
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:909
virtual ~ScUndoPaste() override
Definition: undoblk.cxx:939
ScUndoSelectionStyle(ScDocShell *pNewDocShell, const ScMarkData &rMark, const ScRange &rRange, const OUString &rName, ScDocumentUniquePtr pNewUndoDoc)
Definition: undoblk.cxx:1779
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1591
ScUndoMerge(ScDocShell *pNewDocShell, const ScCellMergeOption &rOption, bool bMergeContents, ScDocumentUniquePtr pUndoDoc, std::unique_ptr< SdrUndoAction > pDrawUndo)
Definition: undoblk3.cxx:634
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:480
ScDocumentUniquePtr mpUndoDoc
Definition: undoblk.hxx:633
virtual ~ScUndoTabOp() override
Definition: undoblk3.cxx:1113
virtual OUString GetComment() const override
Definition: undoblk.cxx:1896
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1595
virtual void Redo() override
Definition: undoblk.cxx:1852
sal_uLong nStartChangeAction
Definition: undoblk.hxx:238
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:327
ScMarkData aMarkData
Definition: undoblk.hxx:906
virtual OUString GetComment() const override
Definition: undoblk.cxx:377
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1267
virtual void Undo() override
Definition: undoblk3.cxx:173
ScMarkData aMarkData
Definition: undoblk.hxx:495
void DoUndo(ScRange aRange)
Definition: undoblk.cxx:1304
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:911
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1353
bool bIsIncrement
Definition: undoblk.hxx:866
ScMarkData aMarkData
Definition: undoblk.hxx:884
virtual OUString GetComment() const override
Definition: undoblk.cxx:1682
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:958
virtual ~ScUndoInsertCells() override
Definition: undoblk.cxx:95
NONE
DelCellCmd
Definition: global.hxx:290
virtual void Undo() override
Definition: undoblk.cxx:1845
void SetChangeTrack()
Definition: undoblk3.cxx:934
virtual void Undo() override
Definition: undoblk3.cxx:968
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:634
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1188
void SetChangeTrack()
Definition: undoblk.cxx:129
void DoChange(ScDocument *pRefDoc, const ScAddress &rCursorPos)
Conversion type and parameters.
Definition: undoblk3.cxx:1221
InsertDeleteFlags nFlags
Definition: undoblk.hxx:309
void SetChangeTrack()
Definition: undoblk3.cxx:1189
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:202
void DoChange(const bool bUndo)
Definition: undoblk3.cxx:259
ScDocumentUniquePtr mpRedoDoc
Definition: undoblk.hxx:655
ScRefAddress theFormulaEnd
Definition: undoblk.hxx:531
virtual void Redo() override
Definition: undoblk3.cxx:559
sal_Int32 SCCOLROW
a type capable of holding either SCCOL or SCROW
Definition: types.hxx:24
void SetChangeTrack()
Definition: undoblk.cxx:1236
virtual void Undo() override
Definition: undoblk2.cxx:79
sal_uLong nStartChangeAction
Definition: undoblk.hxx:157
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2027
ScUndoAutoFormat(ScDocShell *pNewDocShell, const ScRange &rRange, ScDocumentUniquePtr pNewUndoDoc, const ScMarkData &rMark, bool bNewSize, sal_uInt16 nNewFormatNo)
Definition: undoblk3.cxx:764
ScMarkData aMarkData
Definition: undoblk.hxx:471
virtual ~ScUndoConversion() override
Definition: undoblk3.cxx:1183
bool bKeepScenarioFlags
Definition: undoblk.hxx:241
FillDateCmd
Definition: global.hxx:343
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:865
std::unique_ptr< SvxBoxItem > xOuter
Definition: undoblk.hxx:980
bool mbMergeContents
Definition: undoblk.hxx:445
ScDocument * GetUndoDoc()
Definition: undoblk.cxx:2235
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:384
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:930
InsCellCmd eCmd
Definition: undoblk.hxx:65
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:1094
ScUndoListNames(ScDocShell *pNewDocShell, const ScRange &rRange, ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc)
Definition: undoblk.cxx:1499
Mode eMode
ScDocumentUniquePtr xRedoDoc
Definition: undoblk.hxx:612
virtual void Undo() override
Definition: undoblk.cxx:2382
ScUndoConditionalFormat(ScDocShell *pNewDocShell, ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, const ScRange &rRange)
Definition: undoblk.cxx:1550
ScSizeMode eMode
Definition: undoblk.hxx:389
virtual void Undo() override
Definition: undoblk.cxx:1687
virtual void Redo() override
Definition: undoblk3.cxx:742
void SetChangeTrack()
Definition: undoblk.cxx:382
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:1167
virtual ~ScUndoAutoFormat() override
Definition: undoblk3.cxx:775
virtual void Undo() override
Definition: undoblk.cxx:1618
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2076
virtual OUString GetComment() const override
Definition: undoblk3.cxx:779
std::unique_ptr< SfxUndoAction > pPasteUndo
Definition: undoblk.hxx:68
ScUndoPasteOptions aPasteOptions
Definition: undoblk.hxx:210
TransliterationFlags
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2197
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:628
virtual void Undo() override
Definition: undoblk.cxx:295
sal_uLong nEndChangeAction
Definition: undoblk.hxx:98
virtual ~ScUndoCut() override
Definition: undoblk.cxx:827
InsertDeleteFlags nFlags
Definition: undoblk.hxx:277
virtual void Undo() override
Definition: undoblk.cxx:2050
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:346
ScUndoClearItems(ScDocShell *pNewDocShell, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, const sal_uInt16 *pW)
Definition: undoblk.cxx:2087
virtual void Redo() override
Definition: undoblk2.cxx:143
ScPasteFunc
Definition: global.hxx:189
sal_uLong nEndChangeAction
Definition: undoblk.hxx:590
virtual void Undo() override
Definition: undoblk.cxx:1149
virtual void Redo() override
Definition: undoblk.cxx:1404
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:812
virtual void Redo() override
Definition: undoblk.cxx:1159
virtual void Undo() override
Definition: undoblk.cxx:2166
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1878
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:66
FillCmd
Definition: global.hxx:326
ScMarkData aMarkData
Definition: undoblk.hxx:863
sal_uLong nEndChangeAction
Definition: undoblk.hxx:276
ScUndoConditionalFormatList(ScDocShell *pNewDocShell, ScDocumentUniquePtr pUndoDoc, ScDocumentUniquePtr pRedoDoc, SCTAB nTab)
Definition: undoblk.cxx:1600
virtual ~ScUndoConditionalFormatList() override
Definition: undoblk.cxx:1609
std::unique_ptr< SdrUndoAction > mpDrawUndo
Definition: undoblk.hxx:447
virtual void Redo() override
Definition: undoblk.cxx:2123
sal_uLong nEndChangeAction
Definition: undoblk.hxx:239
virtual OUString GetComment() const override
Definition: undoblk.cxx:1613
std::vector< ScCellMergeOption > maOptions
Definition: undoblk.hxx:957
ScRange aSource
Definition: undoblk.hxx:412
sal_uLong nStartChangeAction
Definition: undoblk.hxx:748
ScDocumentUniquePtr xUndoDoc
Definition: undoblk.hxx:611
virtual void Redo() override
Definition: undoblk3.cxx:1143
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:749
virtual void Redo() override
Definition: undoblk.cxx:603
ScMarkData aMarkData
Definition: undoblk.hxx:555
sal_uLong nStartChangeAction
Definition: undoblk.hxx:307
std::unique_ptr< ScDocument, o3tl::default_delete< ScDocument > > ScDocumentUniquePtr
Definition: document.hxx:2613
sal_Int16 SCCOL
Definition: types.hxx:22
InsertDeleteFlags
Definition: global.hxx:158
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:191
ScUndoWidthOrHeight(ScDocShell *pNewDocShell, const ScMarkData &rMark, SCCOLROW nNewStart, SCTAB nNewStartTab, SCCOLROW nNewEnd, SCTAB nNewEndTab, ScDocumentUniquePtr pNewUndoDoc, const 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
std::unique_ptr< SvxBoxInfoItem > xInner
Definition: undoblk.hxx:981
virtual void Undo() override
Definition: undoblk3.cxx:735
sal_uInt16 nFormatNo
Definition: undoblk.hxx:473
sal_uLong nStartChangeAction
Definition: undoblk.hxx:589
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2082
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:202
Parameters for conversion.
Definition: spellparam.hxx:33
ScUndoRemoveBreaks(ScDocShell *pNewDocShell, SCTAB nNewTab, ScDocumentUniquePtr pNewUndoDoc)
Definition: undoblk.cxx:2149
virtual OUString GetComment() const override
Definition: undoblk.cxx:1797
std::unique_ptr< ScRefUndoData > pRefRedoData
Definition: undoblk.hxx:206
void SetChangeTrack()
Definition: undoblk3.cxx:508
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:616
ScRefAddress theRowCell
Definition: undoblk.hxx:532
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2327
ScUndoUseScenario(ScDocShell *pNewDocShell, const ScMarkData &rMark, const ScArea &rDestArea, ScDocumentUniquePtr pNewUndoDoc, const OUString &rNewName)
Definition: undoblk.cxx:1660
ScUndoBorder(ScDocShell *pNewDocShell, const ScRangeList &rRangeList, ScDocumentUniquePtr pNewUndoDoc, const SvxBoxItem &rNewOuter, const SvxBoxInfoItem &rNewInner)
Definition: undoblk.cxx:2366
sal_uLong nEndChangeAction
Definition: undoblk.hxx:500
void DoChange(const bool bUndo)
Definition: undoblk.cxx:392
virtual void Undo() override
Definition: undoblk3.cxx:518
ScPatternAttr * pApplyPattern
Definition: undoblk.hxx:349
virtual void Undo() override
Definition: undoblk3.cxx:449
ScMarkData aMarkData
Definition: undoblk.hxx:201
virtual ~ScUndoUseScenario() override
Definition: undoblk.cxx:1678
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2333
ScMarkData aMarkData
Definition: undoblk.hxx:701
ScMarkData aMarkData
Definition: undoblk.hxx:153
ScUndoCut(ScDocShell *pNewDocShell, const ScRange &aRange, const ScAddress &aOldEnd, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc)
Definition: undoblk.cxx:817
virtual OUString GetComment() const override
Definition: undoblk.cxx:1989
ScMarkData aMarkData
Definition: undoblk.hxx:413
ScPasteFunc nFunction
Definition: undoblk.hxx:166
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:197
sal_uLong nStartChangeAction
Definition: undoblk.hxx:422
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:677
void DoChange(ScDocument *pRefDoc)
Definition: undoblk3.cxx:1313
virtual ~ScUndoDeleteContents() override
Definition: undoblk3.cxx:78
ScRange aSrcRange
Definition: undoblk.hxx:236
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:341
virtual OUString GetComment() const override
Definition: undoblk3.cxx:226
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2206
virtual ~ScUndoAutoFill() override
Definition: undoblk3.cxx:499
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1539
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:703
ScDocumentUniquePtr mpUndoDoc
Definition: undoblk.hxx:654
std::unique_ptr< sal_uInt16[]> pWhich
Definition: undoblk.hxx:910
void PaintArea(ScRange aRange, sal_uInt16 nExtFlags) const
Definition: undoblk.cxx:1255
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:529
FillCmd eFillCmd
Definition: undoblk.hxx:417
sal_uLong nEndChangeAction
Definition: undoblk.hxx:308
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk2.cxx:181
ScSizeMode
Definition: global.hxx:359
sal_uInt16 mnPaintExtFlags
Definition: undoblk.hxx:233
ScUndoReplace(ScDocShell *pNewDocShell, const ScMarkData &rMark, SCCOL nCurX, SCROW nCurY, SCTAB nCurZ, const OUString &rNewUndoStr, ScDocumentUniquePtr pNewUndoDoc, const SvxSearchItem *pItem)
Definition: undoblk3.cxx:914
sal_uLong nStartChangeAction
Definition: undoblk.hxx:499
void DoChange(const bool bUndo)
Definition: undoblk.cxx:141
ScMarkData aMarkData
Definition: undoblk.hxx:379
ScAddress aNewCursorPos
Definition: undoblk.hxx:558
ScDocumentUniquePtr xUndoDoc
Definition: undoblk.hxx:978
sal_uLong nEndChangeAction
Definition: undoblk.hxx:423
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1651
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1170
virtual void Undo() override
Definition: undoblk3.cxx:1122
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:2143
virtual void Undo() override
Definition: undoblk.cxx:2245
sal_uLong nStartChangeAction
Definition: undoblk.hxx:128
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1088
virtual void Redo() override
Definition: undoblk.cxx:2395
OUString aName
Definition: undoblk.hxx:680
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1769
virtual ~ScUndoDeleteMulti() override
Definition: undoblk.cxx:654
ScRange aExtendedRange
Definition: undoblk.hxx:156
virtual void Undo() override
Definition: undoblk.cxx:1525
ScPasteFunc nFunction
Definition: undoblk.hxx:310
double fStartValue
Definition: undoblk.hxx:419
ScRange aEffRange
Definition: undoblk.hxx:91
void DoChange(bool bUndo)
Definition: undoblk.cxx:967
virtual OUString GetComment() const override
Definition: undoblk3.cxx:1298
sal_uLong nEndChangeAction
Definition: undoblk.hxx:561
OUString aUndoStr
Definition: undoblk.hxx:496
sal_Int32 SCROW
Definition: types.hxx:18
virtual OUString GetComment() const override
Definition: undoblk3.cxx:372
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk2.cxx:175
virtual OUString GetComment() const override
Definition: undoblk3.cxx:503
void ChangeEditData(const bool bUndo)
Definition: undoblk3.cxx:423
virtual void Redo() override
Definition: undoblk3.cxx:182
ScRange aRange
Definition: undoblk.hxx:527
sal_uLong nStartChangeAction
Definition: undoblk.hxx:275
virtual OUString GetComment() const override
Definition: undoblk.cxx:2107
ScCellMergeOption maOption
Definition: undoblk.hxx:444
ScRange aRange
Definition: undoblk.hxx:303
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:155
virtual void Redo() override
Definition: undoblk.cxx:2065
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:759
void DoChange(const bool bUndo)
Definition: undoblk3.cxx:104
ScMarkData aMarkData
Definition: undoblk.hxx:343
void DoChange(const bool bUndo)
Definition: undoblk3.cxx:383
sal_uLong nEndChangeAction
Definition: undoblk.hxx:208
virtual void Redo() override
Definition: undoblk.cxx:2010
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:908
virtual OUString GetComment() const override
Definition: undoblk.cxx:2230
ScTabOpParam::Mode meMode
Definition: undoblk.hxx:534
void DoChange(bool bUndo) const
Definition: undoblk3.cxx:654
std::unique_ptr< SCTAB[]> pTabs
Definition: undoblk.hxx:94
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1492
virtual ~ScUndoDragDrop() override
Definition: undoblk.cxx:1225
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:475
virtual OUString GetComment() const override
Definition: undoblk.cxx:1229
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:903
SvxBoxItem * pLineOuter
Definition: undoblk.hxx:350
InsCellCmd
Definition: global.hxx:299
virtual void Redo() override
Definition: undoblk.cxx:778
virtual void Undo() override
Definition: undoblk.cxx:1912
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1859
void DoChange(ScDocument *pDoc)
Definition: undoblk.cxx:1578
ScUndoDragDrop(ScDocShell *pNewDocShell, const ScRange &rRange, const ScAddress &aNewDestPos, bool bNewCut, ScDocumentUniquePtr pUndoDocument, bool bScenario)
Definition: undoblk.cxx:1193
virtual OUString GetComment() const override
Definition: undoblk3.cxx:649
sal_uLong nEndChangeAction
Definition: undoblk.hxx:158
QPRO_FUNC_TYPE nType
Definition: qproform.cxx:401
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:306
ScUndoEnterMatrix(ScDocShell *pNewDocShell, const ScRange &rArea, ScDocumentUniquePtr pNewUndoDoc, const OUString &rForm)
Definition: undoblk.cxx:1883
virtual OUString GetComment() const override
Definition: undoblk.cxx:658
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:805
virtual OUString GetComment() const override
Definition: undoblk.cxx:2377
virtual OUString GetComment() const override
Definition: undoblk3.cxx:1208
virtual OUString GetComment() const override
Definition: undoblk.cxx:2161
virtual void Redo() override
Definition: undoblk3.cxx:1344
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1359
virtual OUString GetComment() const override
Definition: undoblk3.cxx:1117
void DoChange(ScDocument *pSrcDoc) const
Definition: undoblk.cxx:1512
virtual void Redo() override
Definition: undoblk.cxx:1933
ScMarkData aMarkData
Definition: undoblk.hxx:584
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:415
virtual void Redo() override
Definition: undoblk.cxx:2281
ScDocumentUniquePtr pRedoDoc
Definition: undoblk.hxx:203
std::unique_ptr< SCTAB[]> pScenarios
Definition: undoblk.hxx:96
std::unique_ptr< ScEditDataArray > mpDataArray
Definition: undoblk.hxx:346
std::unique_ptr< SvxSearchItem > pSearchItem
Definition: undoblk.hxx:498
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:2021
TransliterationFlags nTransliterationType
Definition: undoblk.hxx:888
virtual ~ScUndoSelectionAttr() override
Definition: undoblk3.cxx:360
void DoChange(const ScDocument *pDoc)
Definition: undoblk.cxx:1628
virtual ~ScUndoClearItems() override
Definition: undoblk.cxx:2103
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk.cxx:1545
SvxBoxInfoItem * pLineInner
Definition: undoblk.hxx:351
ScConversionParam maConvParam
Definition: undoblk.hxx:562
void SetDataSpans(const std::shared_ptr< DataSpansType > &pSpans)
Definition: undoblk3.cxx:89
virtual void Redo() override
Definition: undoblk.cxx:1573
DelCellCmd eCmd
Definition: undoblk.hxx:99
InsCellCmd eMoveMode
Definition: undoblk.hxx:170
virtual void Undo() override
Definition: undoblk.cxx:567
virtual ~ScUndoRefConversion() override
Definition: undoblk3.cxx:1292
void DoChange() const
Definition: undoblk.cxx:663
ScMarkData aMarkData
Definition: undoblk.hxx:272
std::unique_ptr< SdrUndoAction > pDrawUndo
Definition: undoblk.hxx:274
ScEditDataArray * GetDataArray()
Definition: undoblk3.cxx:378
virtual ~ScUndoIndent() override
Definition: undoblk.cxx:1985
ScDocumentUniquePtr pRedoDoc
Definition: undoblk.hxx:559
virtual void Undo() override
Definition: undoblk3.cxx:1249
virtual ~ScUndoMerge() override
Definition: undoblk3.cxx:644
ScAddress aCursorPos
Definition: undoblk.hxx:556
std::shared_ptr< DataSpansType > mpDataSpans
Definition: undoblk.hxx:269
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk.cxx:1488
ScUndoDeleteMulti(ScDocShell *pNewDocShell, bool bNewRows, bool bNeedsRefresh, SCTAB nNewTab, const std::vector< sc::ColRowSpan > &rSpans, ScDocumentUniquePtr pUndoDocument, std::unique_ptr< ScRefUndoData > pRefData)
Definition: undoblk.cxx:640
virtual void Redo() override
Definition: undoblk3.cxx:320
void SetChangeTrack()
Definition: undoblk.cxx:699
virtual void Redo() override
Definition: undoblk.cxx:2181
std::unique_ptr< SCTAB[]> pTabs
Definition: undoblk.hxx:61
ScUndoRefConversion(ScDocShell *pNewDocShell, const ScRange &aMarkRange, const ScMarkData &rMark, ScDocumentUniquePtr pNewUndoDoc, ScDocumentUniquePtr pNewRedoDoc, bool bNewMulti)
Definition: undoblk3.cxx:1278
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:347
sal_uLong nEndChangeAction
Definition: undoblk.hxx:64
sal_uLong nEndChangeAction
Definition: undoblk.hxx:129
virtual OUString GetComment() const override
Definition: undoblk.cxx:1507
void DoChange(const bool bUndo)
Definition: undoblk.cxx:846
virtual void Undo() override
Definition: undoblk3.cxx:1333
sal_uInt16 nNewSize
Definition: undoblk.hxx:387
virtual void Redo() override
Definition: undoblk3.cxx:1259
ScAddress aCursorPos
Definition: undoblk.hxx:494
virtual void Repeat(SfxRepeatTarget &rTarget) override
Definition: undoblk3.cxx:1158
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:497
std::vector< sc::ColRowSpan > maSpans
Definition: undoblk.hxx:127
FillDateCmd eFillDateCmd
Definition: undoblk.hxx:418
virtual void Redo() override
Definition: undoblk.cxx:895
virtual bool CanRepeat(SfxRepeatTarget &rTarget) const override
Definition: undoblk3.cxx:1162
sal_Int16 SCTAB
Definition: types.hxx:23
std::unique_ptr< ScRefUndoData > pRefUndoData
Definition: undoblk.hxx:205
virtual OUString GetComment() const override
Definition: undoblk.cxx:2045
virtual void Redo() override
Definition: undoblk3.cxx:1046
virtual ~ScUndoConditionalFormat() override
Definition: undoblk.cxx:1559
virtual ~ScUndoTransliterate() override
Definition: undoblk.cxx:2041
ScDocumentUniquePtr pUndoDoc
Definition: undoblk.hxx:746
bool bRedoFilled
Definition: undoblk.hxx:209