annotate LightClone/Source/GuiElement.cpp @ 64:3507bd831c7f

Hook up ServiceProvider
author koryspansel <koryspansel@bendbroadband.com>
date Tue, 04 Oct 2011 13:02:45 -0700
parents 1fe27776627e
children f7095bce01cf
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 #include "GuiElement.h"
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
6
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
7 /*
37
58a16d529d95 Refactoring code and adding events for drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 33
diff changeset
8 * EventDrop
58a16d529d95 Refactoring code and adding events for drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 33
diff changeset
9 */
58a16d529d95 Refactoring code and adding events for drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 33
diff changeset
10 const char* GuiElement::EventDrop = "GuiElement:EventDrop";
58a16d529d95 Refactoring code and adding events for drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 33
diff changeset
11
58a16d529d95 Refactoring code and adding events for drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 33
diff changeset
12 /*
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
13 * GuiElement
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
14 */
51
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
15 GuiElement::GuiElement()
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
16 {
51
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
17 pContainer = NULL;
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
18 kPosition = D3DXVECTOR2(0.0f, 0.0f);
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
19 fDepth = 1.0f;
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
20 kDimensions = D3DXVECTOR2(0.0f, 0.0f);
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
21 kColor = D3DCOLOR_XRGB(255, 255, 255);
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
22 nFlags = GuiElementFlag_Visible;
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
23 }
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
24
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
25 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
26 * ~GuiElement
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
27 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
28 GuiElement::~GuiElement()
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 }
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 /*
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
33 * Initialize
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
34 */
64
3507bd831c7f Hook up ServiceProvider
koryspansel <koryspansel@bendbroadband.com>
parents: 61
diff changeset
35 ErrorCode GuiElement::Initialize(ServiceProvider* pInstance)
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
36 {
64
3507bd831c7f Hook up ServiceProvider
koryspansel <koryspansel@bendbroadband.com>
parents: 61
diff changeset
37 ASSERT(pInstance != NULL);
3507bd831c7f Hook up ServiceProvider
koryspansel <koryspansel@bendbroadband.com>
parents: 61
diff changeset
38 pServiceProvider = pInstance;
51
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
39
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
40 return Error_Success;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
41 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
42
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
43 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
44 * Terminate
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
45 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
46 void GuiElement::Terminate()
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
47 {
60
b0f642ee22d3 Additional maps
koryspansel <koryspansel@bendbroadband.com>
parents: 51
diff changeset
48 for(uint32 i = 0; i < kChildren.Size(); ++i)
b0f642ee22d3 Additional maps
koryspansel <koryspansel@bendbroadband.com>
parents: 51
diff changeset
49 {
b0f642ee22d3 Additional maps
koryspansel <koryspansel@bendbroadband.com>
parents: 51
diff changeset
50 kChildren[i]->Terminate();
b0f642ee22d3 Additional maps
koryspansel <koryspansel@bendbroadband.com>
parents: 51
diff changeset
51 }
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
52 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
53
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 * Update
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 void GuiElement::Update(float fElapsed)
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 for(uint32 i = 0; i < kChildren.Size(); ++i)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
60 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
61 kChildren[i]->Update(fElapsed);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
62 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
63 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
64
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
65 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
66 * Render
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
67 */
50
7ff46a00bcd3 Working on GuiRenderContext
koryspansel
parents: 44
diff changeset
68 void GuiElement::Render(GuiRenderContext& kContext)
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
69 {
26
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
70 if(nFlags & GuiElementFlag_Visible)
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
71 {
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
72 for(uint32 i = 0; i < kChildren.Size(); ++i)
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
73 {
50
7ff46a00bcd3 Working on GuiRenderContext
koryspansel
parents: 44
diff changeset
74 kChildren[i]->Render(kContext);
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
75 }
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
76 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
77 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
78
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
79 /*
25
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
80 * SetInterface
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
81 */
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
82 void GuiElement::SetInterface(GuiInterface* pInstance)
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
83 {
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
84 pInterface = pInstance;
32
c227be6a15fe Fixed drag and drop handling; Just needs to be hooked up now
koryspansel
parents: 26
diff changeset
85
c227be6a15fe Fixed drag and drop handling; Just needs to be hooked up now
koryspansel
parents: 26
diff changeset
86 for(uint32 i = 0; i < kChildren.Size(); ++i)
c227be6a15fe Fixed drag and drop handling; Just needs to be hooked up now
koryspansel
parents: 26
diff changeset
87 {
c227be6a15fe Fixed drag and drop handling; Just needs to be hooked up now
koryspansel
parents: 26
diff changeset
88 kChildren[i]->SetInterface(pInstance);
c227be6a15fe Fixed drag and drop handling; Just needs to be hooked up now
koryspansel
parents: 26
diff changeset
89 }
25
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
90 }
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
91
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
92 /*
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
93 * GetInterface
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
94 */
25
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
95 GuiInterface* GuiElement::GetInterface()
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
96 {
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
97 return pInterface;
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
98 }
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
99
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
100 /*
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
101 * SetParent
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
102 */
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
103 void GuiElement::SetParent(GuiElement* pInstance)
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
104 {
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
105 pContainer = pInstance;
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
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 * GetParent
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
110 */
25
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
111 GuiElement* GuiElement::GetParent()
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
112 {
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
113 return pContainer;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
114 }
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 * SetPosition
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 GuiElement::SetPosition(float fX, float fY)
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 kPosition.x = fX;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
122 kPosition.y = fY;
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
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 * SetPosition
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
127 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
128 void GuiElement::SetPosition(const D3DXVECTOR2& kValue)
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
129 {
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
130 kPosition = kValue;
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
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
133 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
134 * GetPosition
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
135 */
18
33cb6979ac51 More work on GUI system
koryspansel
parents: 17
diff changeset
136 const D3DXVECTOR2 GuiElement::GetPosition() const
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
137 {
18
33cb6979ac51 More work on GUI system
koryspansel
parents: 17
diff changeset
138 return pContainer ? pContainer->GetPosition() + kPosition : kPosition;
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
139 }
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 /*
51
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
142 * SetDepth
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
143 */
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
144 void GuiElement::SetDepth(float fValue)
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
145 {
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
146 fDepth = fValue;
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
147 }
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
148
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
149 /*
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
150 * GetDepth
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
151 */
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
152 float GuiElement::GetDepth() const
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
153 {
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
154 return fDepth;
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
155 }
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
156
efd2b1ca5b77 Clean up gui
koryspansel <koryspansel@bendbroadband.com>
parents: 50
diff changeset
157 /*
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
158 * SetDimensions
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
159 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
160 void GuiElement::SetDimensions(float fWidth, float fHeight)
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
161 {
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
162 kDimensions.x = fWidth;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
163 kDimensions.y = fHeight;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
164 }
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
165
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
166 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
167 * SetDimensions
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
168 */
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
169 void GuiElement::SetDimensions(const D3DXVECTOR2& kValue)
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
170 {
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
171 kDimensions = kValue;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
172 }
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
173
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
174 /*
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
175 * GetDimensions
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
176 */
18
33cb6979ac51 More work on GUI system
koryspansel
parents: 17
diff changeset
177 const D3DXVECTOR2 GuiElement::GetDimensions() const
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
178 {
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
179 return kDimensions;
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
180 }
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
181
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
182 /*
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
183 * GetWidth
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
184 */
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
185 float GuiElement::GetWidth() const
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
186 {
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
187 return kDimensions.x;
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
188 }
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
189
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
190 /*
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
191 * GetHeight
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
192 */
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
193 float GuiElement::GetHeight() const
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
194 {
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
195 return kDimensions.y;
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
196 }
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
197
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
198 /*
26
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
199 * SetFlag
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
200 */
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
201 void GuiElement::SetFlag(uint32 nValue)
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
202 {
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
203 nFlags |= nValue;
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
204 }
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
205
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
206 /*
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
207 * ClearFlag
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
208 */
26
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
209 void GuiElement::ClearFlag(uint32 nValue)
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
210 {
26
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
211 nFlags &= ~nValue;
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
212 }
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
213
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
214 /*
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
215 * HasFlag
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
216 */
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
217 bool GuiElement::HasFlag(uint32 nValue) const
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
218 {
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
219 return (nFlags & nValue) == nValue;
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
220 }
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
221
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
222 /*
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
223 * IsVisible
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
224 */
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
225 bool GuiElement::IsVisible() const
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
226 {
26
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
227 return (nFlags & GuiElementFlag_Visible) != 0;
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
228 }
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
229
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
230 /*
33
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
231 * SetColor
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
232 */
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
233 void GuiElement::SetColor(D3DCOLOR nColor)
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
234 {
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
235 kColor = nColor;
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
236 }
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
237
06b151afc8d0 Cleaned up UI art; Completed drag and drop; Centered grid
koryspansel <koryspansel@bendbroadband.com>
parents: 32
diff changeset
238 /*
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
239 * Pick
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
240 */
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
241 GuiElement* GuiElement::Pick(float fX, float fY)
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
242 {
20
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
243 GuiElement* pElement = NULL;
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
244
44
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
245 if(HasFlag(GuiElementFlag_Visible))
20
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
246 {
44
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
247 for(int32 i = (int32)kChildren.Size() - 1; i >= 0 && !pElement; --i)
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
248 {
44
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
249 if(kChildren[i]->Contains(fX, fY))
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
250 {
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
251 pElement = kChildren[i]->Pick(fX, fY);
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
252 }
20
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
253 }
11
d80d06d5ff53 Begin working on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents: 10
diff changeset
254
44
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
255 if(!pElement)
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
256 {
44
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
257 if(HasFlag(GuiElementFlag_Pickable))
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
258 {
44
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
259 if(Contains(fX, fY))
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
260 {
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
261 pElement = this;
6790cf9e8bd8 Game works from start to finish
koryspansel <koryspansel@bendbroadband.com>
parents: 37
diff changeset
262 }
23
a785b0aaf004 More work on the Gui system
koryspansel
parents: 21
diff changeset
263 }
20
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
264 }
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
265 }
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
266
4e9b5299ffdc Added GuiCursor and fixed picking
koryspansel <koryspansel@bendbroadband.com>
parents: 19
diff changeset
267 return pElement;
10
292e534f00c2 Moved rendering into Bot/Environment; Started work on Gui system
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
268 }
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
269
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
270 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
271 * Add
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
272 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
273 ErrorCode GuiElement::Add(GuiElement* pElement)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
274 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
275 ErrorCode eCode = Error_Fail;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
276
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
277 if(pElement)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
278 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
279 eCode = kChildren.Add(pElement);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
280 if(eCode == Error_Success)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
281 {
25
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
282 pElement->SetInterface(pInterface);
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
283 pElement->SetParent(this);
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
284 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
285 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
286
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
287 return eCode;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
288 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
289
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
290 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
291 * Remove
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
292 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
293 ErrorCode GuiElement::Remove(GuiElement* pElement)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
294 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
295 ErrorCode eCode = Error_Fail;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
296
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
297 if(pElement)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
298 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
299 eCode = kChildren.Remove(pElement);
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
300 if(eCode == Error_Success)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
301 {
25
eae13b04b06f Working on Gui drag and drop
koryspansel <koryspansel@bendbroadband.com>
parents: 23
diff changeset
302 pElement->SetParent(NULL);
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
303 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
304 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
305
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
306 return eCode;
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
307 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
308
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
309 /*
26
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
310 * Contains
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
311 */
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
312 bool GuiElement::Contains(float fX, float fY)
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
313 {
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
314 const D3DXVECTOR2& kLocation = GetPosition();
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
315
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
316 const float fDeltaX = fX - kLocation.x;
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
317 const float fDeltaY = fY - kLocation.y;
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
318
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
319 return (0.0f <= fDeltaX && fDeltaX < kDimensions.x) && (0.0f <= fDeltaY && fDeltaY < kDimensions.y);
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
320 }
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
321
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
322 /*
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
323 * OnMouseEnter
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
324 */
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
325 void GuiElement::OnMouseEnter()
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
326 {
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
327 }
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
328
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
329 /*
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
330 * OnMouseLeave
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
331 */
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
332 void GuiElement::OnMouseLeave()
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
333 {
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
334 }
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
335
3a63df04f3c0 Several Gui enhancements; Drag and drop should work; Added resource caching
koryspansel
parents: 25
diff changeset
336 /*
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
337 * OnMouseDown
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
338 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
339 void GuiElement::OnMouseDown(uint32 nButton, float fX, float fY)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
340 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
341 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
342
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
343 /*
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
344 * OnMouseUp
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
345 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
346 void GuiElement::OnMouseUp(uint32 nButton, float fX, float fY)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
347 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
348 }
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
349
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
350 /*
21
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 20
diff changeset
351 * OnMouseMove
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 20
diff changeset
352 */
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 20
diff changeset
353 void GuiElement::OnMouseMove(float fX, float fY)
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 20
diff changeset
354 {
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 20
diff changeset
355 }
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 20
diff changeset
356
b4dc5d674e22 Added GUI event system and some support data structures
koryspansel
parents: 20
diff changeset
357 /*
19
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
358 * OnDrop
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
359 */
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
360 void GuiElement::OnDrop(GuiElement* pSource, float fX, float fY)
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
361 {
51718795f019 Adding event handling & drag and drop to GuiInterface
koryspansel
parents: 18
diff changeset
362 }