LibreOffice Module svx (master) 1
svdundo.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
20#pragma once
21
22#include <config_options.h>
23#include <sal/config.h>
24
25#include <memory>
26#include <vector>
27
28#include <editeng/outlobj.hxx>
29#include <svl/itemset.hxx>
30#include <svl/undo.hxx>
31#include <svl/style.hxx>
32#include <tools/gen.hxx>
33#include <svx/svdtypes.hxx>
34#include <svx/svdsob.hxx>
35#include <svx/svxdllapi.h>
36#include <unotools/resmgr.hxx>
37
38class SfxItemSet;
39class SfxPoolItem;
40class SfxStyleSheet;
41class SdrView;
42class SdrPageView;
43class SdrModel;
44class SdrObject;
45class SdrPage;
46class SdrObjList;
47class SdrLayer;
48class SdrLayerAdmin;
49class SdrObjGeoData;
51
52namespace svx { namespace diagram {
53 class DiagramDataState;
54}}
55
61{
62protected:
65
66protected:
67 SdrUndoAction(SdrModel& rNewMod);
68
69public:
70 virtual ~SdrUndoAction() override;
71
72 virtual bool CanRepeat(SfxRepeatTarget& rView) const override;
73 virtual void Repeat(SfxRepeatTarget& rView) override;
74
75 virtual OUString GetRepeatComment(SfxRepeatTarget& rView) const override;
76 virtual OUString GetSdrRepeatComment() const;
77
78 virtual bool CanSdrRepeat(SdrView& rView) const;
79 virtual void SdrRepeat(SdrView& rView);
80
82 ViewShellId GetViewShellId() const override;
83};
84
93{
94 std::vector<std::unique_ptr<SdrUndoAction>> maActions;
95
96 // No expanded description of the Action (contains %O)
97 OUString aComment;
99
101
102public:
103 SdrUndoGroup(SdrModel& rNewMod);
104 virtual ~SdrUndoGroup() override;
105
106 sal_Int32 GetActionCount() const { return maActions.size(); }
107 SdrUndoAction* GetAction(sal_Int32 nNum) const { return maActions[nNum].get(); }
108 void AddAction(std::unique_ptr<SdrUndoAction> pAct);
109
110 void SetComment(const OUString& rStr) { aComment=rStr; }
111 void SetObjDescription(const OUString& rStr) { aObjDescription=rStr; }
112 virtual OUString GetComment() const override;
113 virtual OUString GetSdrRepeatComment() const override;
114
115 virtual void Undo() override;
116 virtual void Redo() override;
117
118 virtual bool CanSdrRepeat(SdrView& rView) const override;
119 virtual void SdrRepeat(SdrView& rView) override;
120 void SetRepeatFunction(SdrRepeatFunc eFunc) { eFunction=eFunc; }
121};
122
128{
129protected:
131
132protected:
133 SdrUndoObj(SdrObject& rNewObj);
134 virtual ~SdrUndoObj() override;
135
136 OUString ImpGetDescriptionStr(TranslateId pStrCacheID, bool bRepeat = false) const;
137
138 [[nodiscard]] static OUString GetDescriptionStringForObject( const SdrObject& _rForObject, TranslateId pStrCacheID, bool bRepeat = false );
139
140 // #94278# new method for evtl. PageChange at UNDO/REDO
141 void ImpShowPageOfThisObject();
142};
143
151{
152 std::optional<SfxItemSet> moUndoSet;
153 std::optional<SfxItemSet> moRedoSet;
154
155 // FIXME: Or should we better remember the StyleSheetNames?
160
161 // When assigning TextItems to a drawing object with text:
163 // #i8508#
164 // The text rescue mechanism needs also to be implemented for redo actions.
166
167 // If we have a group object:
168 std::unique_ptr<SdrUndoGroup> pUndoGroup;
169
170protected:
171 // Helper to ensure StyleSheet is in pool (provided by SdrModel from SdrObject)
172 static void ensureStyleSheetInStyleSheetPool(SfxStyleSheetBasePool& rStyleSheetPool, SfxStyleSheet& rSheet);
173
174public:
175 SdrUndoAttrObj(SdrObject& rNewObj, bool bStyleSheet1 = false, bool bSaveText = false);
176 virtual ~SdrUndoAttrObj() override;
177 virtual void Undo() override;
178 virtual void Redo() override;
179
180 virtual OUString GetComment() const override;
181 virtual OUString GetSdrRepeatComment() const override;
182};
183
190{
191 Size aDistance; // Distance by which we move
192
193public:
194 SdrUndoMoveObj(SdrObject& rNewObj, const Size& rDist): SdrUndoObj(rNewObj),aDistance(rDist) {}
195 virtual ~SdrUndoMoveObj() override;
196
197 virtual void Undo() override;
198 virtual void Redo() override;
199
200 virtual OUString GetComment() const override;
201 virtual OUString GetSdrRepeatComment() const override;
202
203 virtual void SdrRepeat(SdrView& rView) override;
204 virtual bool CanSdrRepeat(SdrView& rView) const override;
205};
206
213{
214 std::unique_ptr<SdrObjGeoData> pUndoGeo;
215 std::unique_ptr<SdrObjGeoData> pRedoGeo;
216 // If we have a group object:
217 std::unique_ptr<SdrUndoGroup> pUndoGroup;
220
221public:
222 SdrUndoGeoObj(SdrObject& rNewObj);
223 virtual ~SdrUndoGeoObj() override;
224
225 virtual void Undo() override;
226 virtual void Redo() override;
227
228 virtual OUString GetComment() const override;
229 void SetSkipChangeLayout(bool bOn) { mbSkipChangeLayout=bOn; }
230};
231
232// Diagram ModelData changes
234{
235 std::shared_ptr< svx::diagram::DiagramDataState > m_aStartState;
236 std::shared_ptr< svx::diagram::DiagramDataState > m_aEndState;
237
238 void implUndoRedo(bool bUndo);
239
240public:
241 SdrUndoDiagramModelData(SdrObject& rNewObj, std::shared_ptr< svx::diagram::DiagramDataState >& rStartState);
242 virtual ~SdrUndoDiagramModelData() override;
243
244 virtual void Undo() override;
245 virtual void Redo() override;
246
247 virtual OUString GetComment() const override;
248};
249
256 class ObjListListener;
257 friend class ObjListListener;
258
259protected:
261 sal_uInt32 nOrdNum;
262
263protected:
264 SdrUndoObjList(SdrObject& rNewObj, bool bOrdNumDirect);
265 virtual ~SdrUndoObjList() override;
266};
267
276{
277public:
278 SdrUndoRemoveObj(SdrObject& rNewObj, bool bOrdNumDirect = false)
279 : SdrUndoObjList(rNewObj,bOrdNumDirect) {}
280
281 virtual void Undo() override;
282 virtual void Redo() override;
283
284 virtual ~SdrUndoRemoveObj() override;
285};
286
294{
295public:
296 SdrUndoInsertObj(SdrObject& rNewObj, bool bOrdNumDirect = false)
297 : SdrUndoObjList(rNewObj,bOrdNumDirect) {}
298
299 virtual void Undo() override;
300 virtual void Redo() override;
301};
302
309{
310public:
311 SdrUndoDelObj(SdrObject& rNewObj, bool bOrdNumDirect = false);
312
313 virtual void Undo() override;
314 virtual void Redo() override;
315
316 virtual OUString GetComment() const override;
317 virtual OUString GetSdrRepeatComment() const override;
318
319 virtual void SdrRepeat(SdrView& rView) override;
320 virtual bool CanSdrRepeat(SdrView& rView) const override;
321};
322
329{
330public:
331 SdrUndoNewObj(SdrObject& rNewObj, bool bOrdNumDirect = false)
332 : SdrUndoInsertObj(rNewObj,bOrdNumDirect) {}
333
334 virtual void Undo() override;
335 virtual void Redo() override;
336
337 virtual OUString GetComment() const override;
338
339 static OUString GetComment(const SdrObject& _rForObject);
340};
341
348{
351
352public:
353 SdrUndoReplaceObj(SdrObject& rOldObj1, SdrObject& rNewObj1);
354 virtual ~SdrUndoReplaceObj() override;
355
356 virtual void Undo() override;
357 virtual void Redo() override;
358};
359
365class SdrUndoCopyObj final : public SdrUndoNewObj
366{
367public:
368 SdrUndoCopyObj(SdrObject& rNewObj, bool bOrdNumDirect)
369 : SdrUndoNewObj(rNewObj,bOrdNumDirect) {}
370
371 virtual OUString GetComment() const override;
372};
373
374class SdrUndoObjOrdNum final : public SdrUndoObj
375{
376 sal_uInt32 nOldOrdNum;
377 sal_uInt32 nNewOrdNum;
378
379public:
380 SdrUndoObjOrdNum(SdrObject& rNewObj, sal_uInt32 nOldOrdNum1, sal_uInt32 nNewOrdNum1);
381
382 virtual void Undo() override;
383 virtual void Redo() override;
384
385 virtual OUString GetComment() const override;
386};
387
388class SdrUndoSort final : public SdrUndoAction
389{
390private:
391 ::std::vector<sal_Int32> m_OldSortOrder;
392 ::std::vector<sal_Int32> m_NewSortOrder;
393 sal_uInt16 const m_nPage;
394
395 void Do(::std::vector<sal_Int32> & rSortOrder);
396
397public:
398 SdrUndoSort(const SdrPage & rPage,
399 ::std::vector<sal_Int32> const& rSortOrder);
400
401 virtual void Undo() override;
402 virtual void Redo() override;
403
404 virtual OUString GetComment() const override;
405};
406
407// #i11702#
408
410{
413
414public:
415 SdrUndoObjectLayerChange(SdrObject& rObj, SdrLayerID aOldLayer, SdrLayerID aNewLayer);
416
417 virtual void Undo() override;
418 virtual void Redo() override;
419};
420
422{
429 sal_Int32 mnText;
430
431public:
432 SdrUndoObjSetText(SdrObject& rNewObj, sal_Int32 nText );
433 virtual ~SdrUndoObjSetText() override;
434
435 bool IsDifferent() const;
436 void AfterSetText();
437
438 virtual void Undo() override;
439 virtual void Redo() override;
440
441 virtual OUString GetComment() const override;
442 virtual OUString GetSdrRepeatComment() const override;
443
444 virtual void SdrRepeat(SdrView& rView) override;
445 virtual bool CanSdrRepeat(SdrView& rView) const override;
446};
447
452class SdrUndoObjStrAttr final : public SdrUndoObj
453{
454public:
455 enum class ObjStrAttrType
456 {
457 Name,
458 Title,
459 Description
460 };
461
463 const ObjStrAttrType eObjStrAttr,
464 OUString sOldStr,
465 OUString sNewStr);
466
467 virtual void Undo() override;
468 virtual void Redo() override;
469
470 virtual OUString GetComment() const override;
471
472private:
474 const OUString msOldStr;
475 const OUString msNewStr;
476
477};
478
479
480/*
481 * Layer
482 */
483
489{
490protected:
493 sal_uInt16 nNum;
495
496protected:
497 SdrUndoLayer(sal_uInt16 nLayerNum, SdrLayerAdmin& rNewLayerAdmin, SdrModel& rNewModel);
498 virtual ~SdrUndoLayer() override;
499};
500
506class SdrUndoNewLayer final : public SdrUndoLayer
507{
508public:
509 SdrUndoNewLayer(sal_uInt16 nLayerNum, SdrLayerAdmin& rNewLayerAdmin, SdrModel& rNewModel)
510 : SdrUndoLayer(nLayerNum,rNewLayerAdmin,rNewModel) {}
511
512 virtual void Undo() override;
513 virtual void Redo() override;
514
515 virtual OUString GetComment() const override;
516};
517
523class SdrUndoDelLayer final : public SdrUndoLayer
524{
525public:
526 SdrUndoDelLayer(sal_uInt16 nLayerNum, SdrLayerAdmin& rNewLayerAdmin, SdrModel& rNewModel)
527 : SdrUndoLayer(nLayerNum,rNewLayerAdmin,rNewModel) { bItsMine=true; }
528
529 virtual void Undo() override;
530 virtual void Redo() override;
531
532 virtual OUString GetComment() const override;
533};
534
535/*
536 * Pages
537 */
538
544{
545protected:
547
548protected:
549 void ImpInsertPage(sal_uInt16 nNum);
550 void ImpRemovePage(sal_uInt16 nNum);
551 void ImpMovePage(sal_uInt16 nOldNum, sal_uInt16 nNewNum);
552
553protected:
554 SdrUndoPage(SdrPage& rNewPg);
555 ~SdrUndoPage();
556
557 static OUString ImpGetDescriptionStr(TranslateId pStrCacheID);
558};
559
565{
566protected:
567 sal_uInt16 nPageNum;
568
569protected:
570 SdrUndoPageList(SdrPage& rNewPg);
571 virtual ~SdrUndoPageList() override;
572};
573
580{
581 // When deleting a MasterPage, we remember all relations of the
582 // Character Page with the MasterPage in this UndoGroup.
583 std::unique_ptr<SdrUndoGroup> pUndoGroup;
584 std::unique_ptr<SfxPoolItem> mpFillBitmapItem;
586
587public:
588 SdrUndoDelPage(SdrPage& rNewPg);
589 virtual ~SdrUndoDelPage() override;
590
591 virtual void Undo() override;
592 virtual void Redo() override;
593
594 virtual OUString GetComment() const override;
595 virtual OUString GetSdrRepeatComment() const override;
596
597 virtual void SdrRepeat(SdrView& rView) override;
598 virtual bool CanSdrRepeat(SdrView& rView) const override;
599
600private:
601 void queryFillBitmap(const SfxItemSet &rItemSet);
602 void clearFillBitmap();
603 void restoreFillBitmap();
604};
605
612{
613public:
615
616 virtual void Undo() override;
617 virtual void Redo() override;
618
619 virtual OUString GetComment() const override;
620};
621
627class SdrUndoCopyPage final : public SdrUndoNewPage
628{
629public:
631
632 virtual OUString GetComment() const override;
633 virtual OUString GetSdrRepeatComment() const override;
634
635 virtual void SdrRepeat(SdrView& rView) override;
636 virtual bool CanSdrRepeat(SdrView& rView) const override;
637};
638
644class SdrUndoSetPageNum final : public SdrUndoPage
645{
646 sal_uInt16 nOldPageNum;
647 sal_uInt16 nNewPageNum;
648
649public:
650 SdrUndoSetPageNum(SdrPage& rNewPg, sal_uInt16 nOldPageNum1, sal_uInt16 nNewPageNum1)
651 : SdrUndoPage(rNewPg),nOldPageNum(nOldPageNum1),nNewPageNum(nNewPageNum1) {}
652
653 virtual void Undo() override;
654 virtual void Redo() override;
655
656 virtual OUString GetComment() const override;
657};
658
659
660/*
661 * Masterpages
662 */
663
670{
671protected:
675
676protected:
677 SdrUndoPageMasterPage(SdrPage& rChangedPage);
678
679public:
681};
682
689{
690public:
692
693 virtual void Undo() override;
694 virtual void Redo() override;
695
696 virtual OUString GetComment() const override;
697};
698
705{
709
710public:
712
713 virtual void Undo() override;
714 virtual void Redo() override;
715
716 virtual OUString GetComment() const override;
717};
718
719
726{
727public:
728 // Shapes
729 virtual ~SdrUndoFactory();
730 virtual std::unique_ptr<SdrUndoAction> CreateUndoMoveObject( SdrObject& rObject, const Size& rDist );
731 virtual std::unique_ptr<SdrUndoAction> CreateUndoGeoObject( SdrObject& rObject );
732 virtual std::unique_ptr<SdrUndoAction> CreateUndoAttrObject( SdrObject& rObject, bool bStyleSheet1 = false, bool bSaveText = false );
733 virtual std::unique_ptr<SdrUndoAction> CreateUndoRemoveObject(SdrObject& rObject);
734 virtual std::unique_ptr<SdrUndoAction> CreateUndoInsertObject( SdrObject& rObject, bool bOrdNumDirect = false);
735 virtual std::unique_ptr<SdrUndoAction> CreateUndoDeleteObject( SdrObject& rObject, bool bOrdNumDirect = false);
736 virtual std::unique_ptr<SdrUndoAction> CreateUndoNewObject( SdrObject& rObject, bool bOrdNumDirect = false);
737 virtual std::unique_ptr<SdrUndoAction> CreateUndoCopyObject( SdrObject& rObject, bool bOrdNumDirect = false);
738
739 virtual std::unique_ptr<SdrUndoAction> CreateUndoObjectOrdNum( SdrObject& rObject, sal_uInt32 nOldOrdNum1, sal_uInt32 nNewOrdNum1);
740
741 virtual std::unique_ptr<SdrUndoAction> CreateUndoReplaceObject( SdrObject& rOldObject, SdrObject& rNewObject );
742 virtual std::unique_ptr<SdrUndoAction> CreateUndoObjectLayerChange( SdrObject& rObject, SdrLayerID aOldLayer, SdrLayerID aNewLayer );
743 virtual std::unique_ptr<SdrUndoAction> CreateUndoObjectSetText( SdrObject& rNewObj, sal_Int32 nText );
744
745 // Implement Title/Description Elements UI for Writer text frames, graphics and embedded objects (#i73249#)
746 static std::unique_ptr<SdrUndoAction> CreateUndoObjectStrAttr( SdrObject& rObject,
747 SdrUndoObjStrAttr::ObjStrAttrType eObjStrAttrType,
748 const OUString& sOldStr,
749 const OUString& sNewStr );
750
751 // Diagram ModelData changes
752 virtual std::unique_ptr<SdrUndoAction> CreateUndoDiagramModelData( SdrObject& rObject, std::shared_ptr< svx::diagram::DiagramDataState >& rStartState );
753
754 // Layer
755 virtual std::unique_ptr<SdrUndoAction> CreateUndoNewLayer(sal_uInt16 nLayerNum, SdrLayerAdmin& rNewLayerAdmin, SdrModel& rNewModel);
756 virtual std::unique_ptr<SdrUndoAction> CreateUndoDeleteLayer(sal_uInt16 nLayerNum, SdrLayerAdmin& rNewLayerAdmin, SdrModel& rNewModel);
757
758 // Page
759 virtual std::unique_ptr<SdrUndoAction> CreateUndoDeletePage(SdrPage& rPage);
760 virtual std::unique_ptr<SdrUndoAction> CreateUndoNewPage(SdrPage& rPage);
761 virtual std::unique_ptr<SdrUndoAction> CreateUndoCopyPage(SdrPage& rPage);
762 virtual std::unique_ptr<SdrUndoAction> CreateUndoSetPageNum(SdrPage& rNewPg, sal_uInt16 nOldPageNum1, sal_uInt16 nNewPageNum1);
763 static std::unique_ptr<SdrUndoAction> CreateUndoSort(SdrPage& rPage, ::std::vector<sal_Int32> const& rSortOrder);
764
765 // Master page
766 virtual std::unique_ptr<SdrUndoAction> CreateUndoPageRemoveMasterPage(SdrPage& rChangedPage);
767 virtual std::unique_ptr<SdrUndoAction> CreateUndoPageChangeMasterPage(SdrPage& rChangedPage);
768};
769
770/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
All geometrical data of an arbitrary object for use in undo/redo.
Definition: svdobj.hxx:174
Abstract DrawObject.
Definition: svdobj.hxx:260
A SdrPage contains exactly one SdrObjList and a description of the physical page dimensions (size / m...
Definition: svdpage.hxx:377
Abstract base class (ABC) for all UndoActions of DrawingEngine.
Definition: svdundo.hxx:61
SdrModel & rMod
Definition: svdundo.hxx:63
ViewShellId m_nViewShellId
Definition: svdundo.hxx:64
Changing the object attributes.
Definition: svdundo.hxx:151
std::unique_ptr< SdrUndoGroup > pUndoGroup
Definition: svdundo.hxx:168
bool bStyleSheet
Definition: svdundo.hxx:158
std::optional< SfxItemSet > moRedoSet
Definition: svdundo.hxx:153
std::optional< SfxItemSet > moUndoSet
Definition: svdundo.hxx:152
rtl::Reference< SfxStyleSheetBase > mxUndoStyleSheet
Definition: svdundo.hxx:156
rtl::Reference< SfxStyleSheetBase > mxRedoStyleSheet
Definition: svdundo.hxx:157
bool bHaveToTakeRedoSet
Definition: svdundo.hxx:159
std::optional< OutlinerParaObject > pTextRedo
Definition: svdundo.hxx:165
std::optional< OutlinerParaObject > pTextUndo
Definition: svdundo.hxx:162
Copying an Object.
Definition: svdundo.hxx:366
SdrUndoCopyObj(SdrObject &rNewObj, bool bOrdNumDirect)
Definition: svdundo.hxx:368
virtual OUString GetComment() const override
Definition: svdundo.cxx:875
Copying a Page.
Definition: svdundo.hxx:628
virtual void SdrRepeat(SdrView &rView) override
Definition: svdundo.cxx:1524
SdrUndoCopyPage(SdrPage &rNewPg)
Definition: svdundo.hxx:630
virtual bool CanSdrRepeat(SdrView &rView) const override
Definition: svdundo.cxx:1529
virtual OUString GetComment() const override
Definition: svdundo.cxx:1514
virtual OUString GetSdrRepeatComment() const override
Definition: svdundo.cxx:1519
Deleting a Layer.
Definition: svdundo.hxx:524
virtual OUString GetComment() const override
Definition: svdundo.cxx:1275
SdrUndoDelLayer(sal_uInt16 nLayerNum, SdrLayerAdmin &rNewLayerAdmin, SdrModel &rNewModel)
Definition: svdundo.hxx:526
virtual void Redo() override
Definition: svdundo.cxx:1266
virtual void Undo() override
Definition: svdundo.cxx:1259
Deleting an Object.
Definition: svdundo.hxx:309
Deleting a Page.
Definition: svdundo.hxx:580
std::unique_ptr< SfxPoolItem > mpFillBitmapItem
Definition: svdundo.hxx:584
bool mbHasFillBitmap
Definition: svdundo.hxx:585
std::unique_ptr< SdrUndoGroup > pUndoGroup
Definition: svdundo.hxx:583
std::shared_ptr< svx::diagram::DiagramDataState > m_aStartState
Definition: svdundo.hxx:235
std::shared_ptr< svx::diagram::DiagramDataState > m_aEndState
Definition: svdundo.hxx:236
The SdrUndoFactory can be set and retrieved from the SdrModel.
Definition: svdundo.hxx:726
Changing the geometry of an object.
Definition: svdundo.hxx:213
std::unique_ptr< SdrUndoGroup > pUndoGroup
Definition: svdundo.hxx:217
std::unique_ptr< SdrObjGeoData > pUndoGeo
Definition: svdundo.hxx:214
void SetSkipChangeLayout(bool bOn)
Definition: svdundo.hxx:229
std::unique_ptr< SdrObjGeoData > pRedoGeo
Definition: svdundo.hxx:215
bool mbSkipChangeLayout
If we have a table object, should its layout change?
Definition: svdundo.hxx:219
Aggregation of arbitrarily many UndoActions to a single UndoAction.
Definition: svdundo.hxx:93
SdrUndoAction * GetAction(sal_Int32 nNum) const
Definition: svdundo.hxx:107
OUString aObjDescription
Definition: svdundo.hxx:98
OUString aComment
Definition: svdundo.hxx:97
void SetRepeatFunction(SdrRepeatFunc eFunc)
Definition: svdundo.hxx:120
sal_Int32 GetActionCount() const
Definition: svdundo.hxx:106
void SetComment(const OUString &rStr)
Definition: svdundo.hxx:110
void SetObjDescription(const OUString &rStr)
Definition: svdundo.hxx:111
std::vector< std::unique_ptr< SdrUndoAction > > maActions
Definition: svdundo.hxx:94
SdrRepeatFunc eFunction
Definition: svdundo.hxx:100
Inserting Objects into an ObjectList.
Definition: svdundo.hxx:294
SdrUndoInsertObj(SdrObject &rNewObj, bool bOrdNumDirect=false)
Definition: svdundo.hxx:296
Abstract base class for all UndoActions that have something to do with SdrLayer.
Definition: svdundo.hxx:489
bool bItsMine
Definition: svdundo.hxx:494
sal_uInt16 nNum
Definition: svdundo.hxx:493
SdrLayer * pLayer
Definition: svdundo.hxx:491
SdrLayerAdmin * pLayerAdmin
Definition: svdundo.hxx:492
SdrUndoLayer(sal_uInt16 nLayerNum, SdrLayerAdmin &rNewLayerAdmin, SdrModel &rNewModel)
Definition: svdundo.cxx:1220
virtual ~SdrUndoLayer() override
Definition: svdundo.cxx:1229
Only moving of an object.
Definition: svdundo.hxx:190
SdrUndoMoveObj(SdrObject &rNewObj, const Size &rDist)
Definition: svdundo.hxx:194
Inserting a new Layer.
Definition: svdundo.hxx:507
SdrUndoNewLayer(sal_uInt16 nLayerNum, SdrLayerAdmin &rNewLayerAdmin, SdrModel &rNewModel)
Definition: svdundo.hxx:509
virtual void Redo() override
Definition: svdundo.cxx:1246
virtual void Undo() override
Definition: svdundo.cxx:1237
virtual OUString GetComment() const override
Definition: svdundo.cxx:1253
Inserting a NEW Object.
Definition: svdundo.hxx:329
SdrUndoNewObj(SdrObject &rNewObj, bool bOrdNumDirect=false)
Definition: svdundo.hxx:331
Inserting a new Page.
Definition: svdundo.hxx:612
SdrUndoNewPage(SdrPage &rNewPg)
Definition: svdundo.hxx:614
Manipulation of an ObjList: New Object, DeleteObj, SetObjZLevel, Grouping, ... Abstract base class.
Definition: svdundo.hxx:255
sal_uInt32 nOrdNum
Definition: svdundo.hxx:261
SdrObjList * pObjList
Definition: svdundo.hxx:260
sal_uInt32 nNewOrdNum
Definition: svdundo.hxx:377
virtual OUString GetComment() const override
Definition: svdundo.cxx:938
virtual void Redo() override
Definition: svdundo.cxx:924
virtual void Undo() override
Definition: svdundo.cxx:910
sal_uInt32 nOldOrdNum
Definition: svdundo.hxx:376
SdrUndoObjOrdNum(SdrObject &rNewObj, sal_uInt32 nOldOrdNum1, sal_uInt32 nNewOrdNum1)
Definition: svdundo.cxx:903
std::optional< OutlinerParaObject > pNewText
Definition: svdundo.hxx:426
bool bNewTextAvailable
Definition: svdundo.hxx:427
sal_Int32 mnText
Definition: svdundo.hxx:429
std::optional< OutlinerParaObject > pOldText
Definition: svdundo.hxx:424
Implement Title/Description Elements UI for Writer text frames, graphics and embedded objects (#i7324...
Definition: svdundo.hxx:453
const OUString msOldStr
Definition: svdundo.hxx:474
const OUString msNewStr
Definition: svdundo.hxx:475
virtual void Undo() override
Definition: svdundo.cxx:1163
virtual OUString GetComment() const override
Definition: svdundo.cxx:1199
SdrUndoObjStrAttr(SdrObject &rNewObj, const ObjStrAttrType eObjStrAttr, OUString sOldStr, OUString sNewStr)
Definition: svdundo.cxx:1152
const ObjStrAttrType meObjStrAttr
Definition: svdundo.hxx:473
virtual void Redo() override
Definition: svdundo.cxx:1181
Abstract base class for all UndoActions that handle objects.
Definition: svdundo.hxx:128
rtl::Reference< SdrObject > mxObj
Definition: svdundo.hxx:130
Changing the MasterPageDescriptor (e.g.
Definition: svdundo.hxx:705
virtual void Undo() override
Definition: svdundo.cxx:1598
virtual void Redo() override
Definition: svdundo.cxx:1617
sal_uInt16 maNewMasterPageNumber
Definition: svdundo.hxx:708
virtual OUString GetComment() const override
Definition: svdundo.cxx:1628
SdrUndoPageChangeMasterPage(SdrPage &rChangedPage)
Definition: svdundo.cxx:1591
ABC for manipulation of a PageList: New Page, DeletePage, MovePage (ChangePageNum).
Definition: svdundo.hxx:565
sal_uInt16 nPageNum
Definition: svdundo.hxx:567
ABC for all UndoActions that have something to do with MasterPage relationships.
Definition: svdundo.hxx:670
UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) virtual ~SdrUndoPageMasterPage() override
SdrUndoPageMasterPage(SdrPage &rChangedPage)
Definition: svdundo.cxx:1550
SdrLayerIDSet maOldSet
Definition: svdundo.hxx:673
sal_uInt16 maOldMasterPageNumber
Definition: svdundo.hxx:674
Removal of a MasterPage from a Character Page.
Definition: svdundo.hxx:689
virtual void Redo() override
Definition: svdundo.cxx:1581
virtual void Undo() override
Definition: svdundo.cxx:1572
SdrUndoPageRemoveMasterPage(SdrPage &rChangedPage)
Definition: svdundo.cxx:1567
virtual OUString GetComment() const override
Definition: svdundo.cxx:1586
ABC for all UndoActions that have something to do with SdrPages.
Definition: svdundo.hxx:544
static OUString ImpGetDescriptionStr(TranslateId pStrCacheID)
Definition: svdundo.cxx:1339
SdrUndoPage(SdrPage &rNewPg)
Definition: svdundo.cxx:1281
void ImpInsertPage(sal_uInt16 nNum)
Definition: svdundo.cxx:1289
void ImpMovePage(sal_uInt16 nOldNum, sal_uInt16 nNewNum)
Definition: svdundo.cxx:1323
void ImpRemovePage(sal_uInt16 nNum)
Definition: svdundo.cxx:1305
rtl::Reference< SdrPage > mxPage
Definition: svdundo.hxx:546
Removing an Object from an ObjectList.
Definition: svdundo.hxx:276
SdrUndoRemoveObj(SdrObject &rNewObj, bool bOrdNumDirect=false)
Definition: svdundo.hxx:278
Replacing an Object.
Definition: svdundo.hxx:348
SdrObjList * pObjList
Definition: svdundo.hxx:349
rtl::Reference< SdrObject > mxNewObj
Definition: svdundo.hxx:350
Moving a Page within the List.
Definition: svdundo.hxx:645
SdrUndoSetPageNum(SdrPage &rNewPg, sal_uInt16 nOldPageNum1, sal_uInt16 nNewPageNum1)
Definition: svdundo.hxx:650
sal_uInt16 nOldPageNum
Definition: svdundo.hxx:646
virtual void Redo() override
Definition: svdundo.cxx:1540
virtual OUString GetComment() const override
Definition: svdundo.cxx:1545
sal_uInt16 nNewPageNum
Definition: svdundo.hxx:647
virtual void Undo() override
Definition: svdundo.cxx:1535
virtual void Redo() override
Definition: svdundo.cxx:976
void Do(::std::vector< sal_Int32 > &rSortOrder)
Definition: svdundo.cxx:957
::std::vector< sal_Int32 > m_NewSortOrder
Definition: svdundo.hxx:392
SdrUndoSort(const SdrPage &rPage, ::std::vector< sal_Int32 > const &rSortOrder)
Definition: svdundo.cxx:943
sal_uInt16 const m_nPage
Definition: svdundo.hxx:393
virtual OUString GetComment() const override
Definition: svdundo.cxx:981
virtual void Undo() override
Definition: svdundo.cxx:971
::std::vector< sal_Int32 > m_OldSortOrder
Definition: svdundo.hxx:391
virtual void Repeat(SfxRepeatTarget &)
virtual OUString GetRepeatComment(SfxRepeatTarget &) const
virtual ViewShellId GetViewShellId() const
virtual void Redo()
virtual void Undo()
virtual OUString GetComment() const
virtual bool CanRepeat(SfxRepeatTarget &) const
Title
SdrRepeatFunc
Definition: svdtypes.hxx:66
#define SVXCORE_DLLPUBLIC
Definition: svxdllapi.h:35
o3tl::enumarray< SvxBoxItemLine, sal_uInt16 > aDistance
OUString Name