Age | Commit message (Collapse) | Author |
|
* Fix a number of remaining bugs in the lexicon dialog.
* Fix an error reading the v1 DAWG.
* Improve the word counting mechanism.
* Make sure the lexicn dialog properly selects and loads
its dictionary after it's done.
* Implement deleting of user dictionaries.
* Clean up dictionary info text in lexicon dialog.
* Disable gaddag generation...still have to fix that up
to happen at sensible times and with user notification.
|
|
Get enables and disables right, efficient computation
of word counts, etc.
|
|
Now prints better stats. Now loads the
dictionary you're editing. Now disables the
Delete button at appropriate times.
|
|
Words are loaded and hashed. Duplicates are
discovered. Alphabets are dealt with. Merging
of multiple word lists works. This is good stuff.
Saving the resulting dictionaries has not been
tried, yet, and the gui code for saving needs to
be finished off, yet.
|
|
|
|
V1 DAWGs now include an alphabet.
Begin creating DAWGs which extend other DAWGs.
In general, laying the groundwork for plain text import
to DAWG.
|
|
The 'crosses' code for checking "fit between" plays was
using a 32-bit integer as a bitfield. Now it's using C++
bitfields (including the C++11 all() operation...hopefully
that doesn't cause any problems).
This removes another place in the code that was limiting
alphabets to 32 letters.
|
|
Need to add a user interface, but gaddags are now
auto-generated if they can't be found.
Some specific improvements here:
* FixedLengthString gained a pop_back member.
* Add code to allow v1 gaddags and v0 dawgs to work
together.
* Change memory allocation of dawgs and gaddags to
be dynamic (the old limit didn't accommodate the
ridiculously large Polish dictionary in the gaddag)
* The Settings class now knows a bit about generating
gaddags. This will be important for giving UI feedback.
* Fixed several places using filenames which should be
using string, not UVString.
* Dawg/GaddagFactory should have been using
UVString, not QString. My misunderstanding.
|
|
|
|
Basically the same thing I just did to the DAWG files,
now done to GADDAGs. Also, add hashing, and
make sure GADDAGs only load if their hash matches
that of the DAWG files.
|
|
Should be UTF8. Thanks to Vlado Makys for pointing
this out.
|
|
Make reader and writer for the new format, while
maintaing compatibility with the old. Things to
note of the new format...
* Now has a header, with version number, MD5, and word count.
* No longer has terminator bit. Nodes are terminated by
a non-zero playability.
* Which means letters have one more bit. So we can now
support more than 32 letters. Important for Slovak alphabet.
Also, various cleanups and refactorings.
|
|
If we're going to start writing these into user directories,
then we'd better start versioning them so we don't end
up generating bugs in the future.
LexiconParameters::loadDawg() implements a tiny
class factory which allows backward compatibility
of DAWGs. I'll soon be adding a "version 1" in
addition to the legacy "version 0". For now, version 1
is just dummied in.
|
|
Same thing I just did for the gaddag code I'm now doing
for the dawg code. While I was at it, I made some
improvements to the dawg code...
* Instead of adding multiple cross-checks for various
kinds of node metadata, there's now only one cross-
check...a hash applied to each node.
* Some useless variables/members have been excised.
* Add ability to do a word count (cryptohash coming soon).
* Make it possible to call generate() and writeIndex()
multiple times without corrupting the dictionary.
|
|
A few things from my last commit needed to be
fixed or improved.
|
|
Prepping to build the gaddag maker into the quacker ui.
Built a new class called GaddagFactory to do this and
cleaned up the code a bit.
makegaddag still builds exactly as it did before.
|
|
|
|
Moved Settings::populateComboFromFileNames() to be a
static method, then invoked it from the lexicon dialog.
|
|
* Files can now be loaded from user directory as well
as app directory.
* Edit lexicon dialog has been added, and pretty much
all of the GUI elements framed out. Not actually
implemented, yet.
* Embiggen the board configuration dialog.
* Some bits of code refactoring.
|
|
Delete functionality is now inside of the edit dialog.
Which will make things less messy when other
edit dialogs are introduced.
|
|
|
|
* Fix compiler warnings
* Add Visual Studio 2013 solution
* Tweak .pro files
* Most importantly, rename main 'quackle' project to
'libquackle' to avoid solution-level name conflict. This
only affects the VS build.
|
|
|
|
This allows Quackle to respond to system file open
events. So, if .gcg is associated with Quackle, then
double-clicking a .gcg file will now make it open in
Quackle (whether it's running or not). And drag and
drop, etc.
This definitely fixes issues trying to open files with
double-click on Mac. Windows doesn't have the
.gcg association set up yet, so code is untested
there, but it should be platform independent.
|
|
This fixes the various issues with needing to
code-sign data files. And simplifies the process
of building and preparing to code sign considerably.
|
|
|
|
|
|
|
|
|
|
|
|
Which requires a bunch of craziness to ease the process of
code-signing.
|
|
|
|
|
|
|
|
cswjan11 was a provisional list. No need for it anymore.
cswapr07.gaddag is taking up a lot of space, and probably hardly
anybody needs it anymore (and, eventually, I'll add on-the-fly
gaddag generation, so it won't matter).
|
|
So that console apps won't build as app bundles on MacOS.
|
|
Haven't seen the last of this, yet...combinining keystrokes still
don't seem to be working.
|
|
The original dictionary list needed to be processed to remove
duplicates and parts of speech, which the contributor didn't
do right. This time, I did it myself.
|
|
Not a very interesting commit...only changes in comments.
|
|
The Norwegian dictionary had some unencodable words. Turns out that
they are playable, but using the blank as a letter which is not part
of the distribution. So, adding the letters to the alphabet, but
with zero of them in the distribution, works.
|
|
|
|
|
|
The Norwegian dictionary comes from here:
http://www2.scrabbleforbundet.no/?attachment_id=1620
which claims that the words may be used and redistributed under
GPLv3.
|
|
We'll be incorporating the Norwegian dictionary which is covered
under GPL3, so that's the reason for the move.
|
|
This fixes a reported problem under Windows (it was probably an issue
on other platforms, too) where, if you're using a keyboard that requires
AltGr in order to type Scrabble letters on the board, they simply won't
type. For example, the Windows "Polish Programmers" keyboard.
Polish alphabet submitted by Adam Klimont, and tested by me. Dictionary
to come soon.
|
|
|
|
|
|
|
|
Sometimes, the leave was printed in a partially unsorted
fashion. I suspect this has to do with using opponents
with no racks. Whatever the cause, sorting it is trivial.
|
|
|