annotate LightClone/Source/GuiElement.h @ 21:b4dc5d674e22

Added GUI event system and some support data structures
author koryspansel
date Thu, 15 Sep 2011 18:42:12 -0700
parents 51718795f019
children a785b0aaf004
rev   line source
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
1 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
2 * GuiElement
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
3 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
4
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
5 #ifndef __GUIELEMENT_H__
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
6 #define __GUIELEMENT_H__
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
7
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
8 #include "Core.h"
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
9 #include "ResourceManager.h"
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
10 #include "RenderContext.h"
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
11 #include "Camera.h"
17
4951acfe92fc Reworking GUI system
koryspansel <koryspansel@bendbroadband.com>
parents: 11
diff changeset
12 #include "ArrayList.h"
21
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
13 #include "GuiEventMap.h"
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
14
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
15 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
16 * GuiElement
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
17 */
21
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
18 class GuiElement : private GuiEventMap
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
19 {
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
20 public:
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
21
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
22 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
23 * List
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
24 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
25 typedef ArrayList<GuiElement*> List;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
26
17
4951acfe92fc Reworking GUI system
koryspansel <koryspansel@bendbroadband.com>
parents: 11
diff changeset
27 protected:
4951acfe92fc Reworking GUI system
koryspansel <koryspansel@bendbroadband.com>
parents: 11
diff changeset
28
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
29 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
30 * pContainer
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
31 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
32 GuiElement* pContainer;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
33
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
34 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
35 * kPosition
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
36 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
37 D3DXVECTOR2 kPosition;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
38
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
39 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
40 * kDimensions
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
41 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
42 D3DXVECTOR2 kDimensions;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
43
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
44 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
45 * kColor
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
46 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
47 D3DCOLOR kColor;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
48
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
49 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
50 * kChildren
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
51 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
52 List kChildren;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
53
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
54 public:
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
55
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
56 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
57 * GuiElement
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
58 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
59 GuiElement();
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
60
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
61 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
62 * ~GuiElement
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
63 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
64 virtual ~GuiElement();
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
65
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
66 /*
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
67 * Initialize
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
68 */
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
69 virtual ErrorCode Initialize(ResourceManager* pResourceManager);
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
70
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
71 /*
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
72 * Terminate
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
73 */
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
74 virtual void Terminate();
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
75
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
76 /*
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
77 * Update
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
78 */
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
79 virtual void Update(float fElapsed);
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
80
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
81 /*
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
82 * Render
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
83 */
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
84 virtual void Render(RenderContext& kContext, Camera& kCamera);
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
85
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
86 /*
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
87 * Attach
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
88 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
89 void Attach(GuiElement* pInstance);
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
90
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
91 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
92 * Detach
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
93 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
94 GuiElement* Detach();
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
95
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
96 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
97 * GetContainer
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
98 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
99 GuiElement* GetContainer();
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
100
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
101 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
102 * SetPosition
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
103 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
104 void SetPosition(float fX, float fY);
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
105
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
106 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
107 * SetPosition
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
108 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
109 void SetPosition(const D3DXVECTOR2& kValue);
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
110
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
111 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
112 * GetPosition
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
113 */
18
33cb6979ac51 More work on GUI system
koryspansel
parents: 17
diff changeset
114 const D3DXVECTOR2 GetPosition() const;
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
115
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
116 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
117 * SetDimensions
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
118 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
119 void SetDimensions(float fWidth, float fHeight);
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
120
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
121 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
122 * SetDimensions
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
123 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
124 void SetDimensions(const D3DXVECTOR2& kValue);
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
125
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
126 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
127 * GetDimensions
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
128 */
18
33cb6979ac51 More work on GUI system
koryspansel
parents: 17
diff changeset
129 const D3DXVECTOR2 GetDimensions() const;
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
130
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
131 /*
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
132 * Pick
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
133 */
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
134 virtual GuiElement* Pick(float fX, float fY);
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
135
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
136 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
137 * Add
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
138 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
139 ErrorCode Add(GuiElement* pElement);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
140
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
141 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
142 * Remove
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
143 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
144 ErrorCode Remove(GuiElement* pElement);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
145
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
146 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
147 * AllowDrag
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
148 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
149 virtual bool AllowDrag() const;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
150
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
151 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
152 * AllowDrop
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
153 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
154 virtual bool AllowDrop() const;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
155
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
156 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
157 * OnMouseDown
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
158 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
159 virtual void OnMouseDown(uint32 nButton, float fX, float fY);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
160
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
161 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
162 * OnMouseUp
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
163 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
164 virtual void OnMouseUp(uint32 nButton, float fX, float fY);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
165
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
166 /*
21
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
167 * OnMouseMove
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
168 */
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
169 virtual void OnMouseMove(float fX, float fY);
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
170
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
171 /*
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
172 * OnDrag
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
173 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
174 virtual void OnDrag(float fX, float fY);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
175
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
176 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
177 * OnDrop
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
178 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
179 virtual void OnDrop(GuiElement* pSource, float fX, float fY);
21
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
180
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
181 /*
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
182 * Subscribe
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
183 */
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
184 using GuiEventMap::Subscribe;
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
185
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
186 /*
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
187 * Fire
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
188 */
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 19
diff changeset
189 using GuiEventMap::Fire;
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
190 };
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
191
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
192 #endif //__GUIELEMENT_H__