summaryrefslogtreecommitdiff
path: root/noncore/games/fifteen/fifteen.h
Unidiff
Diffstat (limited to 'noncore/games/fifteen/fifteen.h') (more/less context) (show whitespace changes)
-rw-r--r--noncore/games/fifteen/fifteen.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/noncore/games/fifteen/fifteen.h b/noncore/games/fifteen/fifteen.h
index 58eb756..4b8702d 100644
--- a/noncore/games/fifteen/fifteen.h
+++ b/noncore/games/fifteen/fifteen.h
@@ -16,74 +16,87 @@
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#ifndef __fifteenapplet_h__ 21#ifndef __fifteenapplet_h__
22#define __fifteenapplet_h__ 22#define __fifteenapplet_h__
23 23
24#include <qmainwindow.h> 24#include <qmainwindow.h>
25#include <qtableview.h> 25#include <qtableview.h>
26#include <qarray.h> 26#include <qarray.h>
27#include <qpointarray.h> 27#include <qpointarray.h>
28#include <qpixmap.h>
29#include <qvector.h>
28 30
29class QPopupMenu; 31class QPopupMenu;
32class FifteenConfigDialog;
30 33
31class PiecesTable : public QTableView 34class PiecesTable : public QTableView
32{ 35{
33 Q_OBJECT 36 Q_OBJECT
34 37
35 public: 38 public:
36 PiecesTable(QWidget* parent = 0, const char* name = 0); 39 PiecesTable(QWidget* parent = 0, const char* name = 0);
37 ~PiecesTable(); 40 ~PiecesTable();
38 41
39 protected slots: 42 protected slots:
43 void slotConfigure();
44 void slotCustomImage(const QString &str, bool upd = false);
40 void slotRandomize(); 45 void slotRandomize();
41 void slotReset(); 46 void slotReset();
42 47
43 protected: 48 protected:
44 void resizeEvent(QResizeEvent*); 49 void resizeEvent(QResizeEvent*);
45 void mousePressEvent(QMouseEvent*); 50 void mousePressEvent(QMouseEvent*);
46 51
47 void paintCell(QPainter *, int row, int col); 52 void paintCell(QPainter *, int row, int col);
48 53
54 void initImage();
49 void initMap(); 55 void initMap();
50 void initColors(); 56 void initColors();
51 void randomizeMap(); 57 void randomizeMap();
52 void checkwin(); 58 void checkwin();
53 void readConfig(); 59 void readConfig();
54 void writeConfig(); 60 void writeConfig();
55 61
62 void initPolygon(int w, int h, int x_of, int y_of );
56 private: 63 private:
64 void clear();
65 QString _image;
57 QArray<int> _map; 66 QArray<int> _map;
58 QArray<QColor> _colors; 67 QArray<QColor> _colors;
68 QArray<QPixmap*> _pixmap;
69
59 QPopupMenu *_menu; 70 QPopupMenu *_menu;
60 bool _randomized; 71 bool _randomized;
61 QPointArraylight_border; 72 QPointArraylight_border;
62 QPointArraydark_border; 73 QPointArraydark_border;
74 FifteenConfigDialog *_dialog;
63 75
64 enum MenuOp { mRandomize = 1, mReset = 2 }; 76 enum MenuOp { mRandomize = 1, mReset = 2 };
65}; 77};
66 78
67class FifteenWidget : public QWidget 79class FifteenWidget : public QWidget
68{ 80{
69 Q_OBJECT 81 Q_OBJECT
70 82
71public: 83public:
72 FifteenWidget(QWidget *parent = 0, const char *name = 0); 84 FifteenWidget(QWidget *parent = 0, const char *name = 0);
73 85
74private: 86private:
75 PiecesTable *_table; 87 PiecesTable *_table;
76}; 88};
77 89
90
78class FifteenMainWindow : public QMainWindow 91class FifteenMainWindow : public QMainWindow
79{ 92{
80 Q_OBJECT 93 Q_OBJECT
81 94
82public: 95public:
83 static QString appName() { 96 static QString appName() {
84 return QString::fromLatin1("fifteen"); 97 return QString::fromLatin1("fifteen");
85 } 98 }
86 FifteenMainWindow(QWidget *parent=0, const char* name=0, WFlags fl=0); 99 FifteenMainWindow(QWidget *parent=0, const char* name=0, WFlags fl=0);
87}; 100};
88 101
89#endif 102#endif