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 OnMapLoad() override;
46
47 void ZoomMouseTarget(float ZoomFactor);
48 void UpdateZoom();
49
50 void RenderGroupBorder();
51 void RenderEditorMap();
52 void Render(CUIRect View);
53
54 void UpdateMouseWorld();
56 float MouseWorldScale() const;
57 vec2 MouseDeltaWorld() const;
58 vec2 MouseWorldPos() const;
60
61 bool IsFocused();
62 void Focus();
63
67 void ResetZoom();
68
72 float ScaleLength(float Value) const;
73
74 float GetWorldZoom() const;
75
76 void OffsetWorld(vec2 Offset);
77 void OffsetEditor(vec2 Offset);
78 void SetWorldOffset(vec2 WorldOffset);
79 void SetEditorOffset(vec2 EditorOffset);
80 vec2 GetWorldOffset() const;
81 vec2 GetEditorOffset() const;
82
84 const CSmoothValue *Zoom() const;
86 const CProofMode *ProofMode() const;
88 const CMapGrid *MapGrid() const;
89
90private:
93};
94
95#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:91
bool IsFocused()
Definition map_view.cpp:39
void ResetZoom()
Definition map_view.cpp:779
CMapGrid m_MapGrid
Definition map_view.h:92
void Render(CUIRect View)
Definition map_view.cpp:120
void SetEditorOffset(vec2 EditorOffset)
Definition map_view.cpp:865
float ScaleLength(float Value) const
Definition map_view.cpp:785
vec2 MouseWorldNoParaPos() const
Definition map_view.cpp:774
float MouseWorldScale() const
Definition map_view.cpp:759
CMapGrid * MapGrid()
Definition map_view.cpp:840
void UpdateZoom()
Definition map_view.cpp:809
void OnMapLoad() override
Definition map_view.cpp:34
vec2 GetEditorOffset() const
Definition map_view.cpp:875
void OffsetWorld(vec2 Offset)
Definition map_view.cpp:850
void ZoomMouseTarget(float ZoomFactor)
Definition map_view.cpp:790
void OffsetEditor(vec2 Offset)
Definition map_view.cpp:855
void RenderEditorMap()
Definition map_view.cpp:71
void SetWorldOffset(vec2 WorldOffset)
Definition map_view.cpp:860
void RenderGroupBorder()
Definition map_view.cpp:49
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:764
vec2 GetWorldOffset() const
Definition map_view.cpp:870
void Focus()
Definition map_view.cpp:44
void UpdateMouseWorld()
Definition map_view.cpp:709
vec2 MouseWorldPos() const
Definition map_view.cpp:769
void OnInit(CEditor *pEditor) override
Definition map_view.cpp:26
void ResetMouseDeltaWorld()
Definition map_view.cpp:754
float GetWorldZoom() const
Definition map_view.cpp:880
CSmoothValue * Zoom()
Definition map_view.cpp:820
CProofMode * ProofMode()
Definition map_view.cpp:830
Definition proof_mode.h:11
Definition smooth_value.h:12
Definition ui_rect.h:12
vector2_base< float > vec2
Definition vmath.h:161