summaryrefslogtreecommitdiff
path: root/quacker
AgeCommit message (Collapse)Author
2025-08-18Show current best sequence and ply depthpommicket
2025-08-18Stop process when solve returns movespommicket
2025-08-17Endgame equity & win %pommicket
2025-08-17Integrate endgame solverpommicket
2025-08-15Solving, but something's brokenpommicket
2025-08-15Start endgame solvingpommicket
2025-08-13set Macondo Lexicon based on settingspommicket
2025-08-13Integrate Kibitzer with macondopommicket
2025-08-13Various code cleanup, fix issues with move boxpommicket
2025-08-12Integrate Macondo into move chooserpommicket
2025-08-12add move boxpommicket
2025-08-11Finish move parsingpommicket
2025-08-08more move extraction; not working yetpommicket
2025-08-08start extracting playspommicket
2025-08-08MacondoBackendpommicket
2025-08-08simulatepommicket
2025-08-07give turn number to macondopommicket
2025-08-07send position to macondopommicket
2025-08-07Add macondo tab, run processpommicket
2023-07-19Fix QMessageBox deprecations.John Fultz
Qt6 complains about the versions of the static function signatures we’re using for generating various QMessageBoxes. Except for the “Show plaintext board” dialog, which seems to be having some “special” issues in Qt6.
2023-07-19Fix various Qt6 deprecations.John Fultz
2023-07-19Fix integer size compiler warnings.John Fultz
2023-07-19Fix misconnected signal/slot in BoardSetUpDialog.John Fultz
2023-07-18Fix Qt6 MOC compilation on some platforms.John Fultz
That was super painful. It seems that some of the Quackle types that have custom operator==() give fits to the MOC compiler when those types are used as arguments for slots and/or signals (or maybe it's only when they're connected in a certain way...frankly, I never did figure this out precisely to my satisfaction). The compilers provide very little help in resolving this problem. Once I understood the problem, VS22 was giving me just the tiniest morsel, enough that I could hunt down the offending slot/signal (it wasn't even giving me the name of the slot/signal...just the type it was trying to use). I've changed all offending functions to use const pointers to types instead of const references, and this makes Qt happy. I couldn't find any info on the web directly about this, but here's the closest I did find, which suggests that this is related to increased functionality in Qt6 regarding reflection. https://forum.qt.io/topic/141434/ This fixes my VC++22 x86-64 build. Hopefully it fixes all of the others, too.
2023-07-17Fix deprecated usage of QSysInfo which doesn't builds in Qt6.John Fultz
And it wasn't needed anyway, so remove it from both Qt5 and Qt6 builds.
2023-07-17Fix up std:: namespace hygiene.John Fultz
* Remove all uses of `using namespace std` from header files (although a few specific cases of things like `using std::vector` remain) * Move all existing uses of `using namespace std` in cpp files to after the header includes * Make coordinating changes so it builds again. Qt6 builds on Windows were breaking because of namespace collision between std::byte and some version of `byte` in one of Qt's namespaces. That breakage is now fixed. It would be good to systematically clean up all `using` declarations in header files to ensure nothing is leaking out, but that's for another time.
2023-07-16Add Qt6 to cmake, build action matrix.John Fultz
The cmake file now takes a QT_VERSION string setting. The first character of the string is “6”, then cmake calls find_package on Qt6…otherwise, it calls find_package on Qt5. Qt 6.5.2 builds added to the GitHub Actions build matrix.
2023-07-16Make UTF8-encoding of QTextStream work in Qt5 and 6.John Fultz
QTextStream::setCodec() is no longer a thing in Qt6. Most of our call are to set the codec to UTF-8, which happens to be the default encoding in Qt6. So make a macro so this can compile in both Qt5 and Qt6.
2023-07-16QRegEx -> QRegularExpressionJohn Fultz
I think these changes would still be fine in Qt5, but are required for Qt6. Also DataLocation was deprecated in v6, AppLocalDataLocation is the same for both Qt5 and Qt6.
2023-07-16More Qt6-ish things that were probably a bad idea even in Qt5.John Fultz
2023-07-16Fix up some Qt signals.John Fultz
Some of the signals we’re using aren’t supported or working in Qt 6. Refactor for things that are working and documented.
2020-07-23Remove obsolete bullet point from "Helpful Hints" message box.John Fultz
2020-06-18A few miscellaneous typo fixesOliver Galvin
2020-06-17Xcode compiler warnings.John Fultz
* Replace std::random_shuffle() with std::shuffle(). * Populate switch statements which were checking the Move enums, but not Move::PlaceError. * endl -> Qt::endl for QTextStream usage. * QString::SkipEmptyParts -> Qt::SkipEmptyParts * QLabel::pixmap() now takes Qt::ReturnByValue * Use QElapsedTimer where appropriate.
2019-08-11Fix devicePixelRatios on tile pixmap after dragging it.John Fultz
Apparently, when you serialize a pixmap through a QDataStream(), it loses track of its devicePixelRatio setting. End rule was that if, on a HiDpi screen, you dragged and dropped a tile within the rack, you'd get a tile that was larger than it should have been by a factor of the default pixel ratio. Solution is to simply reapply the pixel ratio to the newly created Pixmap after deserializing it in the drag-drop code.
2019-08-11Fix "Verify Play" dialog.John Fultz
If a play was made from tiles not on the rack, it brings up the "Verify Play" dialog, to which one of the options is to cancel the play. But canceling the play didn't work. Now it does.
2019-08-06Fix cmake plist.John Fultz
2019-07-28Update version to 1.0.4.1.John Fultz
Rereleasing with just a couple of bug fixes, and may need to be able to tell the difference between releases in the wild.
2019-07-28Fix #87, make tiles high-res on HiDpi screens.John Fultz
QPixmap is still in actual pixels, so it needs to be created at devicePixelRatio() times its present size, in addition to having its own devicePixelRatio() set.
2019-07-22Fix cmake build to build Windows as Win32, not a console app.John Fultz
2019-07-22Fix .icns file.John Fultz
Also, fix cmake macOS build to configure the icon.
2019-07-21Throw a version check around HiDPI attribute...which was only introduced in ↵John Fultz
Qt 5.6.
2019-07-21Remove address sanitizer from cmake.John Fultz
I may add it back later as an option.
2019-07-21Add support for screen scaling under Windows/Linux.John Fultz
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.
2019-07-21Visual C++ compiler warning fixes.John Fultz
Mostly signed/unsigned/size_t mismatches, except for one case treating a bool as an integer.
2019-07-19Add CSW19 dictionary.John Fultz
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).
2019-07-19First cut of a cmake build.John Fultz
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.
2019-07-19Update copyright in plist.John Fultz
2019-07-19Fix deprecation errors for Qt 5.13.John Fultz
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.
2019-05-06About box fixes.John Fultz
Re-sort copyrights so newer ones show up first. Exclude copyright.txt lines from about box if they don't have an actual copyright.