--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/QTfrontend/ui/widget/selectWeapon.h Wed Sep 28 19:27:56 2011 +0200
@@ -0,0 +1,92 @@
+/*
+ * Hedgewars, a free turn based strategy game
+ * Copyright (c) 2006-2008 Igor Ulyanov <iulyanov@gmail.com>
+ * Copyright (c) 2008-2011 Andrey Korotaev <unC0Rr@gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+ */
+
+#ifndef _SELECT_WEAPON_INCLUDED
+#define _SELECT_WEAPON_INCLUDED
+
+#include <QFrame>
+#include <QMap>
+#include <QList>
+
+class QGridLayout;
+class WeaponItem;
+class QLineEdit;
+class QSettings;
+
+class SelWeaponItem : public QWidget
+{
+ Q_OBJECT
+
+public:
+ SelWeaponItem(bool allowInfinite, int iconNum, int wNum, QImage image, QImage imagegrey, QWidget* parent=0);
+
+ unsigned char getItemsNum() const;
+ void setItemsNum(const unsigned char num);
+ void setEnabled(bool value);
+
+ private:
+ WeaponItem* item;
+};
+
+class SelWeaponWidget : public QFrame
+{
+ Q_OBJECT
+
+ public:
+ SelWeaponWidget(int numItems, QWidget* parent=0);
+ QString getWeaponsString(const QString& name) const;
+ QStringList getWeaponNames() const;
+
+ public slots:
+ void setDefault();
+ void setWeapons(const QString& ammo);
+ //sets the name of the current set
+ void setWeaponsName(const QString& name);
+ void deleteWeaponsName();
+ void newWeaponsName();
+ void save();
+ void copy();
+
+ signals:
+ void weaponsChanged();
+ void weaponsDeleted();
+
+ private:
+ //the name of the current weapon set
+ QString curWeaponsName;
+
+ QLineEdit* m_name;
+
+ //storage for all the weapons sets
+ QSettings* wconf;
+
+ const int m_numItems;
+ int operator [] (unsigned int weaponIndex) const;
+
+ typedef QList<SelWeaponItem*> ItemsList;
+ typedef QMap<int, ItemsList> twi;
+ twi weaponItems;
+ //layout element for each tab:
+ QGridLayout* p1Layout;
+ QGridLayout* p2Layout;
+ QGridLayout* p3Layout;
+ QGridLayout* p4Layout;
+};
+
+#endif // _SELECT_WEAPON_INCLUDED