--- a/QTfrontend/CMakeLists.txt Tue Mar 10 17:55:29 2009 +0000
+++ b/QTfrontend/CMakeLists.txt Tue Mar 10 17:55:44 2009 +0000
@@ -82,6 +82,7 @@
weaponItem.cpp
statsPage.cpp
misc.cpp
+ ammoSchemeModel.cpp
)
if(MINGW)
@@ -130,6 +131,7 @@
weaponItem.h
statsPage.h
misc.h
+ ammoSchemeModel.h
)
set(hwfr_hdrs
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/QTfrontend/ammoSchemeModel.cpp Tue Mar 10 17:55:44 2009 +0000
@@ -0,0 +1,60 @@
+/*
+ * Hedgewars, a free turn based strategy game
+ * Copyright (c) 2009 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
+ */
+
+#include <QModelIndex>
+#include "ammoSchemeModel.h"
+
+AmmoSchemeModel::AmmoSchemeModel(QObject* parent) :
+ QAbstractTableModel(parent)
+{
+
+}
+
+QVariant AmmoSchemeModel::headerData(int section, Qt::Orientation orientation, int role) const
+{
+ return QVariant();
+}
+
+int AmmoSchemeModel::rowCount(const QModelIndex &parent) const
+{
+ if (parent.isValid())
+ return 0;
+ else
+ return schemes.size();
+}
+
+int AmmoSchemeModel::columnCount(const QModelIndex & parent) const
+{
+ if (parent.isValid())
+ return 0;
+ else
+ return 3;
+}
+
+Qt::ItemFlags AmmoSchemeModel::flags(const QModelIndex & index) const
+{
+ return
+ Qt::ItemIsEnabled
+ | Qt::ItemIsSelectable
+ | Qt::ItemIsEditable;
+}
+
+bool AmmoSchemeModel::setData(const QModelIndex & index, const QVariant & value, int role)
+{
+ emit dataChanged(index, index);
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/QTfrontend/ammoSchemeModel.h Tue Mar 10 17:55:44 2009 +0000
@@ -0,0 +1,45 @@
+/*
+ * Hedgewars, a free turn based strategy game
+ * Copyright (c) 2009 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 _AMMO_SCHEME_MODEL_INCLUDED
+#define _AMMO_SCHEME_MODEL_INCLUDED
+
+#include <QAbstractTableModel>
+#include <QStringList>
+
+class AmmoSchemeModel : public QAbstractTableModel
+{
+ Q_OBJECT
+
+public:
+ AmmoSchemeModel(QObject *parent = 0);
+
+ QVariant headerData(int section, Qt::Orientation orientation, int role) const;
+ int rowCount(const QModelIndex & parent) const;
+ int columnCount(const QModelIndex & parent) const;
+ Qt::ItemFlags flags(const QModelIndex & index) const;
+ bool setData(const QModelIndex & index, const QVariant & value, int role = Qt::EditRole);
+
+signals:
+ void dataChanged(const QModelIndex & topLeft, const QModelIndex & bottomRight);
+
+protected:
+ QList<QStringList> schemes;
+};
+
+#endif // _AMMO_SCHEME_MODEL_INCLUDED