Mercurial > LightClone
annotate LightClone/Source/GuiElement.h @ 25:eae13b04b06f
Working on Gui drag and drop
author | koryspansel <koryspansel@bendbroadband.com> |
---|---|
date | Fri, 16 Sep 2011 13:11:35 -0700 |
parents | a785b0aaf004 |
children | 3a63df04f3c0 |
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 /* |
25
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
16 * GuiInterface |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
17 */ |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
18 class GuiInterface; |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
19 |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
20 /* |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
21 * GuiElement |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
22 */ |
21
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
23 class GuiElement : private GuiEventMap |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
24 { |
19
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
25 public: |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
26 |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
27 /* |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
28 * List |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
29 */ |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
30 typedef ArrayList<GuiElement*> List; |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
31 |
17
4951acfe92fc
Reworking GUI system
koryspansel <koryspansel@bendbroadband.com>
parents:
11
diff
changeset
|
32 protected: |
4951acfe92fc
Reworking GUI system
koryspansel <koryspansel@bendbroadband.com>
parents:
11
diff
changeset
|
33 |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
34 /* |
25
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
35 * pInterface |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
36 */ |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
37 GuiInterface* pInterface; |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
38 |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
39 /* |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
40 * pContainer |
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 GuiElement* pContainer; |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
43 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
44 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
45 * kPosition |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
46 */ |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
47 D3DXVECTOR2 kPosition; |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
48 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
49 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
50 * kDimensions |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
51 */ |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
52 D3DXVECTOR2 kDimensions; |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
53 |
19
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
54 /* |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
55 * kColor |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
56 */ |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
57 D3DCOLOR kColor; |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
58 |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
59 /* |
23 | 60 * bVisible |
61 */ | |
62 bool bVisible; | |
63 | |
64 /* | |
19
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
65 * kChildren |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
66 */ |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
67 List kChildren; |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
68 |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
69 public: |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
70 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
71 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
72 * GuiElement |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
73 */ |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
74 GuiElement(); |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
75 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
76 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
77 * ~GuiElement |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
78 */ |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
79 virtual ~GuiElement(); |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
80 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
81 /* |
11
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
82 * Initialize |
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 ErrorCode Initialize(ResourceManager* pResourceManager); |
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 /* |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
87 * Terminate |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
88 */ |
19
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
89 virtual void Terminate(); |
11
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
90 |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
91 /* |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
92 * Update |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
93 */ |
19
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
94 virtual void Update(float fElapsed); |
11
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
95 |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
96 /* |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
97 * Render |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
98 */ |
19
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
99 virtual void Render(RenderContext& kContext, Camera& kCamera); |
11
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
100 |
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
101 /* |
25
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
102 * SetInterface |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
103 */ |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
104 void SetInterface(GuiInterface* pInstance); |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
105 |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
106 /* |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
107 * GetInterface |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
108 */ |
25
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
109 GuiInterface* GetInterface(); |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
110 |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
111 /* |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
112 * SetParent |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
113 */ |
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
114 void SetParent(GuiElement* pInstance); |
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 /* |
25
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
117 * GetParent |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
118 */ |
25
eae13b04b06f
Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents:
23
diff
changeset
|
119 GuiElement* GetParent(); |
10
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 * SetPosition |
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 SetPosition(float fX, float fY); |
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 * SetPosition |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
128 */ |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
129 void SetPosition(const D3DXVECTOR2& kValue); |
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 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
132 * GetPosition |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
133 */ |
18 | 134 const D3DXVECTOR2 GetPosition() const; |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
135 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
136 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
137 * SetDimensions |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
138 */ |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
139 void SetDimensions(float fWidth, float fHeight); |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
140 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
141 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
142 * SetDimensions |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
143 */ |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
144 void SetDimensions(const D3DXVECTOR2& kValue); |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
145 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
146 /* |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
147 * GetDimensions |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
148 */ |
18 | 149 const D3DXVECTOR2 GetDimensions() const; |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
150 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
151 /* |
23 | 152 * GetWidth |
153 */ | |
154 float GetWidth() const; | |
155 | |
156 /* | |
157 * GetHeight | |
158 */ | |
159 float GetHeight() const; | |
160 | |
161 /* | |
162 * SetVisible | |
163 */ | |
164 void SetVisible(bool bValue); | |
165 | |
166 /* | |
167 * IsVisible | |
168 */ | |
169 bool IsVisible() const; | |
170 | |
171 /* | |
11
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
172 * Pick |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
173 */ |
11
d80d06d5ff53
Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
10
diff
changeset
|
174 virtual GuiElement* Pick(float fX, float fY); |
19
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 * Add |
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 ErrorCode Add(GuiElement* pElement); |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
180 |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
181 /* |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
182 * Remove |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
183 */ |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
184 ErrorCode Remove(GuiElement* pElement); |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
185 |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
186 /* |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
187 * OnMouseDown |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
188 */ |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
189 virtual void OnMouseDown(uint32 nButton, float fX, float fY); |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
190 |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
191 /* |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
192 * OnMouseUp |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
193 */ |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
194 virtual void OnMouseUp(uint32 nButton, float fX, float fY); |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
195 |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
196 /* |
21
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
197 * OnMouseMove |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
198 */ |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
199 virtual void OnMouseMove(float fX, float fY); |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
200 |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
201 /* |
19
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
202 * OnDrop |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
203 */ |
51718795f019
Adding event handling & drag and drop to GuiInterface
koryspansel
parents:
18
diff
changeset
|
204 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
|
205 |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
206 /* |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
207 * Subscribe |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
208 */ |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
209 using GuiEventMap::Subscribe; |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
210 |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
211 /* |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
212 * Fire |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
213 */ |
b4dc5d674e22
Added GUI event system and some support data structures
koryspansel
parents:
19
diff
changeset
|
214 using GuiEventMap::Fire; |
10
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
215 }; |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
216 |
292e534f00c2
Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
217 #endif //__GUIELEMENT_H__ |