Accessory sorting due to price.
[scorched3d.git] / src / client / dialogs / InventoryDialog.h
blob8aa188b08b22db4dcf02cdad388699a51e29e7c2
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 #if !defined(AFX_InventoryDialog_H__4B5E93CF_1DE2_4979_A629_AEBD725ABE65__INCLUDED_)
22 #define AFX_InventoryDialog_H__4B5E93CF_1DE2_4979_A629_AEBD725ABE65__INCLUDED_
24 #include <map>
25 #include <vector>
26 #include <weapons/Weapon.h>
27 #include <GLW/GLWWindow.h>
28 #include <GLW/GLWButton.h>
29 #include <GLW/GLWPanel.h>
30 #include <GLW/GLWTab.h>
31 #include <GLW/GLWDropDownText.h>
33 class InventoryDialog : public GLWWindow,
34 public GLWButtonI,
35 public GLWDropDownI
37 public:
38 static InventoryDialog *instance();
40 // Inherited from GLWButtonI
41 virtual void buttonDown(unsigned int id);
42 virtual void windowInit(const unsigned state);
44 // Inherited from GLWDropDownI
45 virtual void select(unsigned int id, const int pos, GLWSelectorEntry value);
47 // Inherited from GLWPanel through GLWPanel
48 virtual void display();
50 protected:
51 static InventoryDialog *instance_;
53 unsigned int okId_;
54 GLWTab *sellTab_;
55 GLWPanel *topPanel_;
56 GLWDropDownText *sortDropDown_;
58 void setupWindow();
59 void playerRefresh();
60 void addPlayerName();
61 void addPlayerWeapons();
63 private:
64 InventoryDialog();
65 virtual ~InventoryDialog();
68 #endif // !defined(AFX_InventoryDialog_H__4B5E93CF_1DE2_4979_A629_AEBD725ABE65__INCLUDED_)