DDNet documentation
Loading...
Searching...
No Matches
layer_group.h
Go to the documentation of this file.
1#ifndef GAME_EDITOR_MAPITEMS_LAYER_GROUP_H
2#define GAME_EDITOR_MAPITEMS_LAYER_GROUP_H
3
4#include "layer.h"
5
7
8#include <memory>
9#include <vector>
10
11class CLayerGroup : public CMapObject
12{
13public:
14 std::vector<std::shared_ptr<CLayer>> m_vpLayers;
15
18
21
27
28 char m_aName[12];
32
33 explicit CLayerGroup(CEditorMap *pMap);
34 void OnAttach(CEditorMap *pMap) override;
35
36 void Convert(CUIRect *pRect) const;
37 void Render(const CEditorMap *pRenderMap);
38 void MapScreen();
39 CScreenRect Mapping() const;
40
41 void GetSize(float *pWidth, float *pHeight) const;
42
43 void AddLayer(const std::shared_ptr<CLayer> &pLayer);
44 void DeleteLayer(int Index);
45 void DuplicateLayer(int Index);
46 int MoveLayer(int IndexFrom, int IndexTo);
47
48 bool IsEmpty() const;
49 void Clear();
50
51 void ModifyImageIndex(const FIndexModifyFunction &IndexModifyFunction);
52 void ModifyEnvelopeIndex(const FIndexModifyFunction &IndexModifyFunction);
53 void ModifySoundIndex(const FIndexModifyFunction &IndexModifyFunction);
54};
55
56#endif
Definition map.h:64
void AddLayer(const std::shared_ptr< CLayer > &pLayer)
Definition layer_group.cpp:127
void DuplicateLayer(int Index)
Definition layer_group.cpp:141
char m_aName[12]
Definition layer_group.h:28
void Clear()
Definition layer_group.cpp:185
void MapScreen()
Definition layer_group.cpp:59
void OnAttach(CEditorMap *pMap) override
Definition layer_group.cpp:30
void Convert(CUIRect *pRect) const
Definition layer_group.cpp:39
void GetSize(float *pWidth, float *pHeight) const
Definition layer_group.cpp:152
bool m_GameGroup
Definition layer_group.h:29
int m_OffsetY
Definition layer_group.h:17
void Render(const CEditorMap *pRenderMap)
Definition layer_group.cpp:65
int m_ClipX
Definition layer_group.h:23
CLayerGroup(CEditorMap *pMap)
Definition layer_group.cpp:10
bool m_Visible
Definition layer_group.h:30
void ModifyImageIndex(const FIndexModifyFunction &IndexModifyFunction)
Definition layer_group.cpp:190
bool m_Collapse
Definition layer_group.h:31
int MoveLayer(int IndexFrom, int IndexTo)
Definition layer_group.cpp:165
int m_OffsetX
Definition layer_group.h:16
CScreenRect Mapping() const
Definition layer_group.cpp:45
void ModifySoundIndex(const FIndexModifyFunction &IndexModifyFunction)
Definition layer_group.cpp:206
int m_UseClipping
Definition layer_group.h:22
std::vector< std::shared_ptr< CLayer > > m_vpLayers
Definition layer_group.h:14
int m_ClipH
Definition layer_group.h:26
void DeleteLayer(int Index)
Definition layer_group.cpp:133
bool IsEmpty() const
Definition layer_group.cpp:180
int m_ParallaxX
Definition layer_group.h:19
int m_ClipY
Definition layer_group.h:24
void ModifyEnvelopeIndex(const FIndexModifyFunction &IndexModifyFunction)
Definition layer_group.cpp:198
int m_ParallaxY
Definition layer_group.h:20
int m_ClipW
Definition layer_group.h:25
CMapObject(CEditorMap *pMap)
Definition map_object.cpp:6
Definition graphics.h:186
Definition ui_rect.h:12
std::function< void(int *pIndex)> FIndexModifyFunction
Definition layer.h:11