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