00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #if !defined(__INCLUDE_PlayerDialogh_INCLUDE__)
00022 #define __INCLUDE_PlayerDialogh_INCLUDE__
00023
00024 #include <GLW/GLWWindow.h>
00025 #include <GLW/GLWButton.h>
00026 #include <GLW/GLWTextBox.h>
00027 #include <GLW/GLWImageList.h>
00028 #include <GLW/GLWLabel.h>
00029 #include <GLW/GLWDropDownColor.h>
00030 #include <GLEXT/GLTexture.h>
00031 #include <GLW/GLWTankViewer.h>
00032
00033 class PlayerDialog : public GLWWindow,
00034 public GLWButtonI, public GLWDropDownI
00035 {
00036 public:
00037 static PlayerDialog *instance();
00038
00039 virtual void display();
00040 virtual void draw();
00041
00042
00043 virtual void keyDown(char *buffer, unsigned int keyState,
00044 KeyboardHistory::HistoryElement *history, int hisCount,
00045 bool &skipRest);
00046
00047
00048 virtual void buttonDown(unsigned int id);
00049
00050
00051 virtual void select(unsigned int id, const int pos,
00052 GLWSelectorEntry value);
00053
00054 protected:
00055 PlayerDialog();
00056 virtual ~PlayerDialog();
00057
00058 static PlayerDialog *instance_;
00059 GLWDropDownText *typeDropDown_;
00060 GLWDropDownText *teamDropDown_;
00061 GLWDropDownColor *colorDropDown_;
00062 GLWLabel *colorLabel_;
00063 GLWLabel *teamLabel_;
00064 GLWTankViewer *viewer_;
00065 GLWTextBox *playerName_;
00066 GLWImageList *imageList_;
00067 ToolTip avatarTip1_, avatarTip2_;
00068 ToolTip humanToolTip_;
00069 GLTexture colorTexture_;
00070 unsigned int allocatedTeam_;
00071 unsigned int okId_, cancelId_;
00072 unsigned int currentPlayerId_;
00073
00074 void nextPlayer();
00075 int getCurrentTeam();
00076 unsigned int getNextPlayer(unsigned int current);
00077
00078 };
00079
00080 #endif