DDNet documentation
Loading...
Searching...
No Matches
map_view.h
Go to the documentation of this file.
1#ifndef GAME_EDITOR_MAP_VIEW_H
2#define GAME_EDITOR_MAP_VIEW_H
3
4#include "component.h"
5#include "map_grid.h"
6#include "proof_mode.h"
7#include "smooth_value.h"
8
9#include <base/vmath.h>
10
11class CLayerGroup;
12
14{
15public:
25
26 class CState
27 {
28 public:
33
34 float m_MouseWorldScale; // Mouse (i.e. UI) scale relative to the World (selected Group)
38
40
41 void Reset(CEditor *pEditor);
42 };
43
44 void OnInit(CEditor *pEditor) override;
45 void OnReset() override;
46 void OnMapLoad() override;
47
48 void ZoomMouseTarget(float ZoomFactor);
49 void UpdateZoom();
50
51 void RenderGroupBorder();
52 void RenderEditorMap();
53 void Render(CUIRect View);
54
55 void UpdateMouseWorld();
57 float MouseWorldScale() const;
58 vec2 MouseDeltaWorld() const;
59 vec2 MouseWorldPos() const;
61
62 bool IsFocused();
63 void Focus();
64
68 void ResetZoom();
69
73 float ScaleLength(float Value) const;
74
75 float GetWorldZoom() const;
76
77 void OffsetWorld(vec2 Offset);
78 void OffsetEditor(vec2 Offset);
79 void SetWorldOffset(vec2 WorldOffset);
80 void SetEditorOffset(vec2 EditorOffset);
81 vec2 GetWorldOffset() const;
82 vec2 GetEditorOffset() const;
83
85 const CSmoothValue *Zoom() const;
87 const CProofMode *ProofMode() const;
89 const CMapGrid *MapGrid() const;
90
91private:
94};
95
96#endif
Definition component.h:13
Definition editor.h:109
Definition layer_group.h:12
Definition map_grid.h:9
Definition map_view.h:27
vec2 m_MouseWorldPos
Definition map_view.h:35
vec2 m_WorldOffset
Definition map_view.h:31
float m_MouseWorldScale
Definition map_view.h:34
EActiveOp m_ActiveOp
Definition map_view.h:39
vec2 m_MouseWorldNoParaPos
Definition map_view.h:36
vec2 m_MouseDeltaWorld
Definition map_view.h:37
vec2 m_EditorOffset
Definition map_view.h:32
float m_WorldZoom
Definition map_view.h:30
void Reset(CEditor *pEditor)
Definition map_view.cpp:12
CSmoothValue m_Zoom
Definition map_view.h:29
Definition map_view.h:14
CProofMode m_ProofMode
Definition map_view.h:92
bool IsFocused()
Definition map_view.cpp:44
void ResetZoom()
Definition map_view.cpp:784
CMapGrid m_MapGrid
Definition map_view.h:93
void Render(CUIRect View)
Definition map_view.cpp:125
void SetEditorOffset(vec2 EditorOffset)
Definition map_view.cpp:870
float ScaleLength(float Value) const
Definition map_view.cpp:790
vec2 MouseWorldNoParaPos() const
Definition map_view.cpp:779
float MouseWorldScale() const
Definition map_view.cpp:764
CMapGrid * MapGrid()
Definition map_view.cpp:845
void UpdateZoom()
Definition map_view.cpp:814
void OnMapLoad() override
Definition map_view.cpp:39
vec2 GetEditorOffset() const
Definition map_view.cpp:880
void OffsetWorld(vec2 Offset)
Definition map_view.cpp:855
void ZoomMouseTarget(float ZoomFactor)
Definition map_view.cpp:795
void OffsetEditor(vec2 Offset)
Definition map_view.cpp:860
void RenderEditorMap()
Definition map_view.cpp:76
void SetWorldOffset(vec2 WorldOffset)
Definition map_view.cpp:865
void RenderGroupBorder()
Definition map_view.cpp:54
void OnReset() override
Definition map_view.cpp:34
EActiveOp
Definition map_view.h:17
@ BRUSH_PAINT
Definition map_view.h:21
@ BRUSH_GRAB
Definition map_view.h:19
@ PAN_EDITOR
Definition map_view.h:23
@ PAN_WORLD
Definition map_view.h:22
@ BRUSH_DRAW
Definition map_view.h:20
@ NONE
Definition map_view.h:18
vec2 MouseDeltaWorld() const
Definition map_view.cpp:769
vec2 GetWorldOffset() const
Definition map_view.cpp:875
void Focus()
Definition map_view.cpp:49
void UpdateMouseWorld()
Definition map_view.cpp:714
vec2 MouseWorldPos() const
Definition map_view.cpp:774
void OnInit(CEditor *pEditor) override
Definition map_view.cpp:26
void ResetMouseDeltaWorld()
Definition map_view.cpp:759
float GetWorldZoom() const
Definition map_view.cpp:885
CSmoothValue * Zoom()
Definition map_view.cpp:825
CProofMode * ProofMode()
Definition map_view.cpp:835
Definition proof_mode.h:11
Definition smooth_value.h:12
Definition ui_rect.h:12
vector2_base< float > vec2
Definition vmath.h:161