summaryrefslogtreecommitdiff
path: root/Games/Minesweeper/Field.h
AgeCommit message (Collapse)Author
2020-02-25AK: Make Vector use size_t for its size and capacityAndreas Kling
2020-02-24AK: Make HashTable and HashMap use size_t for size and capacityAndreas Kling
2020-02-23LibGUI: Remove parent parameter to GUI::Widget constructorAndreas Kling
2020-02-23Userspace: Use Core::Object::add() when building interfacesAndreas Kling
2020-02-16LibGUI: Add forwarding headerAndreas Kling
This patch adds <LibGUI/Forward.h> and uses it a bunch. It also dragged various header dependency reduction changes into it.
2020-02-06LibGUI: Remove leading G from filenamesAndreas Kling
2020-02-06LibCore: Remove leading C from filenamesAndreas Kling
2020-02-06LibGfx: Unpublish Gfx::Size from the global namespaceAndreas Kling
2020-02-06LibDraw: Put all classes in the Gfx namespaceAndreas Kling
I started adding things to a Draw namespace, but it somehow felt really wrong seeing Draw::Rect and Draw::Bitmap, etc. So instead, let's rename the library to LibGfx. :^)
2020-02-02LibGUI: Put all classes in the GUI namespace and remove the leading GAndreas Kling
This took me a moment. Welcome to the new world of GUI::Widget! :^)
2020-02-02LibCore: Put all classes in the Core namespace and remove the leading CAndreas Kling
I've been wanting to do this for a long time. It's time we start being consistent about how this stuff works. The new convention is: - "LibFoo" is a userspace library that provides the "Foo" namespace. That's it :^) This was pretty tedious to convert and I didn't even start on LibGUI yet. But it's coming up next.
2020-01-18Meta: Add license header to source filesAndreas Kling
As suggested by Joshua, this commit adds the 2-clause BSD license as a comment block to the top of every source file. For the first pass, I've just added myself for simplicity. I encourage everyone to add themselves as copyright holders of any file they've added or modified in some significant way. If I've added myself in error somewhere, feel free to replace it with the appropriate copyright holder instead. Going forward, all new source files should include a license header.
2019-09-22LibCore: Remove ObjectPtr in favor of RefPtrAndreas Kling
Now that CObject is fully ref-counted, just use RefPtr everywhere! :^)
2019-09-21LibGUI: Convert custom widgets and subclasses to ObjectPtrAndreas Kling
2019-09-20LibCore: Convert CTimer to ObjectPtrAndreas Kling
2019-07-29Minesweeper: refactor on_square_clicked and flood_markDrew Stratford
Both on_square_clicked and flood_mark were very similar so I've introduced the on_square_clicked_impl function which is now called by on_square_clicked and flood_fill.
2019-07-29Minesweeper: make Field::flood_fill iterativeDrew Stratford
This change uses an iterative traversal to avoid stack overflows in, the previously recursive, flood_fill.
2019-07-01Minesweeper: Move configuration reading to FieldJookia
This makes more sense as it's where configuration writing happens.
2019-07-01Minesweeper: Allow single-click chordingJookia
This is how other Minesweeper games I've played usually behave. Single-click chording can be disabled from the menu or config file.
2019-06-21AK: Rename RetainPtr => RefPtr and Retained => NonnullRefPtr.Andreas Kling
2019-06-07Meta: Tweak .clang-format to not wrap braces after enums.Andreas Kling
2019-05-28Add clang-format fileRobin Burchell
Also run it across the whole tree to get everything using the One True Style. We don't yet run this in an automated fashion as it's a little slow, but there is a snippet to do so in makeall.sh.
2019-05-19Minesweeper: Make things a little more friendly at the startRobin Burchell
Rather than having the first click hit a bomb, if the first click would hit a bomb, instead, reset the game board. This is a (sort of) feature of Windows minesweeper, and IMO makes playing a bit more fun :-)
2019-05-06Minesweeper: Flag unflagged mines on win.Andreas Kling
2019-04-28Minesweeper: Add considering feature, where middle clicking marks with '?'Andreas Kling
This is useful in the harder modes, for trying out different possibilities.
2019-04-26Minesweeper: Implement some feature requests.Andreas Kling
Someone was playing this game and suggested a number of improvements so here we go trying to address them: - Add "chording" support, where you can click a numbered square using both mouse buttons simultaneously to sweep all non-flagged adjacent squares. - Mis-flagged squares are now revealed as such on game over, with a special "bad flag" icon. - The game timer now shows tenths of seconds. It also doesn't start until you click the first square. - Add the three difficulty modes from the classic Windows version.
2019-04-15Minesweeper: Paint a grid pattern below the mines.Andreas Kling
2019-04-14Minesweeper: Add flag counter and game timer.Andreas Kling
2019-04-13Minesweeper: Make it possible to win the game. :^)Andreas Kling
2019-04-13Minesweeper: Turn the field into a GFrame for that containery look.Andreas Kling
2019-04-13Minesweeper: More implementation work.Andreas Kling
2019-04-13Minesweeper: Start working on a simple minesweeper game. :^)Andreas Kling