summaryrefslogtreecommitdiffstats
path: root/kbattleship/kbattleship/kshiplist.h
blob: 59915a5bd338a52114a5e9666e781c4617ba9437 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/***************************************************************************
                                    kshiplist.h
                                  -----------------
    Developers: (c) 2000-2001 Nikolas Zimmermann <wildfox@kde.org>
                (c) 2000-2001 Daniel Molkentin <molkentin@kde.org>
                (c) 2001 Kevin Krammer <kevin.krammer@gmx.at>

 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   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; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef KSHIPLIST_H
#define KSHIPLIST_H

#include <kmessagebox.h>
#include <klocale.h>
#include <qptrlist.h>
#include "kbattlefield.h"
#include "kship.h"

class KShipList : public QObject
{
	Q_OBJECT
public:
	KShipList();

	KShip *shipAt(int x, int y);
	int shipTypeAt(int x, int y);

	void clear();

	void addNewShip(int button, int fieldx, int fieldy);
	bool addNewShip(bool vertical, int fieldx, int fieldy);

	bool canAddShips();

	int shipCount() { return m_shipsadded; }

	int m_fieldx;
	int m_fieldy;

signals:
	void sigLastShipAdded();
	void sigOwnFieldDataChanged(int, int, int);

private:
	QPtrList<KShip> m_shiplist;
	int m_shipsadded;
};

#endif