Stub for ammo schemes model
authorunc0rr
Tue, 10 Mar 2009 17:55:44 +0000
changeset 1881 9b62d68c7b92
parent 1880 b12b4dc2f080
child 1882 fda9407a0070
Stub for ammo schemes model
QTfrontend/CMakeLists.txt
QTfrontend/ammoSchemeModel.cpp
QTfrontend/ammoSchemeModel.h
--- 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