Olivier Teulière
f6999a720d
Fix mismatch declaration between struct and class
2013-03-03 01:07:41 +01:00
Olivier Teulière
cdbb53f72c
Gray out the players area when the game is finished.
...
This was broken since 196e02f9ad
.
2013-01-29 22:58:00 +01:00
Olivier Teulière
afc791dd73
MainWindow: no frame is needed for labels in the status bar
2013-01-20 20:31:33 +01:00
Olivier Teulière
0cfc063a0f
Fix c7913ddc45
.
...
This was not supposed to be commited.
2013-01-20 19:48:15 +01:00
Olivier Teulière
1dcf458695
Stats report: add "tooltips" to show the played move.
...
Implementation heavily based on a proof of concept by Joan Montané.
2013-01-20 19:34:51 +01:00
Olivier Teulière
8ab4f88a59
Fix make distcheck
2013-01-20 19:22:40 +01:00
Olivier Teulière
f4ec605f45
po: re-generate po files
2013-01-20 19:19:14 +01:00
Olivier Teulière
4428159836
po: update the list of files to translate
2013-01-20 19:18:41 +01:00
Olivier Teulière
c7913ddc45
Arbitration: clear the filters when the rack changes, not when a search is performed
2013-01-20 19:18:17 +01:00
Olivier Teulière
b5a473a2af
RackWidget: set small margins and draw a border
2013-01-20 19:18:16 +01:00
Olivier Teulière
272867c3ad
MainWindow: try to reduce screen flicker when (re)starting a game
2013-01-20 19:18:16 +01:00
Olivier Teulière
ff4b91459e
MainWindow: do not show the visual rack until a game is started
2013-01-20 19:18:16 +01:00
Olivier Teulière
b37a4059ce
Contribs: update Qt to version 4.8.2, and provide QtNetwork
2013-01-20 19:18:05 +01:00
Olivier Teulière
2a3d8e9930
Remove useless comments
2013-01-20 11:07:47 +01:00
Olivier Teulière
af43396579
TileLayout: fix margins handling
2013-01-20 01:39:10 +01:00
Olivier Teulière
c8c0548828
Some confirmations are useless when the game is finished
2013-01-19 23:41:26 +01:00
Olivier Teulière
927c1cedd1
Text interface: improve slightly the topping mode
2013-01-19 00:53:37 +01:00
Olivier Teulière
2c95f890ef
Check for new versions, about once a week.
...
This can be deactivated in the preferences.
2013-01-19 00:36:08 +01:00
Olivier Teulière
9ef4d966ad
ToppingWidget: fix tab order
2013-01-19 00:36:08 +01:00
Olivier Teulière
7dda601599
MoveSelector: add one more heuristic (deactivated for now)
2013-01-19 00:36:08 +01:00
Olivier Teulière
a53d99a8d3
MoveSelector: add another heuristic
2013-01-19 00:36:08 +01:00
Olivier Teulière
075dbaa2fb
MoveSelector: add a new heuristic (deactivated for now)
2013-01-19 00:36:08 +01:00
Olivier Teulière
80fa47d71b
BoardLayout: make a method public, and use it to simplify an assertion
2013-01-19 00:36:07 +01:00
Olivier Teulière
7923ed2c2a
Remove a useless include
2013-01-19 00:36:07 +01:00
Olivier Teulière
30385abe30
Results: new MasterResults implementation, using the MoveSelector class.
...
This avoids calling MoveSelector everywhere in the code.
2013-01-19 00:36:07 +01:00
Olivier Teulière
adc60c868f
Settings: fix a typo (wrong setting type)
2013-01-19 00:36:07 +01:00
Olivier Teulière
33214c62b2
Rack: add a contains() convenience method
2013-01-17 17:59:33 +01:00
Olivier Teulière
b493b3b365
Rack: rename a method
2013-01-17 17:59:33 +01:00
Olivier Teulière
ac3cc02be4
Rack: rename a member variable
2013-01-17 17:59:33 +01:00
Olivier Teulière
a13f7d2968
Bag: add a contains() convenience method
2013-01-17 17:59:28 +01:00
Olivier Teulière
bfcc7a80c6
Bag: the number of tiles cannot be negative
2013-01-17 17:21:33 +01:00
Olivier Teulière
3caacd9c84
Bag: remove a useless method
2013-01-17 17:19:41 +01:00
Olivier Teulière
6dc05081b0
Bag: rename a member variable
2013-01-17 17:19:41 +01:00
Olivier Teulière
c1c3f3b48b
Bag: rename a method
2013-01-17 17:14:38 +01:00
Olivier Teulière
652ee671de
Distribute the contribs
2013-01-17 17:08:14 +01:00
Olivier Teulière
25829870e8
Integration of the Win32 installer into the build system
2013-01-17 16:21:27 +01:00
Olivier Teulière
0d9fd8898a
New InnoSetup-based installer for Windows, by Joan Montané
2013-01-17 16:20:53 +01:00
Olivier Teulière
664eec36ed
New MoveSelector class, to help find the "best" move to play.
...
The best move has the highest possible score, but it is also the one
leading to the most interesting game. This is a subjective notion, but
some heuristics can help, such as:
- a move sparing a blank is better than one using it
- a move with many prefixes and suffixes is better than one without
extensions
- a move "opening" the game is better than one blocking it
- a move leaving a nice rack is better than one leaving "bad" letters
At the moment, only the first heuristic is implemented.
2013-01-16 19:00:01 +01:00
Olivier Teulière
4e533eed27
Fix a small bug in explosive games.
...
Before this commit, if the top move did not need the blank tile, the
blank tile stayed in the rack. It is now replaced with another (randomly
selected) tile.
2013-01-16 18:04:57 +01:00
Olivier Teulière
83baec368b
Topping: give the score penalty directly with the player move.
...
This commit also adds a setting to disable the elapsed-time penalty.
2013-01-16 17:46:47 +01:00
Olivier Teulière
cdcb5c25b7
TurnData: remove the m_playerId member
2013-01-16 14:40:34 +01:00
Olivier Teulière
7f3f29df31
HistoryWidget: compute the player ID instead of getting it from TurnData
2013-01-16 14:31:44 +01:00
Olivier Teulière
27c9b5015a
Tests: remove the useless "Player" column in the game history
2013-01-16 14:27:08 +01:00
Olivier Teulière
34c7219f75
Ncurses: remove the useless "player" column in the history view
2013-01-16 14:06:06 +01:00
Olivier Teulière
1e0de63ef8
Results: add a isEmpty() method, and use it where possible
2013-01-16 11:15:12 +01:00
Olivier Teulière
a881789676
po: detect Boost format strings.
...
It would be nice to use the --qt option as well, but is is exclusive
with --boost. So we use only --boost, which cannot give false positives
with Qt strings...
2013-01-16 00:21:51 +01:00
Olivier Teulière
ace75af580
Arbitration: make the shortcuts for assignments translatable
2013-01-16 00:21:51 +01:00
Olivier Teulière
ab14c9a949
Arbitration: rename a few methods
2013-01-16 00:21:42 +01:00
Olivier Teulière
9ad9b02d57
Arbitration: always show the context menu entry to assign the selected move.
...
Even if no move is selected, it can help the user to become aware of the
keyboard shortcuts.
2013-01-15 20:13:47 +01:00
Olivier Teulière
e4338547e5
Arbitration: use a standard shorcut to select all the players
2013-01-15 20:00:03 +01:00