Age | Commit message (Collapse) | Author |
|
I may add it back later as an option.
|
|
Seems that, unless you tell it to specifically, Qt insists on dealing
with physical pixels instead of screen-scaled coordinates. So, i.e.,
on my 200%-scaled HiDpi display, everything was looking pretty small.
|
|
Mostly signed/unsigned/size_t mismatches, except for one
case treating a bool as an integer.
|
|
Also, rename cswapr07 to csw07 (I think enough years have
passed that the need to distinguish the "April update" has passed...
but I nonetheless mention it in the copyrights file).
|
|
Building on macOS right now. cmake will soon replace qmake
as the supported build system. Some notes about the
implementation:
* libquackle and libquackleio can be separately built as before.
* quacker still links to the static libraries for libquackle and libquackleio,
but quacker's cmake file includes those projects, which means
everything builds at once. No more need to run separate builds
of everything to get a GUI. And debugging is easier now that
the libraries are incorporated into the quacker project.
* I tried to get cmake to build the macOS app bundle, but cmake
is unable, by conventional means, to build a non-flat Resources
directory (which many people have complained about). Right
now, the default build just builds the binary, and you have to run
it from the command-line. But -DBUNDLE=ON will build a shell
of a bundle. It won't work, but I intend to create an Xcode project
from it for building the bundle, to make it easier for me to deliver
a code-signed and notarized app bundle.
* I've got CMakeLists.txt files for the resources, but they're not
really doing anything right now. Maybe later.
* Minimum macOS version for the cmake build is 10.10.
|
|
|
|
Most are Qt4-isms, except where noted.
* Replaced QFontMetrics::width with QFontMetrics::horizontalAdvance,
conditionally as the latter wasn't even introduced until Qt 5.11.
* QColor::light and dark instead of QColor::light and dark.
* QString() instead of QString::null.
* std::sort instead of qSort
* QTreeWidgetItem::setSelected instead of QTreeWidget::setItemSelected.
* QFileDialog::setOption(QFileDialog::DontConfirmOverwrite) instead
of QFileDialog::setConfirmOverwrite(false).
* QDrag::exec instead of QDrag::start.
|
|
Re-sort copyrights so newer ones show up first.
Exclude copyright.txt lines from about box if they don't have
an actual copyright.
|
|
Add NASPA logo for its dictionaries.
Add a separator between settings and copyright for clarity.
Tighten up vertical spacing in the settings panel.
|
|
|
|
|
|
Also, extend copyright to 2019.
|
|
|
|
Xcode now wants an asset catalog thing
with proper .png files rather than a .icns
thing. Bits shuffled accordingly.
Also, higher res icon. Slightly different
design. Only on Mac for now.
Also, move minimum macOS to 10.9.
Also fix 1.0.4 update versioning oversight.
|
|
When going back to edit history, typing a
phoney correctly brought up a dialog, but
indicating you wanted to cancel the phoney
play didn't stop the play from going down,
or a subsequent computer player from making
its play.
|
|
|
|
The player name in the label in the rack text
was being updated after every play. Not
unreasonable, but this was the principle
cause for layout elements bouncing horizontally
across the window when plays alternated.
So, now, it just has the fixed text "Rack:".
|
|
|
|
|
|
Start Championship Player, then exit while
the player is still thinking could crash.
|
|
Also, add a bit of parallelization, do a few other cleanups
on the yml and .pro files. And push C++14 flags everywhere
into the build system.
|
|
|
|
|
|
Now builds on Qt 5.9.1, and works on Mac, Windows, Linux.
|
|
Port quackle to Qt 5.5
|
|
|
|
Not perfect, but it now does a decent job of not corrupting GCGs when
it loads one where players have messed up tile counts/drawing in the
end-game. It also tries to annotate these for the player and in any
GCG file that's round-tripped.
Also, a lot of C++11-izing of ranged iterators.
|
|
|
|
Also, fix a typo and remove dead code.
|
|
When the message box that says you made a play which uses tiles
not on your rack comes up, it now has a third option...switch to
player with unknown tiles. So, you'll get this message box at
most once per player if you choose that option.
|
|
|
|
Found a crash where you enter "ex 4" twice,
and it would crash. This led me to look up
how this was implemented, and it wasn't
very robust. It also didn't save properly in
the GCG. So I created a new move type
which I called a BlindExchange and implemented
it throughout the system.
|
|
A checkbox in the preferences dialog now allows
you to configure Quackle so that plays with illegal
words which are left unchallenged score zero.
Obviously, off by default. But useful for entering
games as part of the Marty Gabriel/Scott Garner
world record scoring attempt. This is apparently
what the Guinness folks are looking for.
|
|
Also resets the focus back to the input field when
you press Shift+Enter.
|
|
A few character encoding things that had still been
missed, and preliminary support for
#character-encoding in GCG files.
|
|
Okay...I think this fixes all file streams to be UTF-8 except
for GCGs, which require less trivial effort.
|
|
|
|
|
|
I had reserved the last spot for "Add new theme/alphabet", but
then abandoned that feature for v1. But forgot to rip out the
code handling it.
Bump version number to 1.0.1.
|
|
* Windows installer now set up to use MSVC redistributables, not
MinGW ones.
* The Board popup's "Edit..." button should be disabled when the
popup is empty (i.e., the only choice is to add one, which is
in the popup).
|
|
|
|
Windows build uncovered a bad assumption about QTextStream
supporting atEnd(), and the stream needed to be explicitly set to
UTF-8.
|
|
|
|
So, basically, the dictionary is queried to see if it's
"English-like". Which is to say that it uses the same
alphabet. If so, then it will fall back to use twl06
strategies, minus the superleaves (the so-called
"default_english"). Otherwise, it uses "default" strategies,
which right now is simply a worths file that sets the
blank to be 30.
It's not great. But better than before.
|
|
I wanted to throw this in a background thread, and I
will, but for now, we need to get something out the
door, and this seems sensible anyway.
Couple of other bug fixes...
* Add a copyright.
* Popup menu says "Add new lexica..." but should say
"Add new lexicon...".
* Copyrights were refusing to wordwrap, thus forcing
the settings pane to be wide.
|
|
* Start using g++ 4.8 and clang.
* Fix missing -std=c++11 flags.
* Builds which failed torched remaining builds, which meant more iteration.
Now, they recover and continue correctly.
* Remove some clang compiler warnings generated by Qt files out of my control.
|
|
|
|
|
|
* All dictionaries are now in v1 DAWG format.
* Three corrupt dictionaries were removed.
* Implement a way to tag dictionaries for copyright purposes.
* CSW15 is now a thing.
|
|
* 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.
|