This is an implementation of Klondike Solitaire using the Qt GraphicsView Framework
All code was written by me. I set a goal to code this project without AI input, which I have done. Probably the last such project I will ever do.
- Demonstrate familiarity with Qt framework including the Graphics View Framework, Undo Framework, and many other Qt classes.
- Demonstrate familiarity modern C++ idoms, including range-based for loops, Containers and algorithms
- Provide gamification to reduce the users use of the game.
- Demonstrate use of CMake with Qt.
-
Specifications for the game are found at SolitaireSpecification.md
-
An initial class diagram was done before implementation begun. This class. diagram was done in the QtCreator Model Editor, and the diagram source is found at solitaireclassdiagram.qmodel.
Additional Documentation
- A Survey of Other Implementations was conducted after initial development was complete.
After a new version of OSX is installed, the XCode SDK may be updated, resulting in file not found errors in the SDK when attempting to build. These can be resolved as follows
- Build -> Clear CMake Configuration
- Build -> Run CMake
- Rebuild project
- Because this is a CMAKE project, some Qt Creator features, such as "Add Existing file" are not available. You must edit the CMakeLists.txt file to add folders and files
- I keep a record of work done each day, which includes accomplishments, research notes, and testing notes. The developers log is found at Documentation/Devlog.md
- TODO List - Is it ever done?
- Card Art for face cards was purchased from [VectorStock-Fantasy Deck]( * Fantasy Deck)
License is GNU GPL v3. Because this is an educational project, it seemed to make sense to allow free use, given that it contributes to the community.