Commit graph

143 commits

Author SHA1 Message Date
Olivier Teulière
ae67aa71ee Do not perform any dictionary search on a zero-length intput. This was the case due to the Refresh methods in the wxWidgets interface, during a search.
What's more, since wxWidgets is very slow to handle the list of results (benjamins in particular), a search done with the search windows open seems more responsive.
2006-10-14 09:46:15 +00:00
Olivier Teulière
0683b6a516 Fixed more memory leaks of the same kind 2006-10-08 18:24:17 +00:00
Olivier Teulière
749db006f6 Fixed a memory leak 2006-10-08 18:12:17 +00:00
Olivier Teulière
ba11fc3be6 Removed another useless include 2006-09-30 22:19:17 +00:00
Olivier Teulière
8519a4d794 Removed useless includes 2006-09-30 22:11:56 +00:00
Antoine Fraboulet
86c65ebc4a - add load dictionnary functions for bigendian arch
regression test is ok on linux/ppc
2006-04-16 11:27:19 +00:00
Olivier Teulière
77be2e9219 Backport of the 'multibyte' branch on HEAD. 2006-01-22 12:23:52 +00:00
Antoine Fraboulet
c44a16dc13 - small typo fix in comments
- add doxygen file description
  - revert Dic_chr / board_search patch
    returning the character instead of the code
    was a HUGE performance penalty
    The dictionary must use codes, the board must be
    made to use codes instead of dic using tiles.
  - add Dic_char and Dic_char_lookup as temporary
    fixes for board_search. Should modify Board and Cross class
    instead.
  - create dic_code_t type
2006-01-01 19:51:00 +00:00
Olivier Teulière
96fe9f22b1 Dic_chr returns the actual char, not a code between 0 and 31.
Dic_lookup takes a string containing real chars, not codes.
The idea is to hide the internal representation of the characters from the
users of the dictionary, who don't care about it.
2005-12-24 18:42:44 +00:00
Olivier Teulière
a9e51998f8 Fixed a segfault 2005-12-24 16:49:26 +00:00
Olivier Teulière
b54b760677 Backported modifications in dic/ 2005-11-05 17:56:22 +00:00
Olivier Teulière
fe13a5e627 Removed the $Id:$ lines on HEAD 2005-11-04 20:00:05 +00:00
Olivier Teulière
e3bc46b114 Updated licence text with FSF's new address. 2005-10-23 14:53:42 +00:00
Antoine Fraboulet
d0418c3e8d commit to tag v1.5 2005-05-28 20:59:14 +00:00
Antoine Fraboulet
699f5fa205 fixed a typo for doxygen 2005-05-06 07:39:58 +00:00
Antoine Fraboulet
9cd294492e adding untyped list type for use in automaton 2005-05-06 07:25:40 +00:00
Antoine Fraboulet
b9f9bd763e - regexp are now complete and correct
- licence update in files header
2005-05-05 23:45:04 +00:00
Antoine Fraboulet
49a41bb311 - added + ? and [^xx] works in most of the cases, automata is no more
deterministic, I have to rewrite the automaton_build to correct this.
2005-04-27 17:35:03 +00:00
Antoine Fraboulet
e29aa11a75 lexer/parser function name changed yy* -> regexp* 2005-04-26 16:31:45 +00:00
Antoine Fraboulet
2b829c1768 doxygen doc changes 2005-04-26 07:37:55 +00:00
Antoine Fraboulet
70cbbedede QMARK and PLUS are working, still a small thing to correct for QMARK (a[bc]?d) 2005-04-25 09:17:53 +00:00
Antoine Fraboulet
a0b083e83b adding QMARK, PLUS 2005-04-25 08:18:24 +00:00
Antoine Fraboulet
c8dde79bc3 uint_t -> dic_elt_t for dictionary 2005-04-20 18:11:00 +00:00
Antoine Fraboulet
072afe50f8 fixed a memory leak when freeing automaton 2005-04-19 20:18:32 +00:00
Antoine Fraboulet
909a29a43d minor changes 2005-04-19 20:02:55 +00:00
Antoine Fraboulet
473ef6d47f DEBUG_RE removed 2005-04-19 18:09:44 +00:00
Antoine Fraboulet
9296520b64 correction for generated files derived from er.l and er.y 2005-04-19 18:07:14 +00:00
Antoine Fraboulet
120f342c5d small typo fixed 2005-04-19 16:40:24 +00:00
Antoine Fraboulet
be0dea2a08 - documentation added for the dictionary
- regexp is now working (still needs some testing)
- regexp syntax error recovery is not implemented
2005-04-19 16:26:50 +00:00
Antoine Fraboulet
ad5b5963d5 *** empty log message *** 2005-04-18 17:40:36 +00:00
Antoine Fraboulet
59f7c6df9c yyparser ok. must change things to have a unique prefix instead of yy* 2005-04-16 20:55:51 +00:00
Olivier Teulière
5b70753b50 Fixed a warning in Doxygen generation 2005-04-10 13:35:10 +00:00
Antoine Fraboulet
4f1420ed31 - minor dictionary .h changes
- starting integrating regexp into eliot
2005-04-09 19:16:09 +00:00
Olivier Teulière
6b025b9541 - Several fixes in the build system
- Added a bootstrap script to reduce manual work
 - Added a --enable-debug configure switch to define the DEBUG variable
2005-04-03 21:12:03 +00:00
Antoine Fraboulet
8121c6ab4c raccords and benjamins are now search active 2005-03-29 08:22:55 +00:00
Olivier Teulière
b7032e2d78 - The Game library is now in C++.
This simplifies the code in many places, and allows inheritance of the
   game mode classes (Training, Duplicate and FreeGame).
 - A Tile is no more an unsigned char, but a class: it should help supporting
   i18n of the game. The Dic library still uses unsigned chars though.
 - Improved the configure script, to enable/disable the compilation of some
   interfaces.
 - Added a ncurses interface, much nicer than the text one. The game mode and
   the number of players are currently hardcoded, it is not possible to change
   them interactively (yet).
 - Repaired the save/load functions.

NOTE: The wxWindows interface compiles, but is completely broken. I'm afraid it
needs a full rewrite (to support the various game modes in particular).
2005-02-05 11:14:56 +00:00
Olivier Teulière
b102aafbcd Support for 3 different game modes:
- 'Training' mode: same behaviour as before
  - 'Duplicate' mode: all the players (who can be human players or AI
    players) have the same rack, and the best word is played on the
    board
  - 'Free game' mode: the players (human or AI) have different racks,
    and they play one after another

Status:
  - Core: the main functions are written, but the API could be more
    homogeneous between the different modes.
  - Interfaces: the text interface is almost up-to-date, but the
    wxwindows one only supports Training mode.
  - AI: Currently, AI players always play the best word, which is
    optimal in Duplicate mode but not in FreeGame mode. Other strategies
    will be written in the future.
  - Handling of saved games is broken: a game can be saved and loaded,
    but no information about the mode and the players is stored, so it
    crashes whatever you do after loading the game.
2004-08-07 18:10:42 +00:00
Olivier Teulière
acd1aa0f1b Added .cvsignore files 2004-07-08 18:17:31 +00:00
Olivier Teulière
61963c0fe0 Fix pour la compilation windows, et la compatibilit avec wxWindows 2.5
(pas encore suffisant)
2004-06-22 21:04:07 +00:00
Antoine Fraboulet
3241a1c1af ajout de regexp.c 2004-06-21 16:06:54 +00:00
Antoine Fraboulet
1b498989bd dbut des ER, parcours d'arbre ok, construction automate ok. Manque construction
de l'arbre et utilisation automate avec dictionnaire.
2004-06-20 20:13:59 +00:00
Antoine Fraboulet
c7899d0807 *** empty log message *** 2004-06-19 18:43:35 +00:00
Antoine Fraboulet
90b1affcef *** empty log message *** 2004-04-08 09:43:06 +00:00