1#ifndef GAME_EDITOR_EDITOR_TRACKERS_H
2#define GAME_EDITOR_EDITOR_TRACKERS_H
25 bool QuadPointChanged(
const std::vector<CPoint> &vCurrentPoints,
int QuadIndex);
26 bool QuadColorChanged(
const std::vector<CColor> &vCurrentColors,
int QuadIndex);
28 void BeginQuadTrack(
const std::shared_ptr<CLayerQuads> &pLayer,
const std::vector<int> &vSelectedQuads,
int GroupIndex = -1,
int LayerIndex = -1);
31 void BeginQuadPropTrack(
const std::shared_ptr<CLayerQuads> &pLayer,
const std::vector<int> &vSelectedQuads,
EQuadProp Prop,
int GroupIndex = -1,
int LayerIndex = -1);
34 void BeginQuadPointPropTrack(
const std::shared_ptr<CLayerQuads> &pLayer,
const std::vector<int> &vSelectedQuads,
int SelectedQuadPoints,
int GroupIndex = -1,
int LayerIndex = -1);
82 void Stop(
bool Switch =
true);
127template<
typename T,
typename E>
141 void Begin(
const T *pObject,
E Prop,
EEditState State,
int GroupIndex = -1,
int LayerIndex = -1)
238 std::map<std::shared_ptr<CLayerTiles>, std::map<int, std::shared_ptr<CLayer>>>
m_SavedLayers;
CEnvelopeEditorOperationTracker(CEditorMap *pMap)
Definition editor_trackers.h:78
void Stop(bool Switch=true)
Definition editor_trackers.cpp:324
void HandlePointDragStart()
Definition editor_trackers.cpp:337
std::map< int, SPointData > m_SavedValues
Definition editor_trackers.h:95
void HandlePointDragEnd(bool Switch)
Definition editor_trackers.cpp:355
void Reset()
Definition editor_trackers.h:83
void Begin(EEnvelopeEditorOp Operation)
Definition editor_trackers.cpp:306
EEnvelopeEditorOp m_TrackedOp
Definition editor_trackers.h:86
Definition mapitems.h:259
int PropToValue(EGroupProp Prop) override
Definition editor_trackers.cpp:597
void OnEnd(EGroupProp Prop, int Value) override
Definition editor_trackers.cpp:592
CLayerGroupPropTracker(CEditorMap *pMap)
Definition editor_trackers.h:248
Definition layer_group.h:12
CLayerPropTracker(CEditorMap *pMap)
Definition editor_trackers.h:199
void OnEnd(ELayerProp Prop, int Value) override
Definition editor_trackers.cpp:449
int PropToValue(ELayerProp Prop) override
Definition editor_trackers.cpp:461
int PropToValue(ELayerQuadsProp Prop) override
Definition editor_trackers.cpp:623
void OnEnd(ELayerQuadsProp Prop, int Value) override
Definition editor_trackers.cpp:617
CLayerQuadsPropTracker(CEditorMap *pMap)
Definition editor_trackers.h:259
Definition layer_quads.h:7
CLayerSoundsPropTracker(CEditorMap *pMap)
Definition editor_trackers.h:270
void OnEnd(ELayerSoundsProp Prop, int Value) override
Definition editor_trackers.cpp:632
int PropToValue(ELayerSoundsProp Prop) override
Definition editor_trackers.cpp:638
Definition layer_sounds.h:7
std::vector< int > m_vLayerIndices
Definition editor_trackers.h:242
std::vector< std::shared_ptr< CLayerTiles > > m_vpLayers
Definition editor_trackers.h:241
void OnStart(ETilesCommonProp Prop) override
Definition editor_trackers.cpp:536
CLayerTilesCommonPropTracker(CEditorMap *pMap)
Definition editor_trackers.h:227
std::map< std::shared_ptr< CLayerTiles >, std::map< int, std::shared_ptr< CLayer > > > m_SavedLayers
Definition editor_trackers.h:238
void OnEnd(ETilesCommonProp Prop, int Value) override
Definition editor_trackers.cpp:547
int PropToValue(ETilesCommonProp Prop) override
Definition editor_trackers.cpp:583
bool EndChecker(ETilesCommonProp Prop, int Value) override
Definition editor_trackers.cpp:578
CLayerTilesPropTracker(CEditorMap *pMap)
Definition editor_trackers.h:210
bool EndChecker(ETilesProp Prop, int Value) override
Definition editor_trackers.cpp:474
void OnEnd(ETilesProp Prop, int Value) override
Definition editor_trackers.cpp:506
std::map< int, std::shared_ptr< CLayer > > m_SavedLayers
Definition editor_trackers.h:221
int PropToValue(ETilesProp Prop) override
Definition editor_trackers.cpp:516
void OnStart(ETilesProp Prop) override
Definition editor_trackers.cpp:479
Definition layer_tiles.h:41
CMapObject(CEditorMap *pMap)
Definition map_object.cpp:6
const CEditorMap * Map() const
Definition map_object.cpp:31
virtual void OnEnd(E Prop, int Value)
Definition editor_trackers.h:180
const T * m_pObject
Definition editor_trackers.h:188
virtual int PropToValue(E Prop)
Definition editor_trackers.h:181
int m_OriginalLayerIndex
Definition editor_trackers.h:189
int m_CurrentGroupIndex
Definition editor_trackers.h:192
void End(E Prop, EEditState State, int GroupIndex=-1, int LayerIndex=-1)
Definition editor_trackers.h:161
virtual void OnStart(E Prop)
Definition editor_trackers.h:179
int m_OriginalValue
Definition editor_trackers.h:187
int m_OriginalGroupIndex
Definition editor_trackers.h:190
virtual bool EndChecker(E Prop, int Value)
Definition editor_trackers.h:182
CPropTracker(CEditorMap *pMap)
Definition editor_trackers.h:131
bool m_Tracking
Definition editor_trackers.h:193
int m_CurrentLayerIndex
Definition editor_trackers.h:191
void Begin(const T *pObject, E Prop, EEditState State, int GroupIndex=-1, int LayerIndex=-1)
Definition editor_trackers.h:141
std::vector< int > m_vSelectedQuads
Definition editor_trackers.h:40
std::shared_ptr< CLayerQuads > m_pLayer
Definition editor_trackers.h:46
int m_SelectedQuadPoints
Definition editor_trackers.h:41
void EndQuadPointPropTrackAll()
Definition editor_trackers.cpp:256
void EndQuadTrack()
Definition editor_trackers.cpp:51
void AddQuadPointPropTrack(EQuadPointProp Prop)
Definition editor_trackers.cpp:161
std::map< int, std::vector< CColor > > m_InitialColors
Definition editor_trackers.h:43
EQuadProp m_TrackedProp
Definition editor_trackers.h:48
bool QuadPointChanged(const std::vector< CPoint > &vCurrentPoints, int QuadIndex)
Definition editor_trackers.cpp:13
bool m_Tracking
Definition editor_trackers.h:45
int m_GroupIndex
Definition editor_trackers.h:53
std::map< int, std::vector< CPoint > > m_InitialPoints
Definition editor_trackers.h:42
CQuadEditTracker(CEditorMap *pMap)
Definition editor_trackers.cpp:9
void BeginQuadTrack(const std::shared_ptr< CLayerQuads > &pLayer, const std::vector< int > &vSelectedQuads, int GroupIndex=-1, int LayerIndex=-1)
Definition editor_trackers.cpp:33
int m_LayerIndex
Definition editor_trackers.h:52
std::map< int, std::vector< std::map< EQuadPointProp, int > > > m_PreviousValuesPoint
Definition editor_trackers.h:51
void BeginQuadPointPropTrack(const std::shared_ptr< CLayerQuads > &pLayer, const std::vector< int > &vSelectedQuads, int SelectedQuadPoints, int GroupIndex=-1, int LayerIndex=-1)
Definition editor_trackers.cpp:143
void EndQuadPropTrack(EQuadProp Prop)
Definition editor_trackers.cpp:99
std::map< int, int > m_PreviousValues
Definition editor_trackers.h:50
std::vector< EQuadPointProp > m_vTrackedProps
Definition editor_trackers.h:49
void BeginQuadPropTrack(const std::shared_ptr< CLayerQuads > &pLayer, const std::vector< int > &vSelectedQuads, EQuadProp Prop, int GroupIndex=-1, int LayerIndex=-1)
Definition editor_trackers.cpp:71
void EndQuadPointPropTrack(EQuadPointProp Prop)
Definition editor_trackers.cpp:206
bool QuadColorChanged(const std::vector< CColor > &vCurrentColors, int QuadIndex)
Definition editor_trackers.cpp:23
void OnEnd(ECircleShapeProp Prop, int Value) override
Definition editor_trackers.cpp:687
CSoundSourceCircleShapePropTracker(CEditorMap *pMap)
Definition editor_trackers.h:303
int PropToValue(ECircleShapeProp Prop) override
Definition editor_trackers.cpp:692
ESoundSourceOp m_TrackedOp
Definition editor_trackers.h:111
int m_LayerIndex
Definition editor_trackers.h:112
CSoundSourceOperationTracker(CEditorMap *pMap)
Definition editor_trackers.cpp:395
const CSoundSource * m_pSource
Definition editor_trackers.h:110
void Begin(const CSoundSource *pSource, ESoundSourceOp Operation, int LayerIndex)
Definition editor_trackers.cpp:403
SData m_Data
Definition editor_trackers.h:118
void End()
Definition editor_trackers.cpp:418
CSoundSourcePropTracker(CEditorMap *pMap)
Definition editor_trackers.h:281
void OnEnd(ESoundProp Prop, int Value) override
Definition editor_trackers.cpp:647
int PropToValue(ESoundProp Prop) override
Definition editor_trackers.cpp:652
void OnEnd(ERectangleShapeProp Prop, int Value) override
Definition editor_trackers.cpp:672
CSoundSourceRectShapePropTracker(CEditorMap *pMap)
Definition editor_trackers.h:292
int PropToValue(ERectangleShapeProp Prop) override
Definition editor_trackers.cpp:677
Definition mapitems.h:588
ETilesCommonProp
Definition mapitems.h:88
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
EEnvelopeEditorOp
Definition editor_trackers.h:57
@ OP_SELECT
Definition editor_trackers.h:59
@ OP_DRAG_POINT
Definition editor_trackers.h:60
@ OP_SCALE
Definition editor_trackers.h:65
@ OP_NONE
Definition editor_trackers.h:58
@ OP_BOX_SELECT
Definition editor_trackers.h:64
@ OP_CONTEXT_MENU
Definition editor_trackers.h:63
@ OP_DRAG_POINT_Y
Definition editor_trackers.h:62
@ OP_DRAG_POINT_X
Definition editor_trackers.h:61
ESoundSourceOp
Definition editor_trackers.h:69
@ OP_MOVE
Definition editor_trackers.h:71
ivec2 CPoint
Definition mapitems.h:255
Definition editor_trackers.h:89
bool m_Used
Definition editor_trackers.h:90
std::map< int, int > m_Values
Definition editor_trackers.h:92
CFixedTime m_Time
Definition editor_trackers.h:91
Definition editor_trackers.h:115
CPoint m_OriginalPoint
Definition editor_trackers.h:116
Definition editor_trackers.h:122
static int GetDefaultLayerIndex(CEditorMap *pMap)
Definition editor_trackers.cpp:442
static int GetDefaultGroupIndex(CEditorMap *pMap)
Definition editor_trackers.cpp:437
EEditState
Definition ui.h:22
@ ONE_GO
Definition ui.h:27
@ START
Definition ui.h:24