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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
|
2006-07-03 Inge Wallin <inge@lysator.liu.se>
* kreversi.cpp (slotGameOver): Set state back to Ready after the
game is finished, and before showing highscore.
2006-07-03 Inge Wallin <inge@lysator.liu.se>
* version.h (KREVERSI_VERSION): Update version to 1.7.1 for KDE
3.5.4.
2006-07-03 Inge Wallin <inge@lysator.liu.se>
* Position.cpp (undoMove): Keep track of score when undoing a
move.
* qreversigameview.h (removeMove): show game status after removing
a move.
2006-07-02 Inge Wallin <inge@lysator.liu.se>
* qreversigameview.cpp (moveMade): Print color Red/Blue in
addition to White/Black into the game view if non-BW color is
chosen in the preferences.
----------------------------------------------------------------
New start of ChangeLogging
----------------------------------------------------------------
2005-09-15 Inge Wallin <inge@lysator.liu.se>
Bump version number for the release of KDE 3.5
* version.h: Bump version from 1.6 to 1.7
2005-04-04 Inge Wallin <inge@lysator.liu.se>
Fix bug where hint and 'show legal moves' didn't work together.
* board.cpp (showHint): call drawSmallCircle if showLegalMoves is true.
(drawSmallCircle): new private method
New feature: show last move.
* board.cpp (setShowLastMove): new method
Refactoring: make showing of legal moves simpler
* board.cpp (showLegalMoves): Take bool for on/off instead of Movelist
(quitShowLegalMoves): removed
(m_legalMovesShowing): new bool member instead of m_legalMoves
* kreversi.cpp (misc): don't call showLegalMoves were not necessary
Fix a bug with 'show legal moves': old ones were never erased.
* board.cpp (showLegalMoves): new method broken out of updateBoard
Some code cleaning and documentation
* DESIGN: Made documentation up-to-date
* qreversigame.{h,cpp} (updateBoard,turn): removed signals
* qreversigameview.{cpp} (slotNewGame): renamed into newGame
(updateBoard): new method
(updateMovelist): new method (empty yet)
(misc proxy methods): simplified.
Move over more view stuff to the gameview.
* kreversi.cpp (showMove): Renamed into handleMove, most of it
moved to the view
(slotStateChange): removed slot
(turn(Color), score, stateChange): removed signals
(setState): Do the job of slotStateChange.
* qreversigameview.cpp (moveMade): do the job of showMove
More control of the view by signals
* kreversi.cpp (showTurn): now catches sig_newGame and sig_update
from the game
(showTurn): new slot
Let the game view be updated by signals from the game instead of
by explicit calls.
* kreversi.cpp (misc): Don't call updateboard et al.
(showColor): Removed
* qreversigame.cpp (sig_score): Removed.
* qreversigameview.{h,cpp} (slotNewGame, moveMade): new slots
2005-04-03 Inge Wallin <inge@lysator.liu.se>
Clean up the signals from the game and change some explicit calls
to update the view into signal/slots instead.
* kreversi.{h, cpp} (showScore): removed
* qreversigame.{h,cpp} (sig_newGame, sig_update): new signals
(gameOver): signal renamed into sig_gameOver
* qreversigameview.{h,cpp} (StatusWidget::setText): new method
(createView): New private method.
(updateView): new slot
(updateStatus): new slot
(setHumanColor): new method.
Move the status info from the toolbar to the gameview.
* kreversi.{h,cpp} (StatusWidget): Removed class
(createStatusBar): Removed.
(m_krgame): renamed into m_game
* qreversigameview.{h,cpp} (StatusWidget): Added class
Move the movelist to the gameview.
Refactor: Create a new class QReversiGameView that will comprise
the entire view.
* Unfortunately the details of the change got lost in some stupid
mistake of mine.
2005-04-02 Inge Wallin <inge@lysator.liu.se>
Fix bug 102890: The result is not put into the higscore if not all
squares are filled at the end of the game
* kreversi.cpp (KReversi): call slotNewGame
2005-04-01 Inge Wallin <inge@lysator.liu.se>
Fix bug 102297: I am playing in KReversi as "expert" but it saves
statistics to the "beginner" records
* kreversi.h (m_lowestStrength): Should be uint instead of bool.
2005-03-31 Inge Wallin <inge@lysator.liu.se>
Implement wish 102813: Should be able to show last move
* board.{h,cpp} (m_showLastMove, lastMoveShown): new members
(setShowLastMove, showLastMove): new methods
(updateBoard): show last move.
* kreversi.{h,cpp} (showLastMoveAction): new toggleaction
(slotShowLastMove): new slot
* kreversiui.rc (show_last_move): new action
Some consecutive small, but important changes (latest at the top).
* Position::undoMove(): new method.
* Remove m_lastPosition from class Game.
* Rename makeMove() to doMove() and takeBackMove() to undoMove().
Big changes in the lower levels of the program. Mostly
simplifications.
* Move.h, Move.cpp (SimpleMove): renamed from Move
(Move): new class with undo information
* Position.h, Position.cpp: allow Move and SimpleMove in various
places.
* Game.h, Game.cpp: allow Move and SimpleMove in various places
2005-03-30 Inge Wallin <inge@lysator.liu.se>
Continue on wish 82900
* kreversiui.rc (viewToolBar): new toolbar for the views.
* kreversi.{h,cpp} (showLegalMovesAction): new toggleaction
(slotShowLegalMOves): new slot
(misc): check status of toggle action before showing legal moves
NOTE: This change adds a new toolbar. Before testing you must
make install.
----------------------------------------------------------------
Start on wish 82900: Show possible moves in the current position
* Move.{h,cpp} (Move): new copy constructor
* Move.h (MoveList): new type
* qreversigame.h (position): new method.
* Position.{h,cpp} (generateMoves): new method
* board.{h,cc} (showLegalMoves, quitShowLegalMoves): new methods
(setMarks): Show also legal moves.
* kreversi.cpp: call showLegalMoves() in various places.
----------------------------------------------------------------
Implement wish 82517: show moves of the game in a view
* Game.h (Game): Make members protected.
(asString): new method
* qreversigame.cpp (makeMove): emit new signal sig_move .
* kreversi.{h,cpp} (m_movesView): new member
(showMove): new slot
2005-03-29 Inge Wallin <inge@lysator.liu.se>
Implement wish 82519: Label the board with A-H, 1-8
* board.cpp (OFFSET): new macro
(m_marksShowing): new member
(setMarks): new method
(mousePressEvent): take into account offset.
(updateBoard): draw markings if m_marksShowing is true
(drawOnePiece): take into account offset.
(adjustSize): take into account markings
Some cleaning
----------------------------------------------------------------
Move KReversiGame out to its own file, and remove it.
* qreversigame.{h,cpp}: new files.
(class): Inherit from Game instead of containing it.
(signal score): Rename into sig_score().
* Makefile.am: include new files.
* board.cpp: Remove class KReversiGame
(all methods): Rename to QReversiGame
Code cleaning
* Game.{h,cpp} (~Game): new method
2005-03-28 Inge Wallin <inge@lysator.liu.se>
* kreversi.cpp (KReversi): Fix faulty connect().
================================================================
KDE 3.4 released
================================================================
2005-02-18 Inge Wallin <ingwa@dhcp-254-182.lkpg.cendio.se>
* version.h (KREVERSI_VERSION): Bumped version to 1.6
2004-10-31 Inge Wallin <inge@lysator.liu.se>
Better fix for bug 91055.
* kreversi.cpp (slotNewGame): Reimplement dialog using
KMessageBox::warningYesNo(). This solves the FIXME in the header.
2004-10-15 Inge Wallin <inge@lysator.liu.se>
Fix bug 90472: KReversi: When you interrupt the computers move and
then switch sides, the program gets confused
* kreversi.cpp (slotSwitchSides): Don't allow the user to switch
sides if the computers move is interrupted.
2004-10-11 Inge Wallin <inge@lysator.liu.se>
Code cleaning
* kreversi.{h,cpp}: Make all members follow the m_ convention.
Also added some comments.
----------------- CVS commit on stuff below --------------------
Fix bug 91055 - KReversi: If you start a new game when a game is
playing, the user is never asked for confirmation.
* kreversi.cpp (slotNewGame): Show a dialog that asks for
confirmation from the user.
2004-10-09 Inge Wallin <inge@lysator.liu.se>
Fix bug 90203: KReversi: It should be visible when the user
interrupts the computers thinking.
* kreversi.cpp (slotInterrupt): call showTurn().
(showTurn): Show "(interrupted)" if it is.
NOTE: This fix can't be backported easily since there is a string
freeze for BRANCH_3_3.
----------------- CVS commit on stuff below --------------------
Fix a bug that made the score unset at startup.
* kreversi.cpp (KReversi): show the score at startup.
----------------- CVS commit on stuff below --------------------
Finally make KReversi a proper Model/View program (step I.4 and
I.5 from the plan in the TODO file).
* board.{h,cpp} (KReversiGame): new class
* board.{h,cpp} (Board): new name KReversiBoardView
* Lots of minor cleanup
* DESIGN: (class diagram): new info
----------------- CVS commit on stuff below --------------------
Some minor cleanup.
2004-10-03 Inge Wallin <inge@lysator.liu.se>
* DESIGN: New document
----------------- CVS commit on stuff below --------------------
Simplify saving of the game
* Game.{h,cpp} (move(uint)): New method.
* kreversi.cpp (saveGame): Use the new method, and don't call
loadGame to restore the Game object.
2004-09-29 Inge Wallin <inge@lysator.liu.se>
Continue to make KReversi a proper model/view program:
Step I.1 of the plan (see TODO): Fix the class Game
* Game.h (Game): Convert to store moves instead of positions.
* Game.cpp (Game): Code cleanup and convert as above.
* Game.{h,cpp}: Follow naming conventions from the rest of the
program.
* Position.{h,cpp}: Follow naming conventions from the rest of the
program.
* Position.{h,cpp} (Position::operator=): new method.
(Position::makeMove): new method.
Added myself in the credits in the about window.
(Will add myself to the real authors when we have KGame and
network play ready. :-) )
2004-09-27 Inge Wallin <inge@lysator.liu.se>
Continue to make KReversi a proper model/view program:
* Transfer ownership of Game and Engine to kreversi from Board.
board.h, board.cpp, kreversi.h, kreversi.cpp: lots of changes.
Some other cleanup:
* SuperEngine.h (interrupt): renamed to interrupted()
2004-09-26 Inge Wallin <inge@lysator.liu.se>
Fix bug 90195: KReversi: Changing the skill level late in a game
doesn't count as cheating:
* board.h (Board::m_lowestStrength): new member
* board.cpp (Board::newGame): set m_lowestStrength
* board.cpp (Board::setStrength): update m_lowestStrength and
update highscore type.
Fix Bug 90190: KReversi: Switch sides and then Undo gets the
program out of sync.
* board.cpp (doUndo): If it is the computers turn to move after an
undo, call computerMakeMove().
(doUndo): Fix repainting so that it looks nice.
2004-09-25 Inge Wallin <inge@lysator.liu.se>
Transfer the rest of the slots for KActions to kreversi.cpp
* Board::interrupt() -> KReversi::slotInterrupt()
* Board::doContinue() -> KReversi::slotContinue()
Rename some slots for clarity
* KReversi::switchSides() -> KReversi::slotSwitchSides()
* KReversi::showSettings() -> KReversi::slotEditSettings()
Make a trivial function inline:
* Board::interrupt()
2004-09-24 Inge Wallin <inge@lysator.liu.se>
Start the work to port KReversi to KGame/Kplayer:
Transfer the slots for most KActions to kreversi.cpp
* Board::undo() -> KReversi::slotUndo()
(Board::doUndo()): Do the real work of undoing.
* Board->hint() -> KReversi::slotHint()
(Board::showHint): do the actual work of showing the hint.
Rename some slots for clarity
* KReversi::newGame -> KReversi::slotNewGame
* KReversi::openGame -> KReversi::slotOpenGame
* KReversi::save -> KReversi::slotSave
Make some trivial functions inline:
* Board::whoseTurn()
* Board::moveNumber()
* Board::score(Color)
* Board::interrupted()
* Board::strength()
2004-09-23 Anne-Marie Mahfouf <annemarie.mahfouf@free.fr>
Cleaned some previously left lines of code in board.cpp
Change CustomAdditions=false back in prefs.kcfg to fix compilation
Tested Inges fix and found it works well.
2004-09-22 Inge Wallin <inge@lysator.liu.se>
Fix bug 89829: "KReversi: When you save a game, the color for
Human and Computer is not saved" again. See the discussion on the
KDE bugzilla for details
(http://bugs.kde.org/show_bug.cgi?id=89829).
* board.cpp (Board::saveGame): Save m_humanColor as HumanColor.
* Remove saving of the side to move since this is implicit
anyway.
* (Board::loadGame): Fix loading of m_humanColor and
m_competitiveGame
* Fix emit of signal turn, and the condition to call
computerMakeMove().
* prefs_addons.h: Removed
2004-09-18 Anne-Marie Mahfouf (ChangeLog entry by Inge Wallin)
Fix bug 89829. (See above, though)
* prefs_addons.h: New file
* board.cpp (saveGame): Some changes
2004-09-18 Inge Wallin <inge@lysator.liu.se>
Some cleaning: remove unused members, add m_ to members and some
comments.
* Engine.h (Engine::lastYield): removed
* Board.h (Board::nopaint): removed
* kreversi.{h,cpp} (KReversi::board): renamed into m_board.
2004-09-17 Inge Wallin <inge@lysator.liu.se>
Some further cleanup:
* board.{h,cpp} (game, engine, human): renamed into m_game,
m_engine and m_humanColor.
2004-09-16 Inge Wallin <inge@lysator.liu.se>
Support Casual and Competitive play:
* SuperEngine.cpp (SuperEngine::computeMove()): new parameter
'competitive'
* Engine.cpp (Engine::computeMove()): new parameter 'competitive'
* board.cpp (m_competitiveGame): new member
(saveGame, loadGame): Save competitive in config file.
* kreversi.cpp (slotGameEnded): Only store result in highscore
file if the game was competitive all the time.
* kreversi.kcfg (CompetitiveGameChoice): new setting
* settings.ui: redesigned
2004-08-17 Inge Wallin <inge@lysator.liu.se>
Finish the big code cleanup:
* board.h, board.cpp: cleaned up
* highscores.h, highscores.cpp,
* kzoommainwindow.h, kzoommainwindow.cpp:
Converted to same coding style as rest of kreversi.
2004-08-16 Inge Wallin <inge@lysator.liu.se>
Continue the big code cleanup:
* Engine.h, Engine.cpp
* kreversi.h kreversi.cpp
2004-08-15 Inge Wallin <inge@lysator.liu.se>
Continue the big code cleanup:
* SuperEngine.h, SuperEngine.cpp
* Game.h Game.cpp
2004-08-14 Inge Wallin <inge@lysator.liu.se>
Start of the big code cleanup:
* Move.h, Move.cpp
* Score.h, Score.cpp
* main.cpp
* Position.h, Position.cpp
Step 2 in the plan to use KGame from libtdegames:
* Code cleaning: Add some comments, reduce complexity, improve
indentation
* Add m_to_move to class Position.
Step 1 in the plan to use KGame from libtdegames:
* Code cleaning: Change "enum Player" into "enum Color", since that
is really what it describes.
2004-06-29 (1.5) Nicolas Hadacek <hadacek@kde.org>
* use KZoomMainWindow
2004-05-29 (1.4) Nicolas Hadacek <hadacek@kde.org>
* fix statusbar + cleanup code
* use notify framework for sounds
1999-06-20 Mario Weilguni <mweilguni@kde.org>
* fixed bugs with those damned KStdDirs
* removed the private wallpapers and use the KDE ones instead
* use kimgio
* fixed locating toolbar icons
* compiles now with --enable-final
1999-06-16 Mario Weilguni <mweilguni@kde.org>
* adapted to the upcoming KDE-2
1999-02-01 Mario Weilguni <mweilguni@kde.org>
* fixed a warning (egcs)
1.0
* I finally decided that itīs stable enough. This is the final
version (if no further bugs are detected and I do not have a
good idea what to improve)
* ChangeLog reversed
0.6.6
* [Robert Williams] Changed Reversi.kdelnk to kreversi.kdelnk
* [Robert Williams] Add -caption "%c" to kreversi.kdelnk
* [Robert Williams] Added kapp->getCaption()
* [Robert Williams] getHelpMenu(true, 0) -> Uses own About dialog
0.6.5 Support for non GNUC++ compilers.
0.6.4 fixed that get-hit-and-then-doubleclick bug
fixed a bug that caused the computer to switch sides if no
computer move is possible instead of getting another human move
0.6.3 sound fix: when the animation is finished, the correct piece gets
redrawn before doing a sound-sync (how could I ever believe 0.6.2
would be the last change :-)
0.6.2 animation fixed (hope this will be the last change)
0.6.1 fixed that newly introduced highscore bug
computer continues now if a game was saved while thinking
0.6: better integration into new FSSTND
fixes for new kdecore
layout management for all dialogs
mini-icon and icon
locale-strings changed - partial translation required for
other languages than english and german
removed both the kfixedtopwidget and ktablistbox
drawing a border around the reversi board
session-management - what an overkill for kreversi :-))
you can save (and load) exactly ONE game
0.5: added klocale to support translation
added german translation
fixed a few bugs
tried to remove absolute widget placing/sizing
removed the date field from the HOF
grayscale support
fixed those CPU busy bug
removed the -finline-functions optimize flag (not portable)
ported to new KDE file system standards (well, mostly)
fixed segfaulting on exit
0.4: interims release - no changelog
0.3: Sound support (using libmediatool)
When switching sides, the Quit -> the computer made on move. FIXED
Fixed a few typos
Cursor changes when thinking
0.2.1: times(NULL) does not work with FreeBSD (fixed)
fixed a bug (reported by Stephan Kulow) where pixmaps of pieces
are not initialized properly (could't reproduce the bug with
my system)
New "About" dialog showing all (well, most) of the contributors
All xpm's have now 8 bits per color component instead of 16.
16 bits seems to confuse the XPM loader of Qt.
0.2: better pieces
animations
fixed a small bug: when someone made it in the hall of fame,
he was'nt notified of this
some improvements in the Hall Of Fame
0.1.2: background color selectable via dialog
background pixmaps implemented, selectable via menu
background pixmaps are scaled to fit size
pieces are drawn at runtime instead of pixmaps
some accelerators added
toolbar buttons for help and hint added
0.1.1: now pixmaps are installed
a kdelnk file is installed
version numbering changed
0.1 : First release
|