Olivier Teulière
7868593cb2
Do not always reject completely a rack containing letters not in the bag anymore.
...
This could be a rack containing an incomplete input sequence for a tile...
2012-05-16 22:07:55 +02:00
Olivier Teulière
c2290ab6cd
Regexp: use streams instead of printf
2012-05-16 22:07:48 +02:00
Olivier Teulière
24a44dcd4f
Automaton: use streams instead of printf
2012-05-16 22:07:48 +02:00
Olivier Teulière
50998079c2
Do not try to launch dotty when debugging
2012-05-16 22:07:48 +02:00
Olivier Teulière
418bf51781
Automaton: use the logging macros for debug messages, and clean up a little
2012-05-16 22:07:48 +02:00
Olivier Teulière
8511c855f5
Removed a useless include
2012-05-15 08:47:23 +02:00
Olivier Teulière
f3f2d916bb
Fixed a few memory leaks
2012-04-28 15:34:37 +02:00
Olivier Teulière
0be2769dfa
New utility methods to get the lowercase (joker) or uppercase (no joker) variant of a tile
2012-02-21 08:22:32 +01:00
Olivier Teulière
221158e19a
Simplify the Tile::operator==() method
2012-02-19 13:07:29 +01:00
Olivier Teulière
bf42c49850
Added loggers to most classes
2012-02-19 13:07:29 +01:00
Olivier Teulière
684880acbe
Moved debug.h to dic/
2012-02-19 13:07:29 +01:00
Olivier Teulière
cfa88072a3
Replace the use of convertToMb() and convertToWc() with macros
2011-07-30 19:48:05 +00:00
Olivier Teulière
867ac96b4d
Defined some useful string conversion macros
2011-07-30 19:47:24 +00:00
Olivier Teulière
9e71372c42
Simplified the readFromUTF8() prototype
2011-07-30 19:46:47 +00:00
Olivier Teulière
b5212ebd05
Fixed encoding problems on Windows.
2011-07-30 19:44:18 +00:00
Olivier Teulière
1e543111e9
Detect and ignore the BOM in the letters file
2011-07-16 21:13:42 +00:00
Olivier Teulière
0c76b9d781
Simplified the looging macros, and added logs in various key places.
2011-01-29 23:47:20 +00:00
Olivier Teulière
e175a6d8bc
Added a new (optional) dependency on log4cxx, to enable logging.
...
If disabled (the default), everything is compiled away.
2011-01-16 21:30:30 +00:00
Olivier Teulière
cadc14e8aa
Added Indonesian translation, courtesy of Switchu Legitri
2011-01-08 22:27:59 +00:00
Olivier Teulière
c3785555b9
Print to stderr the complete stack trace in case of exception or segmentation fault.
...
This feature will only be activated in debug mode, and if available on the platform.
The symbols will even be demangled if possible (i.e. if compiled with g++).
2010-10-17 21:23:39 +00:00
Olivier Teulière
5cb6ad38cd
New button on the "Dic. info" tab, to save the dictionary words list to a file
2010-09-18 13:07:39 +00:00
Olivier Teulière
170c59481f
Ignore '\r' characters when loading the word list
2010-09-10 18:36:36 +00:00
Olivier Teulière
dd003417c0
Ignore empty lines in the word list, instead of throwing an exception
2010-06-12 15:59:07 +00:00
Olivier Teulière
dd44196d21
Renamed _wtoi into wtoi to avoid a name collision with mingw32 headers
2010-05-20 20:27:47 +00:00
Olivier Teulière
7a486ec697
Fixed an encoding bug on Windows
2010-05-19 19:28:26 +00:00
Olivier Teulière
01297ebdb4
Sort the word list before processing it. It allows a much better compression, and avoid problems when a word is a prefix of the word just before.
...
Also, the word list is not a raw buffer anymore, which makes it a bit easier to understand the algorithm.
2010-05-16 10:06:01 +00:00
Olivier Teulière
9d5c9fe1d0
The dictionary creation is now encapsulated into a dedicated class, to allow reusing it easily
2010-05-15 12:14:53 +00:00
Olivier Teulière
cd78568af4
Fixed BOM handling
2010-04-20 20:49:58 +00:00
Olivier Teulière
3093d0fd7c
Fixed an encoding bug on Windows, when trying to convert empty strings
2010-01-29 21:46:13 +00:00
Olivier Teulière
2a1932437c
Fixed potential read of invalid memory
2010-01-04 21:57:27 +00:00
Olivier Teulière
d1a1254dbe
Made an error message clearer
2010-01-04 21:00:33 +00:00
Olivier Teulière
2404d359ca
- Refuse to build a dictionary with a non-alphabetical character (except '?')
...
- Marked many strings for translation, and improved their formatting
2010-01-02 12:44:56 +00:00
Olivier Teulière
9b52668612
- Allow dictionaries without jokers
...
- The listdic binary now accepts non-alphabetical characters.
But playing with such a dictionary is still impossible.
2010-01-01 18:01:35 +00:00
Olivier Teulière
3c7a84d543
Support saving/loading games (any game type) in XML format.
...
Status:
It works well, but there are still a few details to improve/fix
More details about the changes:
- New dependency on Arabica and Libxml2 to parse the XML
- Loading the old format is still supported for this release, but won't be supported anymore in the next one
- Games are now only saved in the new format
- In training mode, the player is now created externally, like in the other modes
- Avoid using GameIO (the one from game/) whenever possible
- Do not use a FILE* argument anymore when loading a game
- Throw and catch exceptions correctly when a game cannot be loaded or saved
- The non-regression tests now use a new method to print the game history
2009-11-29 16:01:31 +00:00
Olivier Teulière
d0a7ce6947
Fixed an encoding problem on Windows: do not assume input is UTF-8.
...
This fixes a crash when typing a character like 'é' in an input field.
2009-10-23 20:01:49 +00:00
Olivier Teulière
79b6c0b53c
Fixed a crash on Windows, when trying to convert an empty string
2009-10-14 19:36:37 +00:00
Olivier Teulière
43d42a0388
Little hack to have the 7+1 search in alphabetical order (or more precisely, in the order of the letters as defined at dictionary creation)
2009-09-21 20:10:34 +00:00
Olivier Teulière
08c9816d32
Tiny optimization of the compressed dictionary
2009-07-03 21:51:08 +00:00
Olivier Teulière
02e4cb2970
- Invalid moves should be in the display form
...
- Moved some code from Header to Dictionary
2009-07-03 21:40:14 +00:00
Olivier Teulière
8485e317b5
- Improved some strings
...
- Update of the French translation
- Fixed make distcheck (compdic.cpp contains non-ascii chars)
2009-06-28 12:11:10 +00:00
Olivier Teulière
e42bc55965
Display the alternative inputs in the dictionary information tab
2009-06-28 11:47:50 +00:00
Olivier Teulière
4fda3fed5e
Support display and input strings in the dictionary header
2009-06-28 10:55:24 +00:00
Olivier Teulière
0e9711da25
Accept various inputs for the same tile in the Qt interface.
...
The dictionary format still needs to support that.
2009-06-27 18:09:44 +00:00
Olivier Teulière
da85bde477
First step in accepting various input strings for the same tile: input coming from the text interface is now passed through a conversion method (... which does nothing yet!)
2009-06-23 21:39:07 +00:00
Olivier Teulière
795c44827d
Center correctly multi-chars letters in the text interface
2009-06-23 21:36:33 +00:00
Olivier Teulière
fc04b0604b
Little refactoring
2009-06-23 15:36:28 +00:00
Olivier Teulière
7569a58bb7
Each letter (tile) now has a display string, defaulting to its internal char. It is not yet possible to change it.
...
This display string is used in the ncurses and Qt interfaces.
Display strings are types "wdstring" instead of plain "wstring" in a few places (not all of them) to help recognize them.
2009-06-23 12:41:53 +00:00
Olivier Teulière
9b8526b451
Improved error messages
2009-06-21 12:32:25 +00:00
Olivier Teulière
1b585e8a49
Simplified code a little
2009-06-13 21:44:05 +00:00
Olivier Teulière
3d525af762
Got rid of the custom HashTable class: Boost.Unordered provides a better one for free...
2009-05-01 09:04:47 +00:00