DDraceNetwork Documentation
Loading...
Searching...
No Matches
editor_actions.h
Go to the documentation of this file.
1#ifndef GAME_EDITOR_EDITOR_ACTIONS_H
2#define GAME_EDITOR_EDITOR_ACTIONS_H
3
4#include "editor_action.h"
5
13#include <game/mapitems.h>
14
15#include <memory>
16#include <string>
17#include <vector>
18
19class CEditorMap;
21
23{
24public:
25 CEditorActionLayerBase(CEditorMap *pMap, int GroupIndex, int LayerIndex);
26
27protected:
30 std::shared_ptr<CLayer> m_pLayer;
31};
32
34{
35public:
36 CEditorBrushDrawAction(CEditorMap *pMap, int Group);
37
38 void Undo() override;
39 void Redo() override;
40 bool IsEmpty() override;
41
42private:
44 // m_vTileChanges is a list of changes for each layer that was modified.
45 // The std::pair is used to pair one layer (index) with its history (2D map).
46 // EditorTileStateChangeHistory<T> is a 2D map, storing a change item at a specific y,x position.
47 std::vector<std::pair<int, EditorTileStateChangeHistory<STileStateChange>>> m_vTileChanges;
52
55
56 void Apply(bool Undo);
57 void SetInfos();
58};
59
60// ---------------------------------------------------------
61
63{
64public:
65 CEditorActionQuadPlace(CEditorMap *pMap, int GroupIndex, int LayerIndex, std::vector<CQuad> &vBrush);
66
67 void Undo() override;
68 void Redo() override;
69
70private:
71 std::vector<CQuad> m_vBrush;
72};
73
75{
76public:
77 CEditorActionSoundPlace(CEditorMap *pMap, int GroupIndex, int LayerIndex, std::vector<CSoundSource> &vBrush);
78
79 void Undo() override;
80 void Redo() override;
81
82private:
83 std::vector<CSoundSource> m_vBrush;
84};
85
86// -------------------------------------------------------------
87
89{
90public:
91 CEditorActionDeleteQuad(CEditorMap *pMap, int GroupIndex, int LayerIndex, std::vector<int> const &vQuadsIndices, std::vector<CQuad> const &vDeletedQuads);
92
93 void Undo() override;
94 void Redo() override;
95
96private:
97 std::vector<int> m_vQuadsIndices;
98 std::vector<CQuad> m_vDeletedQuads;
99};
100
101// -------------------------------------------------------------
102
104{
105public:
106 CEditorActionEditQuadPoint(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, std::vector<CPoint> const &vPreviousPoints, std::vector<CPoint> const &vCurrentPoints);
107
108 void Undo() override;
109 void Redo() override;
110
111private:
113 std::vector<CPoint> m_vPreviousPoints;
114 std::vector<CPoint> m_vCurrentPoints;
115
116 void Apply(const std::vector<CPoint> &vValue);
117};
118
120{
121public:
122 CEditorActionEditQuadColor(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, std::vector<CColor> const &vPreviousColors, std::vector<CColor> const &vCurrentColors);
123
124 void Undo() override;
125 void Redo() override;
126
127private:
129 std::vector<CColor> m_vPreviousColors;
130 std::vector<CColor> m_vCurrentColors;
131
132 void Apply(std::vector<CColor> &vValue);
133};
134
136{
137public:
138 CEditorActionEditQuadProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, EQuadProp Prop, int Previous, int Current);
139
140 void Undo() override;
141 void Redo() override;
142
143private:
148
149 void Apply(int Value);
150};
151
153{
154public:
155 CEditorActionEditQuadPointProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, int PointIndex, EQuadPointProp Prop, int Previous, int Current);
156
157 void Undo() override;
158 void Redo() override;
159
160private:
166
167 void Apply(int Value);
168};
169
170// -------------------------------------------------------------
171
173{
174public:
175 CEditorActionBulk(CEditorMap *pMap, const std::vector<std::shared_ptr<IEditorAction>> &vpActions, const char *pDisplay = nullptr, bool Reverse = false);
176
177 void Undo() override;
178 void Redo() override;
179
180private:
181 std::vector<std::shared_ptr<IEditorAction>> m_vpActions;
182 std::string m_Display;
184};
185
186//
187
189{
190public:
191 CEditorActionTileChanges(CEditorMap *pMap, int GroupIndex, int LayerIndex, const char *pAction, const EditorTileStateChangeHistory<STileStateChange> &Changes);
192
193 void Undo() override;
194 void Redo() override;
195
196private:
199
200 void ComputeInfos();
201 void Apply(bool Undo);
202};
203
204// -------------------------------------------------------------
205
207{
208public:
209 CEditorActionAddLayer(CEditorMap *pMap, int GroupIndex, int LayerIndex, bool Duplicate = false);
210
211 void Undo() override;
212 void Redo() override;
213
214private:
216};
217
219{
220public:
221 CEditorActionDeleteLayer(CEditorMap *pMap, int GroupIndex, int LayerIndex);
222
223 void Undo() override;
224 void Redo() override;
225};
226
228{
229public:
230 CEditorActionGroup(CEditorMap *pMap, int GroupIndex, bool Delete);
231
232 void Undo() override;
233 void Redo() override;
234
235private:
238 std::shared_ptr<CLayerGroup> m_pGroup;
239};
240
242{
243public:
244 CEditorActionEditGroupProp(CEditorMap *pMap, int GroupIndex, EGroupProp Prop, int Previous, int Current);
245
246 void Undo() override;
247 void Redo() override;
248
249private:
254
255 void Apply(int Value);
256};
257
258template<typename E>
260{
261public:
262 CEditorActionEditLayerPropBase(CEditorMap *pMap, int GroupIndex, int LayerIndex, E Prop, int Previous, int Current);
263
264protected:
268};
269
271{
272public:
273 CEditorActionEditLayerProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ELayerProp Prop, int Previous, int Current);
274
275 void Undo() override;
276 void Redo() override;
277
278private:
279 void Apply(int Value);
280};
281
283{
284public:
285 CEditorActionEditLayerTilesProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ETilesProp Prop, int Previous, int Current);
286
287 void Undo() override;
288 void Redo() override;
289
290 void SetSavedLayers(const std::map<int, std::shared_ptr<CLayer>> &SavedLayers);
291
292private:
293 std::map<int, std::shared_ptr<CLayer>> m_SavedLayers;
294
295 void RestoreLayer(int Layer, const std::shared_ptr<CLayerTiles> &pLayerTiles);
296};
297
299{
300public:
301 CEditorActionEditLayerQuadsProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ELayerQuadsProp Prop, int Previous, int Current);
302
303 void Undo() override;
304 void Redo() override;
305
306private:
307 void Apply(int Value);
308};
309
311{
312public:
313 CEditorActionEditLayersGroupAndOrder(CEditorMap *pMap, int GroupIndex, const std::vector<int> &LayerIndices, int NewGroupIndex, const std::vector<int> &NewLayerIndices);
314
315 void Undo() override;
316 void Redo() override;
317
318private:
320 std::vector<int> m_LayerIndices;
322 std::vector<int> m_NewLayerIndices;
323};
324
325// --------------
326
328{
329public:
331 {
336 };
337
338 CEditorActionAppendMap(CEditorMap *pMap, const char *pMapName, const SPrevInfo &PrevInfo, std::vector<int> &vImageIndexMap);
339
340 void Undo() override;
341 void Redo() override;
342
343private:
346 std::vector<int> m_vImageIndexMap;
347};
348
349// --------------
350
352{
353public:
354 CEditorActionTileArt(CEditorMap *pMap, int PreviousImageCount, const char *pTileArtFile, std::vector<int> &vImageIndexMap);
355
356 void Undo() override;
357 void Redo() override;
358
359private:
362 std::vector<int> m_vImageIndexMap;
363};
364
365// --------------
366
368{
369public:
371
372 void Undo() override;
373 void Redo() override;
374
375private:
377};
378
379// ----------------------
380
382{
383public:
392
393 CEditorCommandAction(CEditorMap *pMap, EType Type, int *pSelectedCommandIndex, int CommandIndex, const char *pPreviousCommand = nullptr, const char *pCurrentCommand = nullptr);
394
395 void Undo() override;
396 void Redo() override;
397
398private:
402 std::string m_PreviousCommand;
403 std::string m_CurrentCommand;
404};
405
406// ------------------------------
407
409{
410public:
412
413 void Undo() override;
414 void Redo() override;
415
416private:
419};
420
422{
423public:
424 CEditorActionEnvelopeDelete(CEditorMap *pMap, int EnvelopeIndex, std::vector<std::shared_ptr<IEditorEnvelopeReference>> &vpObjectReferences, std::shared_ptr<CEnvelope> &pEnvelope);
425
426 void Undo() override;
427 void Redo() override;
428
429private:
431 std::shared_ptr<CEnvelope> m_pEnv;
432 std::vector<std::shared_ptr<IEditorEnvelopeReference>> m_vpObjectReferences;
433};
434
436{
437public:
438 enum class EEditType
439 {
442 };
443
444 CEditorActionEnvelopeEdit(CEditorMap *pMap, int EnvelopeIndex, EEditType EditType, int Previous, int Current);
445
446 void Undo() override;
447 void Redo() override;
448
449private:
454};
455
457{
458public:
459 CEditorActionEnvelopeEditPointTime(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, CFixedTime Previous, CFixedTime Current);
460
461 void Undo() override;
462 void Redo() override;
463
464private:
469
470 void Apply(CFixedTime Value);
471};
472
474{
475public:
476 enum class EEditType
477 {
480 };
481
482 CEditorActionEnvelopeEditPoint(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, int Channel, EEditType EditType, int Previous, int Current);
483
484 void Undo() override;
485 void Redo() override;
486
487private:
494
495 void Apply(int Value);
496};
497
499{
500public:
501 CEditorActionAddEnvelopePoint(CEditorMap *pMap, int EnvelopeIndex, CFixedTime Time, ColorRGBA Channels);
502
503 void Undo() override;
504 void Redo() override;
505
506private:
510};
511
513{
514public:
515 CEditorActionDeleteEnvelopePoint(CEditorMap *pMap, int EnvelopeIndex, int PointIndex);
516
517 void Undo() override;
518 void Redo() override;
519
520private:
524};
525
527{
528public:
529 enum class EType
530 {
534 };
535
536 CEditorActionEditEnvelopePointValue(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, int Channel, EType Type, CFixedTime OldTime, int OldValue, CFixedTime NewTime, int NewValue);
537
538 void Undo() override;
539 void Redo() override;
540
541private:
550
551 void Apply(bool Undo);
552};
553
555{
556public:
557 CEditorActionResetEnvelopePointTangent(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, int Channel, bool In, CFixedTime OldTime, int OldValue);
558};
559
561{
562public:
563 CEditorActionEditLayerSoundsProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ELayerSoundsProp Prop, int Previous, int Current);
564
565 void Undo() override;
566 void Redo() override;
567
568private:
569 void Apply(int Value);
570};
571
573{
574public:
575 CEditorActionDeleteSoundSource(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex);
576
577 void Undo() override;
578 void Redo() override;
579
580private:
583};
584
586{
587public:
588 CEditorActionEditSoundSourceShape(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, int Value);
589
590 void Undo() override;
591 void Redo() override;
592
593private:
596
597 std::vector<int> m_vOriginalValues;
599
600 void Save();
601};
602
604{
605public:
606 CEditorActionEditSoundSourceProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, ESoundProp Prop, int Previous, int Current);
607
608 void Undo() override;
609 void Redo() override;
610
611private:
613
614 void Apply(int Value);
615};
616
618{
619public:
620 CEditorActionEditRectSoundSourceShapeProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, ERectangleShapeProp Prop, int Previous, int Current);
621
622 void Undo() override;
623 void Redo() override;
624
625private:
627
628 void Apply(int Value);
629};
630
632{
633public:
634 CEditorActionEditCircleSoundSourceShapeProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, ECircleShapeProp Prop, int Previous, int Current);
635
636 void Undo() override;
637 void Redo() override;
638
639private:
641
642 void Apply(int Value);
643};
644
646{
647public:
648 CEditorActionNewEmptySound(CEditorMap *pMap, int GroupIndex, int LayerIndex, int x, int y);
649
650 void Undo() override;
651 void Redo() override;
652
653private:
654 int m_X;
655 int m_Y;
656};
657
659{
660public:
661 CEditorActionNewEmptyQuad(CEditorMap *pMap, int GroupIndex, int LayerIndex, int x, int y);
662
663 void Undo() override;
664 void Redo() override;
665
666private:
667 int m_X;
668 int m_Y;
669};
670
672{
673public:
674 CEditorActionNewQuad(CEditorMap *pMap, int GroupIndex, int LayerIndex);
675
676 void Undo() override;
677 void Redo() override;
678
679private:
681};
682
684{
685public:
686 CEditorActionMoveSoundSource(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, CPoint OriginalPosition, CPoint CurrentPosition);
687
688 void Undo() override;
689 void Redo() override;
690
691private:
695};
696
697#endif
void Redo() override
Definition editor_actions.cpp:1706
ColorRGBA m_Channels
Definition editor_actions.h:509
void Undo() override
Definition editor_actions.cpp:1691
int m_EnvelopeIndex
Definition editor_actions.h:507
CEditorActionAddEnvelopePoint(CEditorMap *pMap, int EnvelopeIndex, CFixedTime Time, ColorRGBA Channels)
Definition editor_actions.cpp:1685
CFixedTime m_Time
Definition editor_actions.h:508
void Undo() override
Definition editor_actions.cpp:576
void Redo() override
Definition editor_actions.cpp:605
bool m_Duplicate
Definition editor_actions.h:215
CEditorActionAddLayer(CEditorMap *pMap, int GroupIndex, int LayerIndex, bool Duplicate=false)
Definition editor_actions.cpp:570
char m_aMapName[IO_MAX_PATH_LENGTH]
Definition editor_actions.h:344
SPrevInfo m_PrevInfo
Definition editor_actions.h:345
std::vector< int > m_vImageIndexMap
Definition editor_actions.h:346
CEditorActionAppendMap(CEditorMap *pMap, const char *pMapName, const SPrevInfo &PrevInfo, std::vector< int > &vImageIndexMap)
Definition editor_actions.cpp:1192
void Redo() override
Definition editor_actions.cpp:1258
void Undo() override
Definition editor_actions.cpp:1199
std::string m_Display
Definition editor_actions.h:182
bool m_Reverse
Definition editor_actions.h:183
CEditorActionBulk(CEditorMap *pMap, const std::vector< std::shared_ptr< IEditorAction > > &vpActions, const char *pDisplay=nullptr, bool Reverse=false)
Definition editor_actions.cpp:470
void Redo() override
Definition editor_actions.cpp:508
std::vector< std::shared_ptr< IEditorAction > > m_vpActions
Definition editor_actions.h:181
void Undo() override
Definition editor_actions.cpp:488
CEditorActionDeleteEnvelopePoint(CEditorMap *pMap, int EnvelopeIndex, int PointIndex)
Definition editor_actions.cpp:1714
CEnvPoint_runtime m_Point
Definition editor_actions.h:523
void Redo() override
Definition editor_actions.cpp:1728
int m_PointIndex
Definition editor_actions.h:522
void Undo() override
Definition editor_actions.cpp:1720
int m_EnvelopeIndex
Definition editor_actions.h:521
CEditorActionDeleteLayer(CEditorMap *pMap, int GroupIndex, int LayerIndex)
Definition editor_actions.cpp:632
void Undo() override
Definition editor_actions.cpp:667
void Redo() override
Definition editor_actions.cpp:638
std::vector< CQuad > m_vDeletedQuads
Definition editor_actions.h:98
void Redo() override
Definition editor_actions.cpp:308
std::vector< int > m_vQuadsIndices
Definition editor_actions.h:97
CEditorActionDeleteQuad(CEditorMap *pMap, int GroupIndex, int LayerIndex, std::vector< int > const &vQuadsIndices, std::vector< CQuad > const &vDeletedQuads)
Definition editor_actions.cpp:293
void Undo() override
Definition editor_actions.cpp:299
CSoundSource m_Source
Definition editor_actions.h:582
void Undo() override
Definition editor_actions.cpp:1789
void Redo() override
Definition editor_actions.cpp:1797
int m_SourceIndex
Definition editor_actions.h:581
CEditorActionDeleteSoundSource(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex)
Definition editor_actions.cpp:1780
void Undo() override
Definition editor_actions.cpp:1989
void Redo() override
Definition editor_actions.cpp:1994
int m_SourceIndex
Definition editor_actions.h:640
void Apply(int Value)
Definition editor_actions.cpp:1999
CEditorActionEditCircleSoundSourceShapeProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, ECircleShapeProp Prop, int Previous, int Current)
Definition editor_actions.cpp:1980
EType
Definition editor_actions.h:530
@ TANGENT_OUT
Definition editor_actions.h:532
@ POINT
Definition editor_actions.h:533
@ TANGENT_IN
Definition editor_actions.h:531
CEditorActionEditEnvelopePointValue(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, int Channel, EType Type, CFixedTime OldTime, int OldValue, CFixedTime NewTime, int NewValue)
Definition editor_actions.cpp:1618
int m_EnvelopeIndex
Definition editor_actions.h:542
int m_Channel
Definition editor_actions.h:544
int m_PointIndex
Definition editor_actions.h:543
void Undo() override
Definition editor_actions.cpp:1624
int m_OldValue
Definition editor_actions.h:547
EType m_Type
Definition editor_actions.h:545
int m_NewValue
Definition editor_actions.h:549
void Redo() override
Definition editor_actions.cpp:1629
CFixedTime m_NewTime
Definition editor_actions.h:548
void Apply(bool Undo)
Definition editor_actions.cpp:1634
CFixedTime m_OldTime
Definition editor_actions.h:546
EGroupProp m_Prop
Definition editor_actions.h:251
int m_Previous
Definition editor_actions.h:252
void Redo() override
Definition editor_actions.cpp:772
CEditorActionEditGroupProp(CEditorMap *pMap, int GroupIndex, EGroupProp Prop, int Previous, int Current)
Definition editor_actions.cpp:741
int m_Current
Definition editor_actions.h:253
int m_GroupIndex
Definition editor_actions.h:250
void Apply(int Value)
Definition editor_actions.cpp:784
void Undo() override
Definition editor_actions.cpp:760
int m_Current
Definition editor_actions.h:267
E m_Prop
Definition editor_actions.h:265
int m_Previous
Definition editor_actions.h:266
CEditorActionEditLayerPropBase(CEditorMap *pMap, int GroupIndex, int LayerIndex, E Prop, int Previous, int Current)
Definition editor_actions.cpp:811
CEditorActionEditLayerProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ELayerProp Prop, int Previous, int Current)
Definition editor_actions.cpp:816
void Apply(int Value)
Definition editor_actions.cpp:852
void Undo() override
Definition editor_actions.cpp:828
void Redo() override
Definition editor_actions.cpp:840
CEditorActionEditLayerQuadsProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ELayerQuadsProp Prop, int Previous, int Current)
Definition editor_actions.cpp:1104
void Apply(int Value)
Definition editor_actions.cpp:1123
void Undo() override
Definition editor_actions.cpp:1113
void Redo() override
Definition editor_actions.cpp:1118
void Redo() override
Definition editor_actions.cpp:1759
CEditorActionEditLayerSoundsProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ELayerSoundsProp Prop, int Previous, int Current)
Definition editor_actions.cpp:1745
void Undo() override
Definition editor_actions.cpp:1754
void Apply(int Value)
Definition editor_actions.cpp:1764
std::map< int, std::shared_ptr< CLayer > > m_SavedLayers
Definition editor_actions.h:293
void RestoreLayer(int Layer, const std::shared_ptr< CLayerTiles > &pLayerTiles)
Definition editor_actions.cpp:1070
void SetSavedLayers(const std::map< int, std::shared_ptr< CLayer > > &SavedLayers)
Definition editor_actions.cpp:895
void Undo() override
Definition editor_actions.cpp:900
void Redo() override
Definition editor_actions.cpp:986
CEditorActionEditLayerTilesProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, ETilesProp Prop, int Previous, int Current)
Definition editor_actions.cpp:874
int m_GroupIndex
Definition editor_actions.h:319
CEditorActionEditLayersGroupAndOrder(CEditorMap *pMap, int GroupIndex, const std::vector< int > &LayerIndices, int NewGroupIndex, const std::vector< int > &NewLayerIndices)
Definition editor_actions.cpp:1139
void Redo() override
Definition editor_actions.cpp:1169
std::vector< int > m_LayerIndices
Definition editor_actions.h:320
std::vector< int > m_NewLayerIndices
Definition editor_actions.h:322
void Undo() override
Definition editor_actions.cpp:1148
int m_NewGroupIndex
Definition editor_actions.h:321
void Apply(std::vector< CColor > &vValue)
Definition editor_actions.cpp:368
void Undo() override
Definition editor_actions.cpp:358
CEditorActionEditQuadColor(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, std::vector< CColor > const &vPreviousColors, std::vector< CColor > const &vCurrentColors)
Definition editor_actions.cpp:352
std::vector< CColor > m_vPreviousColors
Definition editor_actions.h:129
int m_QuadIndex
Definition editor_actions.h:128
std::vector< CColor > m_vCurrentColors
Definition editor_actions.h:130
void Redo() override
Definition editor_actions.cpp:363
int m_PointIndex
Definition editor_actions.h:162
EQuadPointProp m_Prop
Definition editor_actions.h:163
CEditorActionEditQuadPointProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, int PointIndex, EQuadPointProp Prop, int Previous, int Current)
Definition editor_actions.cpp:417
int m_QuadIndex
Definition editor_actions.h:161
void Redo() override
Definition editor_actions.cpp:435
int m_Previous
Definition editor_actions.h:164
void Apply(int Value)
Definition editor_actions.cpp:440
int m_Current
Definition editor_actions.h:165
void Undo() override
Definition editor_actions.cpp:430
void Apply(const std::vector< CPoint > &vValue)
Definition editor_actions.cpp:344
void Redo() override
Definition editor_actions.cpp:339
void Undo() override
Definition editor_actions.cpp:334
std::vector< CPoint > m_vPreviousPoints
Definition editor_actions.h:113
CEditorActionEditQuadPoint(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, std::vector< CPoint > const &vPreviousPoints, std::vector< CPoint > const &vCurrentPoints)
Definition editor_actions.cpp:328
std::vector< CPoint > m_vCurrentPoints
Definition editor_actions.h:114
int m_QuadIndex
Definition editor_actions.h:112
int m_QuadIndex
Definition editor_actions.h:144
void Undo() override
Definition editor_actions.cpp:393
EQuadProp m_Prop
Definition editor_actions.h:145
int m_Current
Definition editor_actions.h:147
int m_Previous
Definition editor_actions.h:146
void Redo() override
Definition editor_actions.cpp:398
void Apply(int Value)
Definition editor_actions.cpp:403
CEditorActionEditQuadProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int QuadIndex, EQuadProp Prop, int Previous, int Current)
Definition editor_actions.cpp:376
void Undo() override
Definition editor_actions.cpp:1953
CEditorActionEditRectSoundSourceShapeProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, ERectangleShapeProp Prop, int Previous, int Current)
Definition editor_actions.cpp:1943
void Apply(int Value)
Definition editor_actions.cpp:1963
int m_SourceIndex
Definition editor_actions.h:626
void Redo() override
Definition editor_actions.cpp:1958
void Undo() override
Definition editor_actions.cpp:1884
CEditorActionEditSoundSourceProp(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, ESoundProp Prop, int Previous, int Current)
Definition editor_actions.cpp:1866
int m_SourceIndex
Definition editor_actions.h:612
void Redo() override
Definition editor_actions.cpp:1889
void Apply(int Value)
Definition editor_actions.cpp:1894
void Save()
Definition editor_actions.cpp:1858
void Undo() override
Definition editor_actions.cpp:1822
int m_SourceIndex
Definition editor_actions.h:594
void Redo() override
Definition editor_actions.cpp:1832
CSoundShape m_SavedShape
Definition editor_actions.h:598
std::vector< int > m_vOriginalValues
Definition editor_actions.h:597
int m_CurrentValue
Definition editor_actions.h:595
CEditorActionEditSoundSourceShape(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, int Value)
Definition editor_actions.cpp:1807
void Undo() override
Definition editor_actions.cpp:1471
CEnvelope::EType m_EnvelopeType
Definition editor_actions.h:417
void Redo() override
Definition editor_actions.cpp:1479
int m_PreviousSelectedEnvelope
Definition editor_actions.h:418
CEditorActionEnvelopeAdd(CEditorMap *pMap, CEnvelope::EType EnvelopeType)
Definition editor_actions.cpp:1463
void Redo() override
Definition editor_actions.cpp:1499
std::vector< std::shared_ptr< IEditorEnvelopeReference > > m_vpObjectReferences
Definition editor_actions.h:432
void Undo() override
Definition editor_actions.cpp:1492
CEditorActionEnvelopeDelete(CEditorMap *pMap, int EnvelopeIndex, std::vector< std::shared_ptr< IEditorEnvelopeReference > > &vpObjectReferences, std::shared_ptr< CEnvelope > &pEnvelope)
Definition editor_actions.cpp:1486
int m_EnvelopeIndex
Definition editor_actions.h:430
std::shared_ptr< CEnvelope > m_pEnv
Definition editor_actions.h:431
void Apply(CFixedTime Value)
Definition editor_actions.cpp:1568
CFixedTime m_Current
Definition editor_actions.h:468
void Undo() override
Definition editor_actions.cpp:1558
CEditorActionEnvelopeEditPointTime(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, CFixedTime Previous, CFixedTime Current)
Definition editor_actions.cpp:1552
int m_EnvelopeIndex
Definition editor_actions.h:465
int m_PointIndex
Definition editor_actions.h:466
CFixedTime m_Previous
Definition editor_actions.h:467
void Redo() override
Definition editor_actions.cpp:1563
int m_Channel
Definition editor_actions.h:490
void Apply(int Value)
Definition editor_actions.cpp:1593
EEditType
Definition editor_actions.h:477
@ CURVE_TYPE
Definition editor_actions.h:479
@ VALUE
Definition editor_actions.h:478
CEditorActionEnvelopeEditPoint(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, int Channel, EEditType EditType, int Previous, int Current)
Definition editor_actions.cpp:1574
int m_PointIndex
Definition editor_actions.h:489
int m_Current
Definition editor_actions.h:493
int m_EnvelopeIndex
Definition editor_actions.h:488
void Redo() override
Definition editor_actions.cpp:1588
void Undo() override
Definition editor_actions.cpp:1583
int m_Previous
Definition editor_actions.h:492
EEditType m_EditType
Definition editor_actions.h:491
int m_Previous
Definition editor_actions.h:452
int m_EnvelopeIndex
Definition editor_actions.h:450
EEditType
Definition editor_actions.h:439
@ SYNC
Definition editor_actions.h:440
@ ORDER
Definition editor_actions.h:441
void Undo() override
Definition editor_actions.cpp:1514
CEditorActionEnvelopeEdit(CEditorMap *pMap, int EnvelopeIndex, EEditType EditType, int Previous, int Current)
Definition editor_actions.cpp:1505
int m_Current
Definition editor_actions.h:453
EEditType m_EditType
Definition editor_actions.h:451
void Redo() override
Definition editor_actions.cpp:1533
int m_GroupIndex
Definition editor_actions.h:236
bool m_Delete
Definition editor_actions.h:237
std::shared_ptr< CLayerGroup > m_pGroup
Definition editor_actions.h:238
void Undo() override
Definition editor_actions.cpp:704
void Redo() override
Definition editor_actions.cpp:723
CEditorActionGroup(CEditorMap *pMap, int GroupIndex, bool Delete)
Definition editor_actions.cpp:694
int m_LayerIndex
Definition editor_actions.h:29
int m_GroupIndex
Definition editor_actions.h:28
CEditorActionLayerBase(CEditorMap *pMap, int GroupIndex, int LayerIndex)
Definition editor_actions.cpp:562
std::shared_ptr< CLayer > m_pLayer
Definition editor_actions.h:30
void Undo() override
Definition editor_actions.cpp:2100
void Redo() override
Definition editor_actions.cpp:2106
CPoint m_OriginalPosition
Definition editor_actions.h:693
int m_SourceIndex
Definition editor_actions.h:692
CPoint m_CurrentPosition
Definition editor_actions.h:694
CEditorActionMoveSoundSource(CEditorMap *pMap, int GroupIndex, int LayerIndex, int SourceIndex, CPoint OriginalPosition, CPoint CurrentPosition)
Definition editor_actions.cpp:2094
int m_Y
Definition editor_actions.h:668
void Undo() override
Definition editor_actions.cpp:2043
void Redo() override
Definition editor_actions.cpp:2052
CEditorActionNewEmptyQuad(CEditorMap *pMap, int GroupIndex, int LayerIndex, int x, int y)
Definition editor_actions.cpp:2037
int m_X
Definition editor_actions.h:667
void Undo() override
Definition editor_actions.cpp:2020
CEditorActionNewEmptySound(CEditorMap *pMap, int GroupIndex, int LayerIndex, int x, int y)
Definition editor_actions.cpp:2014
int m_X
Definition editor_actions.h:654
int m_Y
Definition editor_actions.h:655
void Redo() override
Definition editor_actions.cpp:2029
void Undo() override
Definition editor_actions.cpp:2080
CQuad m_Quad
Definition editor_actions.h:680
void Redo() override
Definition editor_actions.cpp:2086
CEditorActionNewQuad(CEditorMap *pMap, int GroupIndex, int LayerIndex)
Definition editor_actions.cpp:2071
void Undo() override
Definition editor_actions.cpp:1335
CEditorActionQuadArt(CEditorMap *pMap, CQuadArtParameters Parameters)
Definition editor_actions.cpp:1329
void Redo() override
Definition editor_actions.cpp:1341
CQuadArtParameters m_Parameters
Definition editor_actions.h:376
CEditorActionQuadPlace(CEditorMap *pMap, int GroupIndex, int LayerIndex, std::vector< CQuad > &vBrush)
Definition editor_actions.cpp:244
void Redo() override
Definition editor_actions.cpp:258
std::vector< CQuad > m_vBrush
Definition editor_actions.h:71
void Undo() override
Definition editor_actions.cpp:250
CEditorActionResetEnvelopePointTangent(CEditorMap *pMap, int EnvelopeIndex, int PointIndex, int Channel, bool In, CFixedTime OldTime, int OldValue)
Definition editor_actions.cpp:1677
CEditorActionSoundPlace(CEditorMap *pMap, int GroupIndex, int LayerIndex, std::vector< CSoundSource > &vBrush)
Definition editor_actions.cpp:267
std::vector< CSoundSource > m_vBrush
Definition editor_actions.h:83
void Undo() override
Definition editor_actions.cpp:273
void Redo() override
Definition editor_actions.cpp:282
CEditorActionTileArt(CEditorMap *pMap, int PreviousImageCount, const char *pTileArtFile, std::vector< int > &vImageIndexMap)
Definition editor_actions.cpp:1270
int m_PreviousImageCount
Definition editor_actions.h:360
char m_aTileArtFile[IO_MAX_PATH_LENGTH]
Definition editor_actions.h:361
void Redo() override
Definition editor_actions.cpp:1315
std::vector< int > m_vImageIndexMap
Definition editor_actions.h:362
void Undo() override
Definition editor_actions.cpp:1277
void Apply(bool Undo)
Definition editor_actions.cpp:535
void ComputeInfos()
Definition editor_actions.cpp:553
void Undo() override
Definition editor_actions.cpp:525
void Redo() override
Definition editor_actions.cpp:530
int m_TotalChanges
Definition editor_actions.h:198
CEditorActionTileChanges(CEditorMap *pMap, int GroupIndex, int LayerIndex, const char *pAction, const EditorTileStateChangeHistory< STileStateChange > &Changes)
Definition editor_actions.cpp:518
EditorTileStateChangeHistory< STileStateChange > m_Changes
Definition editor_actions.h:197
void Undo() override
Definition editor_actions.cpp:129
int m_TotalTilesDrawn
Definition editor_actions.h:53
void Apply(bool Undo)
Definition editor_actions.cpp:139
bool IsEmpty() override
Definition editor_actions.cpp:124
CEditorBrushDrawAction(CEditorMap *pMap, int Group)
Definition editor_actions.cpp:15
EditorTileStateChangeHistory< STeleTileStateChange > m_TeleTileChanges
Definition editor_actions.h:48
void SetInfos()
Definition editor_actions.cpp:71
int m_Group
Definition editor_actions.h:43
EditorTileStateChangeHistory< SSwitchTileStateChange > m_SwitchTileChanges
Definition editor_actions.h:50
void Redo() override
Definition editor_actions.cpp:134
int m_TotalLayers
Definition editor_actions.h:54
std::vector< std::pair< int, EditorTileStateChangeHistory< STileStateChange > > > m_vTileChanges
Definition editor_actions.h:47
EditorTileStateChangeHistory< STuneTileStateChange > m_TuneTileChanges
Definition editor_actions.h:51
EditorTileStateChangeHistory< SSpeedupTileStateChange > m_SpeedupTileChanges
Definition editor_actions.h:49
EType
Definition editor_actions.h:385
@ DELETE
Definition editor_actions.h:386
@ MOVE_DOWN
Definition editor_actions.h:390
@ EDIT
Definition editor_actions.h:388
@ ADD
Definition editor_actions.h:387
@ MOVE_UP
Definition editor_actions.h:389
void Redo() override
Definition editor_actions.cpp:1424
CEditorCommandAction(CEditorMap *pMap, EType Type, int *pSelectedCommandIndex, int CommandIndex, const char *pPreviousCommand=nullptr, const char *pCurrentCommand=nullptr)
Definition editor_actions.cpp:1356
std::string m_PreviousCommand
Definition editor_actions.h:402
EType m_Type
Definition editor_actions.h:399
std::string m_CurrentCommand
Definition editor_actions.h:403
int m_CommandIndex
Definition editor_actions.h:401
int * m_pSelectedCommandIndex
Definition editor_actions.h:400
void Undo() override
Definition editor_actions.cpp:1387
Definition map.h:53
Definition mapitems.h:526
EType
Definition envelope.h:18
Definition mapitems.h:259
Definition quad_art.h:15
Definition mapitems.h:337
Definition mapitems.h:557
Definition mapitems.h:588
Definition color.h:182
IEditorAction(CEditorMap *pMap)
Definition editor_action.h:9
Definition references.h:13
ELayerQuadsProp
Definition mapitems.h:115
EQuadProp
Definition mapitems.h:5
EQuadPointProp
Definition mapitems.h:19
ETilesProp
Definition mapitems.h:70
ERectangleShapeProp
Definition mapitems.h:46
ECircleShapeProp
Definition mapitems.h:54
ELayerSoundsProp
Definition mapitems.h:122
ELayerProp
Definition mapitems.h:61
EGroupProp
Definition mapitems.h:99
ESoundProp
Definition mapitems.h:30
std::map< int, std::map< int, T > > EditorTileStateChangeHistory
Definition layer_tiles.h:19
ivec2 CPoint
Definition mapitems.h:255
Definition editor_actions.h:331
int m_Sounds
Definition editor_actions.h:334
int m_Groups
Definition editor_actions.h:332
int m_Envelopes
Definition editor_actions.h:335
int m_Images
Definition editor_actions.h:333
#define E(buf, str)
constexpr auto IO_MAX_PATH_LENGTH
Definition types.h:56