summaryrefslogtreecommitdiff
authordrw <drw>2005-05-18 00:07:05 (UTC)
committer drw <drw>2005-05-18 00:07:05 (UTC)
commit600f14a61969ec2edd6d89efecaac997b1c6464f (patch) (unidiff)
tree3700d6b7a98f67f423e9316aad844d377377ab65
parent73738d14ca541eaa41b8ee81168e98826752a98c (diff)
downloadopie-600f14a61969ec2edd6d89efecaac997b1c6464f.zip
opie-600f14a61969ec2edd6d89efecaac997b1c6464f.tar.gz
opie-600f14a61969ec2edd6d89efecaac997b1c6464f.tar.bz2
Resource -> OResource, set application caption
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/games/go/gowidget.cpp34
1 files changed, 13 insertions, 21 deletions
diff --git a/noncore/games/go/gowidget.cpp b/noncore/games/go/gowidget.cpp
index ec03c1d..bc5d788 100644
--- a/noncore/games/go/gowidget.cpp
+++ b/noncore/games/go/gowidget.cpp
@@ -1,100 +1,100 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qtopia Environment. 4** This file is part of Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
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#include "gowidget.h" 21#include "gowidget.h"
22 22
23/* OPIE */ 23/* OPIE */
24#include <opie2/odebug.h> 24#include <opie2/odebug.h>
25#include <opie2/oresource.h>
25#include <qpe/config.h> 26#include <qpe/config.h>
26#include <qpe/resource.h>
27using namespace Opie::Core; 27using namespace Opie::Core;
28 28
29/* QT */ 29/* QT */
30#include <qpainter.h> 30#include <qpainter.h>
31#include <qtoolbar.h> 31#include <qtoolbar.h>
32#include <qmenubar.h> 32#include <qmenubar.h>
33#include <qaction.h> 33#include <qaction.h>
34#include <qapplication.h> //processEvents() 34#include <qapplication.h> //processEvents()
35#include <qlabel.h> 35#include <qlabel.h>
36 36
37static const enum bVal computer_color = BLACK; 37static const enum bVal computer_color = BLACK;
38 38
39static int current_handicap = 1; 39static int current_handicap = 1;
40 40
41static QBrush *goBrush; 41static QBrush *goBrush;
42//static QImage *newBlackStone;
43//static QImage *blackStone;
44//static QImage *whiteStone;
45static QPixmap *newBlackStone; 42static QPixmap *newBlackStone;
46static QPixmap *blackStone; 43static QPixmap *blackStone;
47static QPixmap *whiteStone; 44static QPixmap *whiteStone;
48 45
49static bool smallStones = FALSE; 46static bool smallStones = FALSE;
50 47
51GoMainWidget::GoMainWidget( QWidget *parent, const char* name, WFlags fl) : 48GoMainWidget::GoMainWidget( QWidget *parent, const char* name, WFlags fl) :
52 QMainWindow( parent, name, fl ) 49 QMainWindow( parent, name, fl )
53{ 50{
51 setCaption( tr( "Go" ) );
54 setToolBarsMovable( FALSE ); 52 setToolBarsMovable( FALSE );
55 GoWidget *go = new GoWidget(this); 53 GoWidget *go = new GoWidget(this);
56 54
57 setCentralWidget(go); 55 setCentralWidget(go);
58 toolbar = new QToolBar(this); 56 toolbar = new QToolBar(this);
59 toolbar->setHorizontalStretchable( TRUE ); 57 toolbar->setHorizontalStretchable( TRUE );
60 addToolBar(toolbar); 58 addToolBar(toolbar);
61 59
62 QMenuBar *mb = new QMenuBar( toolbar ); 60 QMenuBar *mb = new QMenuBar( toolbar );
63 mb->setMargin(0); 61 mb->setMargin(0);
64 QPopupMenu *file = new QPopupMenu( this ); 62 QPopupMenu *file = new QPopupMenu( this );
65 63
66 QAction *a = new QAction( tr( "New Game" ), QString::null, 0, this, 0 ); 64 QAction *a = new QAction( tr( "New Game" ), QString::null, 0, this, 0 );
67 connect( a, SIGNAL( activated() ), go, SLOT( newGame() ) ); 65 connect( a, SIGNAL( activated() ), go, SLOT( newGame() ) );
68 a->addTo( file ); 66 a->addTo( file );
69 67
70 a = new QAction( tr( "Pass" ), Resource::loadPixmap( "pass" ), QString::null, 0, this, 0 ); 68 a = new QAction( tr( "Pass" ), Opie::Core::OResource::loadPixmap( "pass", Opie::Core::OResource::SmallIcon ),
69 QString::null, 0, this, 0 );
71 connect( a, SIGNAL( activated() ), go, SLOT( pass() ) ); 70 connect( a, SIGNAL( activated() ), go, SLOT( pass() ) );
72 a->addTo( file ); 71 a->addTo( file );
73 a->addTo( toolbar ); 72 a->addTo( toolbar );
74 73
75 74
76 a = new QAction( tr( "Resign" ), Resource::loadPixmap( "reset" ), QString::null, 0, this, 0 ); 75 a = new QAction( tr( "Resign" ), Opie::Core::OResource::loadPixmap( "reset", Opie::Core::OResource::SmallIcon ),
76 QString::null, 0, this, 0 );
77 connect( a, SIGNAL( activated() ), go, SLOT( resign() ) ); 77 connect( a, SIGNAL( activated() ), go, SLOT( resign() ) );
78 a->addTo( file ); 78 a->addTo( file );
79 79
80 a = new QAction( tr( "Two player option" ), QString::null, 0, this, 0 ); 80 a = new QAction( tr( "Two player option" ), QString::null, 0, this, 0 );
81 a->setToggleAction( TRUE ); 81 a->setToggleAction( TRUE );
82 connect( a, SIGNAL( toggled(bool) ), go, SLOT( setTwoplayer(bool) ) ); 82 connect( a, SIGNAL( toggled(bool) ), go, SLOT( setTwoplayer(bool) ) );
83 a->addTo( file ); 83 a->addTo( file );
84 84
85 mb->insertItem( tr( "Game" ), file ); 85 mb->insertItem( tr( "Game" ), file );
86 86
87 QLabel *turnLabel = new QLabel( toolbar ); 87 QLabel *turnLabel = new QLabel( toolbar );
88 turnLabel->setBackgroundMode( PaletteButton ); 88 turnLabel->setBackgroundMode( PaletteButton );
89 connect( go, SIGNAL(showTurn(const QPixmap&)), 89 connect( go, SIGNAL(showTurn(const QPixmap&)),
90 turnLabel, SLOT(setPixmap(const QPixmap&)) ); 90 turnLabel, SLOT(setPixmap(const QPixmap&)) );
91 91
92 92
93 QLabel * scoreLabel = new QLabel( toolbar ); 93 QLabel * scoreLabel = new QLabel( toolbar );
94 scoreLabel->setBackgroundMode( PaletteButton ); 94 scoreLabel->setBackgroundMode( PaletteButton );
95 connect( go, SIGNAL(showScore(const QString&)), 95 connect( go, SIGNAL(showScore(const QString&)),
96 scoreLabel, SLOT(setText(const QString&)) ); 96 scoreLabel, SLOT(setText(const QString&)) );
97 97
98 toolbar->setStretchableWidget( scoreLabel ); 98 toolbar->setStretchableWidget( scoreLabel );
99 99
100 go->readConfig(); 100 go->readConfig();
@@ -103,61 +103,53 @@ GoMainWidget::GoMainWidget( QWidget *parent, const char* name, WFlags fl) :
103void GoMainWidget::resizeEvent( QResizeEvent * ) 103void GoMainWidget::resizeEvent( QResizeEvent * )
104{ 104{
105 //### this won't work because of the text label... 105 //### this won't work because of the text label...
106 /* 106 /*
107 if ( width() > height() ) 107 if ( width() > height() )
108 moveToolBar( toolbar, Left ); 108 moveToolBar( toolbar, Left );
109 else 109 else
110 moveToolBar( toolbar, Top ); 110 moveToolBar( toolbar, Top );
111 */ 111 */
112} 112}
113 113
114GoWidget *GoWidget::self = 0; 114GoWidget *GoWidget::self = 0;
115 115
116GoWidget::GoWidget( QWidget *parent, const char* name) : 116GoWidget::GoWidget( QWidget *parent, const char* name) :
117 QWidget( parent, name ) 117 QWidget( parent, name )
118{ 118{
119 if ( self ) 119 if ( self )
120 fatal( "Only one Go widget allowed" ); 120 fatal( "Only one Go widget allowed" );
121 self = this; 121 self = this;
122 twoplayer = FALSE; 122 twoplayer = FALSE;
123 123
124 124
125 d = bx = by = 1; 125 d = bx = by = 1;
126 126
127 QPixmap pix = Resource::loadPixmap( "go/pine" ); 127 QPixmap pix = Opie::Core::OResource::loadPixmap( "go/pine" );
128 goBrush = new QBrush( black, pix ); 128 goBrush = new QBrush( black, pix );
129 /* 129 blackStone = new QPixmap(Opie::Core::OResource::loadPixmap( "Go-black" ));
130 QString fn = Resource::findPixmap("Go-black"); 130 whiteStone = new QPixmap(Opie::Core::OResource::loadPixmap( "Go-white" ));
131 blackStone = new QImage( fn ); 131 newBlackStone = new QPixmap(Opie::Core::OResource::loadPixmap( "Go-black-highlight" ));
132 fn = Resource::findPixmap("Go-black-highlight");
133 newBlackStone = new QImage( fn );
134 fn = Resource::findPixmap("Go-white");
135 whiteStone = new QImage( fn );
136 */
137 blackStone = new QPixmap(Resource::loadPixmap( "Go-black" ));
138 whiteStone = new QPixmap(Resource::loadPixmap( "Go-white" ));
139 newBlackStone = new QPixmap(Resource::loadPixmap( "Go-black-highlight" ));
140 132
141 init(); 133 init();
142} 134}
143 135
144GoWidget::~GoWidget() 136GoWidget::~GoWidget()
145{ 137{
146 writeConfig(); 138 writeConfig();
147} 139}
148 140
149void GoWidget::writeConfig() 141void GoWidget::writeConfig()
150{ 142{
151 Config cfg("Go"); 143 Config cfg("Go");
152 cfg.setGroup("Game"); 144 cfg.setGroup("Game");
153 cfg.writeEntry("TwoPlayer", twoplayer); 145 cfg.writeEntry("TwoPlayer", twoplayer);
154 cfg.writeEntry("CurrentPlayer", currentPlayer); 146 cfg.writeEntry("CurrentPlayer", currentPlayer);
155 cfg.writeEntry("NPassed", nPassed); 147 cfg.writeEntry("NPassed", nPassed);
156 QString b; 148 QString b;
157 for (int i=0; i<19; i++) 149 for (int i=0; i<19; i++)
158 for (int j=0; j<19; j++) 150 for (int j=0; j<19; j++)
159 b += board[i][j] == BLACK ? 'B' : board[i][j] == WHITE ? 'W' : '.'; 151 b += board[i][j] == BLACK ? 'B' : board[i][j] == WHITE ? 'W' : '.';
160 cfg.writeEntry("Board", b); 152 cfg.writeEntry("Board", b);
161 cfg.writeEntry("LastX", lastX); 153 cfg.writeEntry("LastX", lastX);
162 cfg.writeEntry("LastY", lastY); 154 cfg.writeEntry("LastY", lastY);
163 extern int blackPrisoners, whitePrisoners; 155 extern int blackPrisoners, whitePrisoners;
@@ -183,51 +175,51 @@ void GoWidget::readConfig()
183 } 175 }
184 lastX = cfg.readNumEntry("LastX"); 176 lastX = cfg.readNumEntry("LastX");
185 lastY = cfg.readNumEntry("LastY"); 177 lastY = cfg.readNumEntry("LastY");
186 extern int blackPrisoners, whitePrisoners; 178 extern int blackPrisoners, whitePrisoners;
187 blackPrisoners = cfg.readNumEntry("BlackPrisoners",0); 179 blackPrisoners = cfg.readNumEntry("BlackPrisoners",0);
188 whitePrisoners = cfg.readNumEntry("WhitePrisoners",0); 180 whitePrisoners = cfg.readNumEntry("WhitePrisoners",0);
189 reportPrisoners(blackPrisoners,whitePrisoners); 181 reportPrisoners(blackPrisoners,whitePrisoners);
190 emit showTurn( currentPlayer == WHITE ? *whiteStone : *blackStone ); 182 emit showTurn( currentPlayer == WHITE ? *whiteStone : *blackStone );
191} 183}
192 184
193void GoWidget::resizeEvent( QResizeEvent * ) 185void GoWidget::resizeEvent( QResizeEvent * )
194{ 186{
195 d = QMIN(width(),height())/19; 187 d = QMIN(width(),height())/19;
196 // int r = (d/2-1); 188 // int r = (d/2-1);
197 bx = (width() - 18*d)/2 ; 189 bx = (width() - 18*d)/2 ;
198 by = (height() - 18*d)/2 ; 190 by = (height() - 18*d)/2 ;
199 191
200 if ( d < 10 && !smallStones ) { 192 if ( d < 10 && !smallStones ) {
201 blackStone->convertFromImage( blackStone->convertToImage().smoothScale(8,8) ); 193 blackStone->convertFromImage( blackStone->convertToImage().smoothScale(8,8) );
202 whiteStone->convertFromImage( whiteStone->convertToImage().smoothScale(8,8) ); 194 whiteStone->convertFromImage( whiteStone->convertToImage().smoothScale(8,8) );
203 newBlackStone->convertFromImage( newBlackStone->convertToImage().smoothScale(8,8) ); 195 newBlackStone->convertFromImage( newBlackStone->convertToImage().smoothScale(8,8) );
204 196
205 smallStones = TRUE; 197 smallStones = TRUE;
206 } else if ( d >= 10 && smallStones ) { 198 } else if ( d >= 10 && smallStones ) {
207 blackStone = new QPixmap(Resource::loadPixmap( "Go-black" )); 199 blackStone = new QPixmap(Opie::Core::OResource::loadPixmap( "Go-black" ));
208 whiteStone = new QPixmap(Resource::loadPixmap( "Go-white" )); 200 whiteStone = new QPixmap(Opie::Core::OResource::loadPixmap( "Go-white" ));
209 newBlackStone = new QPixmap(Resource::loadPixmap( "Go-black-highlight" )); 201 newBlackStone = new QPixmap(Opie::Core::OResource::loadPixmap( "Go-black-highlight" ));
210 smallStones = FALSE; 202 smallStones = FALSE;
211 } 203 }
212} 204}
213 205
214void GoWidget::init() 206void GoWidget::init()
215{ 207{
216 lastX = lastY = newX = newY = -1; 208 lastX = lastY = newX = newY = -1;
217 nPassed = 0; 209 nPassed = 0;
218 for ( int i = 0; i < 19; i++ ) 210 for ( int i = 0; i < 19; i++ )
219 for ( int j = 0; j < 19; j++ ) 211 for ( int j = 0; j < 19; j++ )
220 board[i][j]=-1; 212 board[i][j]=-1;
221 gameActive = TRUE; 213 gameActive = TRUE;
222 goRestart(current_handicap); 214 goRestart(current_handicap);
223 215
224 if ( twoplayer ) { 216 if ( twoplayer ) {
225 currentPlayer = BLACK; 217 currentPlayer = BLACK;
226 } else { 218 } else {
227 doComputerMove(); 219 doComputerMove();
228 currentPlayer = WHITE; 220 currentPlayer = WHITE;
229 } 221 }
230 emit showTurn( currentPlayer == WHITE ? *whiteStone : *blackStone ); 222 emit showTurn( currentPlayer == WHITE ? *whiteStone : *blackStone );
231} 223}
232 224
233void GoWidget::paintEvent( QPaintEvent *e ) 225void GoWidget::paintEvent( QPaintEvent *e )