00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _gLWTankTip_h
00022 #define _gLWTankTip_h
00023
00024 #include <GLW/GLWToolTip.h>
00025 #include <GLW/GLWSelector.h>
00026 #include <tank/Tank.h>
00027
00028 class TankUndoMenu : public GLWSelectorI
00029 {
00030 public:
00031 TankUndoMenu(Tank *tank);
00032 virtual ~TankUndoMenu();
00033
00034 void showItems(float x, float y);
00035 virtual void itemSelected(GLWSelectorEntry *entry, int position);
00036 protected:
00037 Tank *tank_;
00038 };
00039
00040 class TankFuelTip : public ToolTip, public GLWSelectorI
00041 {
00042 public:
00043 TankFuelTip(Tank *tank);
00044 virtual ~TankFuelTip();
00045
00046 virtual void populate();
00047 void showItems(float x, float y);
00048 virtual void itemSelected(GLWSelectorEntry *entry, int position);
00049 protected:
00050 Tank *tank_;
00051 };
00052
00053 class TankBatteryTip : public ToolTip, public GLWSelectorI
00054 {
00055 public:
00056 TankBatteryTip(Tank *tank);
00057 virtual ~TankBatteryTip();
00058
00059 virtual void populate();
00060 void showItems(float x, float y);
00061 virtual void itemSelected(GLWSelectorEntry *entry, int position);
00062 protected:
00063 Tank *tank_;
00064 };
00065
00066 class TankShieldTip : public ToolTip, public GLWSelectorI
00067 {
00068 public:
00069 TankShieldTip(Tank *tank);
00070 virtual ~TankShieldTip();
00071
00072 virtual void populate();
00073 void showItems(float x, float y);
00074 virtual void itemSelected(GLWSelectorEntry *entry, int position);
00075 protected:
00076 Tank *tank_;
00077 };
00078
00079 class TankHealthTip : public ToolTip
00080 {
00081 public:
00082 TankHealthTip(Tank *tank);
00083 virtual ~TankHealthTip();
00084
00085 virtual void populate();
00086 protected:
00087 Tank *tank_;
00088 };
00089
00090 class TankRankTip : public ToolTip
00091 {
00092 public:
00093 TankRankTip(Tank *tank);
00094 virtual ~TankRankTip();
00095
00096 virtual void populate();
00097 protected:
00098 Tank *tank_;
00099 };
00100
00101 class TankParachutesTip : public ToolTip, public GLWSelectorI
00102 {
00103 public:
00104 TankParachutesTip(Tank *tank);
00105 virtual ~TankParachutesTip();
00106
00107 virtual void populate();
00108 void showItems(float x, float y);
00109 virtual void itemSelected(GLWSelectorEntry *entry, int position);
00110 protected:
00111 Tank *tank_;
00112 };
00113
00114 class TankAutoDefenseTip : public ToolTip
00115 {
00116 public:
00117 TankAutoDefenseTip(Tank *tank);
00118 virtual ~TankAutoDefenseTip();
00119
00120 void showItems(float x, float y);
00121 virtual void populate();
00122 protected:
00123 Tank *tank_;
00124 };
00125
00126 class TankWeaponTip : public ToolTip, public GLWSelectorI
00127 {
00128 public:
00129 TankWeaponTip(Tank *tank);
00130 virtual ~TankWeaponTip();
00131
00132 virtual void populate();
00133 void showItems(float x, float y);
00134 virtual void itemSelected(GLWSelectorEntry *entry, int position);
00135 protected:
00136 Tank *tank_;
00137 };
00138
00139 class TankPowerTip : public ToolTip
00140 {
00141 public:
00142 TankPowerTip(Tank *tank);
00143 virtual ~TankPowerTip();
00144
00145 virtual void populate();
00146 protected:
00147 Tank *tank_;
00148 };
00149
00150 class TankRotationTip : public ToolTip
00151 {
00152 public:
00153 TankRotationTip(Tank *tank);
00154 virtual ~TankRotationTip();
00155
00156 virtual void populate();
00157 protected:
00158 Tank *tank_;
00159 };
00160
00161 class TankElevationTip : public ToolTip
00162 {
00163 public:
00164 TankElevationTip(Tank *tank);
00165 virtual ~TankElevationTip();
00166
00167 virtual void populate();
00168 protected:
00169 Tank *tank_;
00170 };
00171
00172 class TankTip : public ToolTip
00173 {
00174 public:
00175 TankTip(Tank *tank);
00176 virtual ~TankTip();
00177
00178 virtual void populate();
00179 protected:
00180 Tank *tank_;
00181 };
00182
00183 class TargetTip : public ToolTip
00184 {
00185 public:
00186 TargetTip(Target *target);
00187 virtual ~TargetTip();
00188
00189 virtual void populate();
00190 protected:
00191 Target *target_;
00192 };
00193
00194 class GLWTargetTips
00195 {
00196 public:
00197 GLWTargetTips(Target *target);
00198 virtual ~GLWTargetTips();
00199
00200 TargetTip targetTip;
00201
00202 private:
00203 GLWTargetTips(const GLWTargetTips &);
00204 const GLWTargetTips & operator=(const GLWTargetTips &);
00205 };
00206
00207 class GLWTankTips
00208 {
00209 public:
00210 GLWTankTips(Tank *tank);
00211 virtual ~GLWTankTips();
00212
00213 TankTip tankTip;
00214 ToolTip nameTip;
00215 TankUndoMenu undoMenu;
00216 TankWeaponTip weaponTip;
00217 TankPowerTip powerTip;
00218 TankRotationTip rotationTip;
00219 TankElevationTip elevationTip;
00220 TankAutoDefenseTip autodTip;
00221 TankParachutesTip paraTip;
00222 TankHealthTip healthTip;
00223 TankShieldTip shieldTip;
00224 TankBatteryTip batteryTip;
00225 TankFuelTip fuelTip;
00226 TankRankTip rankTip;
00227
00228 private:
00229 GLWTankTips(const GLWTankTips &);
00230 const GLWTankTips & operator=(const GLWTankTips &);
00231 };
00232
00233 #endif // _gLWTankTip_h
00234