summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/games/oyatzee/main.cpp2
-rw-r--r--noncore/games/oyatzee/oyatzee.cpp10
-rw-r--r--noncore/games/oyatzee/oyatzee.h1
3 files changed, 10 insertions, 3 deletions
diff --git a/noncore/games/oyatzee/main.cpp b/noncore/games/oyatzee/main.cpp
index 6e5002c..1fd51f6 100644
--- a/noncore/games/oyatzee/main.cpp
+++ b/noncore/games/oyatzee/main.cpp
@@ -1,13 +1,13 @@
1#include "wordgame.h" 1#include "oyatzee.h"
2 2
3#include <qpe/qpeapplication.h> 3#include <qpe/qpeapplication.h>
4 4
5int main( int argc, char ** argv ) 5int main( int argc, char ** argv )
6{ 6{
7 QPEApplication a( argc, argv ); 7 QPEApplication a( argc, argv );
8 8
9 OYatzee mw; 9 OYatzee mw;
10 a.showMainWidget(&mw); 10 a.showMainWidget(&mw);
11 11
12 return a.exec(); 12 return a.exec();
13} 13}
diff --git a/noncore/games/oyatzee/oyatzee.cpp b/noncore/games/oyatzee/oyatzee.cpp
index 7940b89..85d9616 100644
--- a/noncore/games/oyatzee/oyatzee.cpp
+++ b/noncore/games/oyatzee/oyatzee.cpp
@@ -1,200 +1,206 @@
1#include "oyatzee.h" 1#include "oyatzee.h"
2 2
3#include <qpe/applnk.h> 3#include <qpe/applnk.h>
4#include <qpe/global.h> 4#include <qpe/global.h>
5#include <qpe/filemanager.h> 5#include <qpe/filemanager.h>
6#include <qpe/resource.h> 6#include <qpe/resource.h>
7#include <qpe/config.h> 7#include <qpe/config.h>
8 8
9#include <qapplication.h> 9#include <qapplication.h>
10#include <qmessagebox.h> 10#include <qmessagebox.h>
11#include <qcombobox.h> 11#include <qcombobox.h>
12#include <qdatetime.h> 12#include <qdatetime.h>
13#include <qfileinfo.h> 13#include <qfileinfo.h>
14#include <qfile.h> 14#include <qfile.h>
15#include <qdir.h> 15#include <qdir.h>
16#include <qiconset.h> 16#include <qiconset.h>
17#include <qlabel.h> 17#include <qlabel.h>
18#include <qlineedit.h> 18#include <qlineedit.h>
19#include <qpushbutton.h> 19#include <qpushbutton.h>
20#include <qtextstream.h> 20#include <qtextstream.h>
21#include <qtimer.h> 21#include <qtimer.h>
22#include <qpe/qpetoolbar.h> 22#include <qpe/qpetoolbar.h>
23#include <qtoolbutton.h> 23#include <qtoolbutton.h>
24#include <qvbox.h> 24#include <qvbox.h>
25#include <qwidgetstack.h> 25#include <qwidgetstack.h>
26#include <qpainter.h> 26#include <qpainter.h>
27#include <qlayout.h> 27#include <qlayout.h>
28#include <qregexp.h> 28#include <qregexp.h>
29 29
30#include <stdlib.h> 30#include <stdlib.h>
31#include <unistd.h> 31#include <unistd.h>
32#include <pwd.h> 32#include <pwd.h>
33#include <sys/types.h> 33#include <sys/types.h>
34 34
35OYatzee::OYatzee( QWidget *parent , const char *name, WFlags fl ) : QMainWindow( parent , name , fl ) 35OYatzee::OYatzee( QWidget *parent , const char *name, WFlags fl ) : QMainWindow( parent , name , fl )
36{ 36{
37 QWidget *thing = new QWidget( this ); 37 QWidget *thing = new QWidget( this );
38 setCentralWidget( thing ); 38 setCentralWidget( thing );
39 39
40 QVBoxLayout *vbox = new QVBoxLayout( thing ); 40 QVBoxLayout *vbox = new QVBoxLayout( thing );
41 41
42 sb = new Scoreboard( thing , "sb" ); 42 sb = new Scoreboard( thing , "sb" );
43 dw = new DiceWidget( thing , "dw" ); 43 dw = new DiceWidget( thing , "dw" );
44
45 44
46 vbox->addWidget( sb ); 45 vbox->addWidget( sb );
47 vbox->addWidget( dw ); 46 vbox->addWidget( dw );
48 47
49 setPlayerNumber( 2 ); 48 setPlayerNumber( 2 );
50 setRoundsNumber( 1 ); 49 setRoundsNumber( 1 );
51 50
52 connect( dw->rollButton, SIGNAL( clicked() ), this , SLOT( slotRollDices() ) ); 51 connect( dw->rollButton, SIGNAL( clicked() ), this , SLOT( slotRollDices() ) );
53} 52}
54 53
55OYatzee::~OYatzee() 54OYatzee::~OYatzee()
56{ 55{
57} 56}
58 57
59void OYatzee::detectPosibilities() 58void OYatzee::detectPosibilities()
60{ 59{
61 Dice *d = dw->diceList.first(); 60 Dice *d = dw->diceList.first();
62 61
63 QValueList<int> numbers; 62 QValueList<int> numbers;
64 63
65 for ( ; d != 0 ; d = dw->diceList.next() ) 64 for ( ; d != 0 ; d = dw->diceList.next() )
66 { 65 {
67 numbers.append( d->Value ); 66 numbers.append( d->Value );
68 } 67 }
69} 68}
70 69
71void OYatzee::setPlayerNumber( const int num ) 70void OYatzee::setPlayerNumber( const int num )
72{ 71{
73 numOfPlayers = num; 72 numOfPlayers = num;
74} 73}
75 74
76void OYatzee::setRoundsNumber( const int num ) 75void OYatzee::setRoundsNumber( const int num )
77{ 76{
78 numOfRounds = num; 77 numOfRounds = num;
79} 78}
80 79
81void OYatzee::slotStartGame() 80void OYatzee::slotStartGame()
82{ 81{
83} 82}
84 83
85void OYatzee::slotRollDices() 84void OYatzee::slotRollDices()
86{ 85{
87 Dice *d = dw->diceList.first(); 86 Dice *d = dw->diceList.first();
88 87
89 for ( ; d != 0 ; d = dw->diceList.next() ) 88 for ( ; d != 0 ; d = dw->diceList.next() )
90 { 89 {
91 d->roll(); 90 d->roll();
92 } 91 }
93 92
94 detectPosibilities(); 93 detectPosibilities();
95} 94}
96 95
97/* 96/*
98 * Scoreboard 97 * Scoreboard
99 */ 98 */
100Scoreboard::Scoreboard( QWidget *parent, const char *name ) : QWidget( parent , name ) 99Scoreboard::Scoreboard( QWidget *parent, const char *name ) : QWidget( parent , name )
101{ 100{
102} 101}
103 102
104void Scoreboard::paintEvent( QPaintEvent * ) 103void Scoreboard::paintEvent( QPaintEvent * )
105{ 104{
106 QPainter p; 105 QPainter p;
107 p.begin( this ); 106 p.begin( this );
108 107
109 p.drawRect( 0,0, this->width() , this->height() ); 108 p.drawRect( 0,0, this->width() , this->height() );
110} 109}
111 110
112/* 111/*
113 * Dice 112 * Dice
114 */ 113 */
115Dice::Dice( QWidget *parent , const char *name ) : QFrame( parent , name ) 114Dice::Dice( QWidget *parent , const char *name ) : QFrame( parent , name )
116{ 115{
117 QTime t = QTime::currentTime(); // set random seed 116 QTime t = QTime::currentTime(); // set random seed
118 srand(t.hour()*12+t.minute()*60+t.second()*60); 117 srand(t.hour()*12+t.minute()*60+t.second()*60);
119 118
120 connect( this , SIGNAL( selected() ), this , SLOT( slotSelected() ) ); 119 connect( this , SIGNAL( selected() ), this , SLOT( slotSelected() ) );
121} 120}
122 121
123void Dice::slotSelected() 122void Dice::slotSelected()
124{ 123{
125 qDebug( QString::number( Value ) ); 124 if ( isSelected )
125 isSelected = false;
126 else isSelected = true;
127
128 update();
126} 129}
127 130
128int Dice::hasValue() 131int Dice::hasValue()
129{ 132{
130 return Value; 133 return Value;
131} 134}
132 135
133void Dice::roll() 136void Dice::roll()
134{ 137{
135 Value = rand()%6; 138 Value = rand()%6;
136 Value += 1; 139 Value += 1;
137 140
138 update(); 141 update();
139} 142}
140 143
141void Dice::mousePressEvent( QMouseEvent* /*e*/ ) 144void Dice::mousePressEvent( QMouseEvent* /*e*/ )
142{ 145{
143 emit selected(); 146 emit selected();
144} 147}
145 148
146void Dice::paintEvent( QPaintEvent * ) 149void Dice::paintEvent( QPaintEvent * )
147{ 150{
148 QPainter p; 151 QPainter p;
149 p.begin( this ); 152 p.begin( this );
150 153
151 p.drawRect( 0,0, this->width() , this->height() ); 154 p.drawRect( 0,0, this->width() , this->height() );
152 155
156 if ( isSelected )
157 p.drawRect( 20,20, 10,10 );
158
153 paintNumber( &p ); 159 paintNumber( &p );
154} 160}
155 161
156void Dice::paintNumber( QPainter *p ) 162void Dice::paintNumber( QPainter *p )
157{ 163{
158 switch ( Value ) 164 switch ( Value )
159 { 165 {
160 case 1: 166 case 1:
161 p->drawText( 10,10,"1"); 167 p->drawText( 10,10,"1");
162 break; 168 break;
163 case 2: 169 case 2:
164 p->drawText( 10,10,"2"); 170 p->drawText( 10,10,"2");
165 break; 171 break;
166 case 3: 172 case 3:
167 p->drawText( 10,10,"3"); 173 p->drawText( 10,10,"3");
168 break; 174 break;
169 case 4: 175 case 4:
170 p->drawText( 10,10,"4"); 176 p->drawText( 10,10,"4");
171 break; 177 break;
172 case 5: 178 case 5:
173 p->drawText( 10,10,"5"); 179 p->drawText( 10,10,"5");
174 break; 180 break;
175 case 6: 181 case 6:
176 p->drawText( 10,10,"6"); 182 p->drawText( 10,10,"6");
177 break; 183 break;
178 } 184 }
179} 185}
180 186
181/* 187/*
182 * DiceWidget 188 * DiceWidget
183 */ 189 */
184DiceWidget::DiceWidget( QWidget *parent , const char *name ) : QWidget( parent , name ) 190DiceWidget::DiceWidget( QWidget *parent , const char *name ) : QWidget( parent , name )
185{ 191{
186 rollButton = new QPushButton( tr( "Roll" ) , this ) ; 192 rollButton = new QPushButton( tr( "Roll" ) , this ) ;
187 193
188 for ( int i = 0 ; i < 5 ; i++ ) 194 for ( int i = 0 ; i < 5 ; i++ )
189 { 195 {
190 //appending the 5 dices of the game 196 //appending the 5 dices of the game
191 diceList.append( new Dice( this, "wuerfel" ) ); 197 diceList.append( new Dice( this, "wuerfel" ) );
192 } 198 }
193 199
194 QHBoxLayout *hbox = new QHBoxLayout( this ); 200 QHBoxLayout *hbox = new QHBoxLayout( this );
195 201
196 Dice *d = diceList.first(); 202 Dice *d = diceList.first();
197 203
198 for ( ; d != 0 ; d = diceList.next() ) 204 for ( ; d != 0 ; d = diceList.next() )
199 { 205 {
200 d->roll(); 206 d->roll();
diff --git a/noncore/games/oyatzee/oyatzee.h b/noncore/games/oyatzee/oyatzee.h
index 7be9407..01ab36d 100644
--- a/noncore/games/oyatzee/oyatzee.h
+++ b/noncore/games/oyatzee/oyatzee.h
@@ -2,95 +2,96 @@
2#define WORDGAME_H 2#define WORDGAME_H
3 3
4#include <qmainwindow.h> 4#include <qmainwindow.h>
5#include <qlabel.h> 5#include <qlabel.h>
6#include <qlist.h> 6#include <qlist.h>
7 7
8#include <stdlib.h> // rand() function 8#include <stdlib.h> // rand() function
9#include <qdatetime.h> // seed for rand() 9#include <qdatetime.h> // seed for rand()
10 10
11class Dice; 11class Dice;
12class Game; 12class Game;
13class Scoreboard; 13class Scoreboard;
14class DiceWidget; 14class DiceWidget;
15 15
16typedef QList<Dice> dicesList; 16typedef QList<Dice> dicesList;
17 17
18class OYatzee : public QMainWindow { 18class OYatzee : public QMainWindow {
19 Q_OBJECT 19 Q_OBJECT
20 public: 20 public:
21 OYatzee( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); 21 OYatzee( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
22 ~OYatzee(); 22 ~OYatzee();
23 23
24 Game *g; 24 Game *g;
25 DiceWidget *dw; 25 DiceWidget *dw;
26 Scoreboard *sb; 26 Scoreboard *sb;
27 27
28 28
29 void setPlayerNumber( const int num ); 29 void setPlayerNumber( const int num );
30 void setRoundsNumber( const int num ); 30 void setRoundsNumber( const int num );
31 31
32 public slots: 32 public slots:
33 void slotStartGame(); 33 void slotStartGame();
34 void slotRollDices(); 34 void slotRollDices();
35 35
36 private: 36 private:
37 int numOfPlayers; 37 int numOfPlayers;
38 int numOfRounds; 38 int numOfRounds;
39 39
40 void detectPosibilities(); 40 void detectPosibilities();
41}; 41};
42 42
43class Dice : public QFrame 43class Dice : public QFrame
44{ 44{
45 Q_OBJECT 45 Q_OBJECT
46 public: 46 public:
47 Dice( QWidget* parent = 0, const char* name = 0 ); 47 Dice( QWidget* parent = 0, const char* name = 0 );
48 48
49 int Value; 49 int Value;
50 bool isSelected;
50 51
51 int hasValue(); 52 int hasValue();
52 void roll(); 53 void roll();
53 virtual void mousePressEvent( QMouseEvent* ); 54 virtual void mousePressEvent( QMouseEvent* );
54 55
55 private slots: 56 private slots:
56 void slotSelected(); 57 void slotSelected();
57 58
58 signals: 59 signals:
59 void selected(); 60 void selected();
60 61
61 protected: 62 protected:
62 void paintEvent( QPaintEvent *e ); 63 void paintEvent( QPaintEvent *e );
63 void paintNumber( QPainter *p ); 64 void paintNumber( QPainter *p );
64}; 65};
65 66
66class DiceWidget : public QWidget 67class DiceWidget : public QWidget
67{ 68{
68 Q_OBJECT 69 Q_OBJECT
69 public: 70 public:
70 DiceWidget( QWidget *parent = 0, const char* name = 0 ); 71 DiceWidget( QWidget *parent = 0, const char* name = 0 );
71 72
72 QPushButton *rollButton; 73 QPushButton *rollButton;
73 74
74 dicesList diceList; 75 dicesList diceList;
75}; 76};
76 77
77class Scoreboard : public QWidget 78class Scoreboard : public QWidget
78{ 79{
79 Q_OBJECT 80 Q_OBJECT
80 public: 81 public:
81 Scoreboard( QWidget *parent = 0, const char* name = 0 ); 82 Scoreboard( QWidget *parent = 0, const char* name = 0 );
82 83
83 protected: 84 protected:
84 void paintEvent( QPaintEvent *e ); 85 void paintEvent( QPaintEvent *e );
85}; 86};
86 87
87class Player 88class Player
88{ 89{
89 public: 90 public:
90 Player( QString name ); 91 Player( QString name );
91 92
92 QString playerName; 93 QString playerName;
93 int totalPoints; 94 int totalPoints;
94}; 95};
95 96
96#endif // WORDGAME_H 97#endif // WORDGAME_H