git-svn-id: https://scorched3d.svn.sourceforge.net/svnroot/scorched3d/trunk/scorched...
[scorched3d/parasti.git] / src / client / GLW / GLWTankTip.h
blobc4d275de3e42fdd042e96903d46488c9b8b104c8
1 ////////////////////////////////////////////////////////////////////////////////
2 // Scorched3D (c) 2000-2009
3 //
4 // This file is part of Scorched3D.
5 //
6 // Scorched3D is free software; you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation; either version 2 of the License, or
9 // (at your option) any later version.
11 // Scorched3D is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License
17 // along with Scorched3D; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 ////////////////////////////////////////////////////////////////////////////////
21 #ifndef _gLWTankTip_h
22 #define _gLWTankTip_h
24 #include <GLW/GLWToolTip.h>
25 #include <GLW/GLWSelector.h>
26 #include <tank/Tank.h>
28 class TankUndoMenu : public GLWSelectorI
30 public:
31 TankUndoMenu(Tank *tank);
32 virtual ~TankUndoMenu();
34 void showItems(float x, float y);
35 virtual void itemSelected(GLWSelectorEntry *entry, int position);
36 protected:
37 Tank *tank_;
40 class TankFuelTip : public ToolTip, public GLWSelectorI
42 public:
43 TankFuelTip(Tank *tank);
44 virtual ~TankFuelTip();
46 virtual void populate();
47 void showItems(float x, float y);
48 virtual void itemSelected(GLWSelectorEntry *entry, int position);
49 protected:
50 Tank *tank_;
53 class TankBatteryTip : public ToolTip, public GLWSelectorI
55 public:
56 TankBatteryTip(Tank *tank);
57 virtual ~TankBatteryTip();
59 virtual void populate();
60 void showItems(float x, float y);
61 virtual void itemSelected(GLWSelectorEntry *entry, int position);
62 protected:
63 Tank *tank_;
66 class TankShieldTip : public ToolTip, public GLWSelectorI
68 public:
69 TankShieldTip(Tank *tank);
70 virtual ~TankShieldTip();
72 virtual void populate();
73 void showItems(float x, float y);
74 virtual void itemSelected(GLWSelectorEntry *entry, int position);
75 protected:
76 Tank *tank_;
79 class TankHealthTip : public ToolTip
81 public:
82 TankHealthTip(Tank *tank);
83 virtual ~TankHealthTip();
85 virtual void populate();
86 protected:
87 Tank *tank_;
90 class TankRankTip : public ToolTip
92 public:
93 TankRankTip(Tank *tank);
94 virtual ~TankRankTip();
96 virtual void populate();
97 protected:
98 Tank *tank_;
101 class TankParachutesTip : public ToolTip, public GLWSelectorI
103 public:
104 TankParachutesTip(Tank *tank);
105 virtual ~TankParachutesTip();
107 virtual void populate();
108 void showItems(float x, float y);
109 virtual void itemSelected(GLWSelectorEntry *entry, int position);
110 protected:
111 Tank *tank_;
114 class TankAutoDefenseTip : public ToolTip
116 public:
117 TankAutoDefenseTip(Tank *tank);
118 virtual ~TankAutoDefenseTip();
120 void showItems(float x, float y);
121 virtual void populate();
122 protected:
123 Tank *tank_;
126 class TankWeaponTip : public ToolTip, public GLWSelectorI
128 public:
129 TankWeaponTip(Tank *tank);
130 virtual ~TankWeaponTip();
132 virtual void populate();
133 void showItems(float x, float y);
134 virtual void itemSelected(GLWSelectorEntry *entry, int position);
135 protected:
136 Tank *tank_;
139 class TankPowerTip : public ToolTip
141 public:
142 TankPowerTip(Tank *tank);
143 virtual ~TankPowerTip();
145 virtual void populate();
146 protected:
147 Tank *tank_;
150 class TankRotationTip : public ToolTip
152 public:
153 TankRotationTip(Tank *tank);
154 virtual ~TankRotationTip();
156 virtual void populate();
157 protected:
158 Tank *tank_;
161 class TankElevationTip : public ToolTip
163 public:
164 TankElevationTip(Tank *tank);
165 virtual ~TankElevationTip();
167 virtual void populate();
168 protected:
169 Tank *tank_;
172 class TankTip : public ToolTip
174 public:
175 TankTip(Tank *tank);
176 virtual ~TankTip();
178 virtual void populate();
179 protected:
180 Tank *tank_;
183 class TargetTip : public ToolTip
185 public:
186 TargetTip(Target *target);
187 virtual ~TargetTip();
189 virtual void populate();
190 protected:
191 Target *target_;
194 class GLWTargetTips
196 public:
197 GLWTargetTips(Target *target);
198 virtual ~GLWTargetTips();
200 TargetTip targetTip;
202 private:
203 GLWTargetTips(const GLWTargetTips &);
204 const GLWTargetTips & operator=(const GLWTargetTips &);
207 class GLWTankTips
209 public:
210 GLWTankTips(Tank *tank);
211 virtual ~GLWTankTips();
213 TankTip tankTip;
214 ToolTip nameTip;
215 TankUndoMenu undoMenu;
216 TankWeaponTip weaponTip;
217 TankPowerTip powerTip;
218 TankRotationTip rotationTip;
219 TankElevationTip elevationTip;
220 TankAutoDefenseTip autodTip;
221 TankParachutesTip paraTip;
222 TankHealthTip healthTip;
223 TankShieldTip shieldTip;
224 TankBatteryTip batteryTip;
225 TankFuelTip fuelTip;
226 TankRankTip rankTip;
228 private:
229 GLWTankTips(const GLWTankTips &);
230 const GLWTankTips & operator=(const GLWTankTips &);
233 #endif // _gLWTankTip_h