├── .gitignore
├── .gitmodules
├── 3rdparty
└── src
│ └── usermanual
│ └── .placeholder
├── AUTHORS
├── CONTRIBUTING.md
├── LICENSE
├── LICENSE.html
├── Little Go.xcodeproj
├── project.pbxproj
└── xcshareddata
│ └── xcschemes
│ ├── Little Go AdHoc Distribution.xcscheme
│ ├── Little Go AppStore Distribution.xcscheme
│ ├── Little Go Debug.xcscheme
│ └── doxygen.xcscheme
├── Little Go.xcworkspace
├── contents.xcworkspacedata
└── xcshareddata
│ └── IDEWorkspaceChecks.plist
├── NOTICE
├── Podfile
├── Podfile.lock
├── README.md
├── doc
├── BUGS
├── ChangeLog
├── Class diagram of packages go + player.jpg
├── CodingGuidelines
├── MediaFiles
├── NOTES.Architecture
├── NOTES.Build
├── NOTES.Build.3rdparty
├── NOTES.Design
├── NOTES.DeviceSupport
├── NOTES.Diagnostics
├── NOTES.Info-plist
├── NOTES.Marketing
├── NOTES.SgfSupport
├── ProgrammingTopics
├── README.developer
├── ReleaseSteps
├── Research
├── Roadmap
├── TESTING
├── fuego-knowledge-memoryusage.txt
└── littlego.asta
├── doxygen
└── Doxyfile
├── resource
├── html
│ ├── About.html
│ ├── BoostSoftwareLicense.html
│ ├── COPYING.LESSER.html
│ ├── COPYING.html
│ ├── Crashlytics-opensource.txt.html
│ ├── Credits.html
│ ├── Firebase-oss.html
│ ├── Lumberjack-LICENSE.txt.html
│ ├── MBProgressHUD-license.html
│ ├── SGFCSoftwareLicense.html
│ ├── SourceCode.html
│ └── ZipKit-COPYING.TXT.html
├── icon
│ ├── about
│ │ ├── about.png
│ │ ├── about.svg
│ │ ├── about@2x.png
│ │ ├── about@3x.png
│ │ └── noun_55404_cc.svg
│ ├── archive
│ │ ├── archive.png
│ │ ├── archive.svg
│ │ ├── archive@2x.png
│ │ ├── archive@3x.png
│ │ └── noun_26076_cc.svg
│ ├── board-setup
│ │ └── board-setup.svg
│ ├── changelog
│ │ ├── changelog.png
│ │ ├── changelog.svg
│ │ ├── changelog@2.png
│ │ ├── changelog@3.png
│ │ └── noun_Changelog_365219.svg
│ ├── computer-play
│ │ ├── computer-play.png
│ │ ├── computer-play.svg
│ │ ├── computer-play@2x.png
│ │ ├── computer-play@3x.png
│ │ ├── noun_123922_cc.svg
│ │ └── noun_2873_cc.svg
│ ├── computer-suggest-move
│ │ ├── computer-suggest-move.png
│ │ ├── computer-suggest-move.svg
│ │ ├── computer-suggest-move@2.png
│ │ ├── computer-suggest-move@3.png
│ │ └── noun_hint_3194435.svg
│ ├── continue
│ │ ├── continue.png
│ │ ├── continue.svg
│ │ ├── continue@2x.png
│ │ ├── continue@3x.png
│ │ └── noun_5582_cc.svg
│ ├── credits
│ │ ├── credits.png
│ │ ├── credits.svg
│ │ ├── credits@2x.png
│ │ ├── credits@3x.png
│ │ └── noun_8180_cc.svg
│ ├── diagnostics
│ │ ├── diagnostics.png
│ │ ├── diagnostics.svg
│ │ ├── diagnostics@2x.png
│ │ ├── diagnostics@3x.png
│ │ └── noun_27633_cc.svg
│ ├── discard
│ │ ├── discard.png
│ │ ├── discard.svg
│ │ ├── discard@2x.png
│ │ ├── discard@3x.png
│ │ └── noun_3715.svg
│ ├── dot-symbol
│ │ ├── dot-symbol.png
│ │ ├── dot-symbol.svg
│ │ ├── dot-symbol@2x.png
│ │ └── dot-symbol@3x.png
│ ├── doubtful
│ │ ├── doubtful.png
│ │ ├── doubtful.svg
│ │ ├── doubtful@2x.png
│ │ ├── doubtful@3x.png
│ │ └── noun-questions-3550357.svg
│ ├── edit
│ │ ├── edit.png
│ │ ├── edit.svg
│ │ ├── edit@2x.png
│ │ ├── edit@3x.png
│ │ └── noun-edit-3756863.svg
│ ├── game-info
│ │ ├── game-info.png
│ │ ├── game-info.svg
│ │ ├── game-info@2x.png
│ │ ├── game-info@3x.png
│ │ └── noun_50837_cc.svg
│ ├── game-types
│ │ ├── computer-vs-computer.png
│ │ ├── computer-vs-computer.svg
│ │ ├── computer-vs-computer@2x.png
│ │ ├── computer-vs-computer@3x.png
│ │ ├── game-types.svg
│ │ ├── human-vs-computer.png
│ │ ├── human-vs-computer.svg
│ │ ├── human-vs-computer@2x.png
│ │ ├── human-vs-computer@3x.png
│ │ ├── human-vs-human.png
│ │ ├── human-vs-human.svg
│ │ ├── human-vs-human@2x.png
│ │ ├── human-vs-human@3x.png
│ │ └── noun_17845_cc.svg
│ ├── go-motifs
│ │ ├── nounproject-originals
│ │ │ ├── noun-go-stone-3961179.svg
│ │ │ ├── noun_go_181270.svg
│ │ │ ├── noun_go_181271.svg
│ │ │ ├── noun_go_181272.svg
│ │ │ ├── noun_go_181273.svg
│ │ │ ├── noun_go_181274.svg
│ │ │ ├── noun_go_181275.svg
│ │ │ ├── noun_go_181276.svg
│ │ │ ├── noun_go_181277.svg
│ │ │ ├── noun_go_181278.svg
│ │ │ ├── noun_go_181279.svg
│ │ │ ├── noun_go_181280.svg
│ │ │ ├── noun_go_181281.svg
│ │ │ ├── noun_go_181282.svg
│ │ │ ├── noun_go_181283.svg
│ │ │ └── noun_go_181284.svg
│ │ ├── stone-black-and-white-icon.png
│ │ ├── stone-black-and-white-icon.svg
│ │ ├── stone-black-and-white-icon@2.png
│ │ ├── stone-black-and-white-icon@3.png
│ │ ├── stone-black-icon.png
│ │ ├── stone-black-icon.svg
│ │ ├── stone-black-icon@2x.png
│ │ ├── stone-black-icon@3x.png
│ │ ├── stone-white-icon.png
│ │ ├── stone-white-icon.svg
│ │ ├── stone-white-icon@2x.png
│ │ ├── stone-white-icon@3x.png
│ │ ├── stones-overlapping-black-and-white-icon.png
│ │ ├── stones-overlapping-black-and-white-icon.svg
│ │ ├── stones-overlapping-black-and-white-icon@2x.png
│ │ ├── stones-overlapping-black-and-white-icon@3x.png
│ │ ├── stones-overlapping-black-icon.png
│ │ ├── stones-overlapping-black-icon.svg
│ │ ├── stones-overlapping-black-icon@2x.png
│ │ ├── stones-overlapping-black-icon@3x.png
│ │ ├── stones-overlapping-white-icon.png
│ │ ├── stones-overlapping-white-icon.svg
│ │ ├── stones-overlapping-white-icon@2x.png
│ │ ├── stones-overlapping-white-icon@3x.png
│ │ └── unused
│ │ │ └── 181278-reversed.svg
│ ├── gogrid2x2
│ │ ├── gogrid2x2.png
│ │ ├── gogrid2x2.svg
│ │ ├── gogrid2x2@2x.png
│ │ └── gogrid2x2@3x.png
│ ├── help
│ │ ├── help.png
│ │ ├── help.svg
│ │ ├── help@2x.png
│ │ └── help@3x.png
│ ├── hotspot
│ │ ├── hotspot.png
│ │ ├── hotspot.svg
│ │ ├── hotspot@2x.png
│ │ ├── hotspot@3x.png
│ │ └── noun-flame-4575899.svg
│ ├── interesting
│ │ ├── interesting.png
│ │ ├── interesting.svg
│ │ ├── interesting@2x.png
│ │ ├── interesting@3x.png
│ │ └── noun-exclamation-1678344.svg
│ ├── interrupt
│ │ ├── interrupt.png
│ │ ├── interrupt.svg
│ │ ├── interrupt@2x.png
│ │ ├── interrupt@3x.png
│ │ └── noun_5763_cc.svg
│ ├── licenses
│ │ ├── licenses.png
│ │ ├── licenses.svg
│ │ ├── licenses@2x.png
│ │ ├── licenses@3x.png
│ │ └── noun_92864_cc.svg
│ ├── markup-types
│ │ ├── arrow.png
│ │ ├── arrow.svg
│ │ ├── arrow@2x.png
│ │ ├── arrow@3x.png
│ │ ├── check-mark.png
│ │ ├── check-mark.svg
│ │ ├── check-mark@2x.png
│ │ ├── check-mark@3x.png
│ │ ├── circle.png
│ │ ├── circle.svg
│ │ ├── circle@2x.png
│ │ ├── circle@3x.png
│ │ ├── cross-mark.png
│ │ ├── cross-mark.svg
│ │ ├── cross-mark@2x.png
│ │ ├── cross-mark@3x.png
│ │ ├── label.png
│ │ ├── label.svg
│ │ ├── label@2x.png
│ │ ├── label@3x.png
│ │ ├── letter-marker.png
│ │ ├── letter-marker.svg
│ │ ├── letter-marker@2x.png
│ │ ├── letter-marker@3x.png
│ │ ├── line.png
│ │ ├── line.svg
│ │ ├── line@2x.png
│ │ ├── line@3x.png
│ │ ├── nounproject-originals
│ │ │ ├── noun-arrow-3134186.svg
│ │ │ ├── noun-check-mark-638157.svg
│ │ │ ├── noun-circle-4148559.svg
│ │ │ ├── noun-cross-mark-638153.svg
│ │ │ ├── noun-detail-4148592.svg
│ │ │ └── noun-square-4148585.svg
│ │ ├── number-marker.png
│ │ ├── number-marker.svg
│ │ ├── number-marker@2x.png
│ │ ├── number-marker@3x.png
│ │ ├── square.png
│ │ ├── square.svg
│ │ ├── square@2x.png
│ │ ├── square@3x.png
│ │ ├── triangle.png
│ │ ├── triangle.svg
│ │ ├── triangle@2x.png
│ │ └── triangle@3x.png
│ ├── markup
│ │ ├── markup.png
│ │ ├── markup.svg
│ │ ├── markup@2x.png
│ │ ├── markup@3x.png
│ │ └── noun-code-4410725.svg
│ ├── menu
│ │ └── menu-hamburger
│ │ │ ├── menu-hamburger.png
│ │ │ ├── menu-hamburger.svg
│ │ │ ├── menu-hamburger@2x.png
│ │ │ ├── menu-hamburger@3x.png
│ │ │ └── noun_36901_cc.svg
│ ├── more-game-actions
│ │ ├── more-game-actions.png
│ │ ├── more-game-actions@2x.png
│ │ ├── more-game-actions@3x.png
│ │ ├── more-game-actons.svg
│ │ └── noun_61422.svg
│ ├── navigation
│ │ ├── back.png
│ │ ├── back.svg
│ │ ├── back@2x.png
│ │ ├── back@3x.png
│ │ ├── forward.png
│ │ ├── forward.svg
│ │ ├── forward@2x.png
│ │ ├── forward@3x.png
│ │ ├── forwardtoend.png
│ │ ├── forwardtoend.svg
│ │ ├── forwardtoend@2x.png
│ │ ├── forwardtoend@3x.png
│ │ ├── noun_45526_cc.svg
│ │ ├── rewindtostart.png
│ │ ├── rewindtostart.svg
│ │ ├── rewindtostart@2x.png
│ │ └── rewindtostart@3x.png
│ ├── node-tree
│ │ ├── node-construction-box.svg
│ │ ├── node-sequence.png
│ │ ├── node-sequence.svg
│ │ ├── node-sequence@2x.png
│ │ ├── node-sequence@3x.png
│ │ ├── node-tree-small.png
│ │ ├── node-tree-small.svg
│ │ ├── node-tree-small@2x.png
│ │ └── node-tree-small@3x.png
│ ├── none
│ │ ├── none.png
│ │ ├── none.svg
│ │ ├── none@2x.png
│ │ ├── none@3x.png
│ │ └── noun-none-3548770.svg
│ ├── pass
│ │ ├── noun_10554_cc.svg
│ │ ├── pass.png
│ │ ├── pass.svg
│ │ ├── pass@2x.png
│ │ └── pass@3x.png
│ ├── pause
│ │ ├── noun_2866_cc.svg
│ │ ├── pause.png
│ │ ├── pause.svg
│ │ ├── pause@2x.png
│ │ └── pause@3x.png
│ ├── position-valuation
│ │ ├── noun-question-mark-2647217.svg
│ │ ├── unclear.png
│ │ ├── unclear.svg
│ │ ├── unclear@2x.png
│ │ ├── unclear@3x.png
│ │ ├── very-unclear.png
│ │ ├── very-unclear.svg
│ │ ├── very-unclear@2x.png
│ │ └── very-unclear@3x.png
│ ├── scoring
│ │ ├── noun_8926_cc-modified.svg
│ │ ├── noun_8926_cc.svg
│ │ ├── scoring.png
│ │ ├── scoring.svg
│ │ ├── scoring@2x.png
│ │ └── scoring@3x.png
│ ├── settings
│ │ ├── noun_31893_cc.svg
│ │ ├── settings.png
│ │ ├── settings.svg
│ │ ├── settings@2x.png
│ │ └── settings@3x.png
│ ├── source-code
│ │ ├── noun_1171.svg
│ │ ├── source-code.png
│ │ ├── source-code.svg
│ │ ├── source-code@2x.png
│ │ └── source-code@3x.png
│ ├── thumbs-up-down
│ │ ├── bad.png
│ │ ├── bad.svg
│ │ ├── bad@2x.png
│ │ ├── bad@3x.png
│ │ ├── good.png
│ │ ├── good.svg
│ │ ├── good@2x.png
│ │ ├── good@3x.png
│ │ ├── noun-dislike-3323410.svg
│ │ ├── noun-like-3323435.svg
│ │ ├── very-bad.png
│ │ ├── very-bad.svg
│ │ ├── very-bad@2x.png
│ │ ├── very-bad@3x.png
│ │ ├── very-good.png
│ │ ├── very-good.svg
│ │ ├── very-good@2x.png
│ │ └── very-good@3x.png
│ └── trashcan
│ │ ├── noun-trash-428421.svg
│ │ ├── trashcan.png
│ │ ├── trashcan.svg
│ │ ├── trashcan@2x.png
│ │ └── trashcan@3x.png
├── image
│ ├── stones
│ │ ├── stone-black.png
│ │ ├── stone-crosshair.png
│ │ ├── stone-white.png
│ │ └── stones.svg
│ └── wooden-background-tile.png
├── images.xcassets
│ ├── AppIcon.appiconset
│ │ ├── Contents.json
│ │ ├── appicon-appstore@2x.png
│ │ ├── appicon-ipad.png
│ │ ├── appicon-ipad@2x.png
│ │ ├── appicon-ipadpro@2x.png
│ │ ├── appicon-iphone@2x.png
│ │ ├── appicon-iphone@3x.png
│ │ ├── spotlighticon-ipad.png
│ │ ├── spotlighticon-ipad@2x.png
│ │ ├── spotlighticon-iphone@2x.png
│ │ └── spotlighticon-iphone@3.png
│ └── Contents.json
├── openingbook
│ └── book.dat
├── plist
│ ├── Entitlements.plist
│ ├── Info.plist
│ └── RegistrationDomainDefaults.plist
├── sound
│ ├── wood-on-wood-01.aiff
│ └── wood-on-wood-12.aiff
├── storyboard
│ └── Launch Screen.storyboard
└── text
│ ├── Crashlytics-opensource.txt
│ └── bug-report-message-template.txt
├── script
├── build-3rdparty-software.sh
├── build-env.sh
├── build-fuego.sh
├── build-sgfckit.sh
├── build-software.sh
├── build-usermanual.sh
├── copy-sgf-files-to-simulator.sh
├── generate-sgf-with-moves.awk
├── makedist.sh
└── render-readme.rb
├── sgf
├── 19x19
│ ├── Fuego vs. Fuego.sgf
│ ├── handicap-7-komi-0-with-pass-moves.sgf
│ ├── markup.sgf
│ ├── maximum-number-of-moves.sgf
│ └── pu2-gokifu-20110910-Melkisheva_Anastasia-Shikshina_Svetlana.sgf
├── 25x25
│ └── 25x25_single_black_move.sgf
├── 7x7
│ ├── play-b-b7-for-superko.sgf
│ └── seki-9b.sgf
├── 9x9
│ ├── 2-passes.sgf
│ ├── 3-passes.sgf
│ ├── 4-passes.sgf
│ ├── 5-passes.sgf
│ ├── 9x9_1.sgf
│ ├── 9x9_2.sgf
│ ├── Anonymous vs. Fuego 1.sgf
│ ├── annotations.sgf
│ ├── game_050.sgf
│ ├── gameinfo.sgf
│ ├── illegal-board-setup-test.sgf
│ ├── node-tree-view.sgf
│ ├── non-alternating-play.sgf
│ ├── seki-9b.sgf
│ └── setup-variations.sgf
├── Famous games
│ ├── Blood-vomiting game.sgf
│ ├── Ear-reddening game.sgf
│ └── Lee's Broken Ladder Game.sgf
├── Illegal games
│ ├── encoding-detection-fails.sgf
│ ├── encoding-multiple.sgf
│ ├── encoding-unsupported.sgf
│ ├── illegal-move.sgf
│ ├── illegal-setup.sgf
│ ├── not-an-sgf-file.sgf
│ ├── not-enough-handicap-stones.sgf
│ ├── positional-superko.sgf
│ ├── setup-after-first-move.sgf
│ ├── setup-before-handicap-setup.sgf
│ ├── setup-player-after-first-move.sgf
│ ├── situational-superko.sgf
│ ├── suicide.sgf
│ └── too-many-moves.sgf
├── README.txt
└── sgfc
│ ├── ff4_ex-rewritten-by-sgfc.sgf
│ ├── ff4_ex.sgf
│ ├── test-reorder.sgf
│ ├── test-strict.sgf
│ └── test.sgf
├── src
├── archive
│ ├── ArchiveGame.h
│ ├── ArchiveGame.m
│ ├── ArchiveUtility.h
│ ├── ArchiveUtility.m
│ ├── ArchiveViewController.h
│ ├── ArchiveViewController.m
│ ├── ArchiveViewModel.h
│ ├── ArchiveViewModel.m
│ ├── GameInfoItem.h
│ ├── GameInfoItem.m
│ ├── GameInfoItemController.h
│ ├── GameInfoItemController.m
│ ├── ViewGameController.h
│ ├── ViewGameController.m
│ ├── ViewLoadResultController.h
│ ├── ViewLoadResultController.m
│ ├── ViewLoadResultMessageController.h
│ └── ViewLoadResultMessageController.m
├── command
│ ├── AsynchronousCommand.h
│ ├── ChangeUIAreaPlayModeCommand.h
│ ├── ChangeUIAreaPlayModeCommand.m
│ ├── Command.h
│ ├── CommandBase.h
│ ├── CommandBase.m
│ ├── CommandProcessor.h
│ ├── CommandProcessor.m
│ ├── HandleDocumentInteractionCommand.h
│ ├── HandleDocumentInteractionCommand.m
│ ├── ResetPlayersAndProfilesCommand.h
│ ├── ResetPlayersAndProfilesCommand.m
│ ├── SetupApplicationCommand.h
│ ├── SetupApplicationCommand.m
│ ├── SetupUserManualCommand.h
│ ├── SetupUserManualCommand.m
│ ├── applicationstate
│ │ ├── RestoreApplicationStateCommand.h
│ │ ├── RestoreApplicationStateCommand.m
│ │ ├── SaveApplicationStateCommand.h
│ │ └── SaveApplicationStateCommand.m
│ ├── backup
│ │ ├── BackupGameToSgfCommand.h
│ │ ├── BackupGameToSgfCommand.m
│ │ ├── CleanBackupSgfCommand.h
│ │ ├── CleanBackupSgfCommand.m
│ │ ├── RestoreGameFromSgfCommand.h
│ │ ├── RestoreGameFromSgfCommand.m
│ │ ├── UnarchiveGameCommand.h
│ │ └── UnarchiveGameCommand.m
│ ├── boardposition
│ │ ├── ChangeAndDiscardCommand.h
│ │ ├── ChangeAndDiscardCommand.m
│ │ ├── ChangeBoardPositionCommand.h
│ │ ├── ChangeBoardPositionCommand.m
│ │ ├── PlayCommand.h
│ │ ├── PlayCommand.m
│ │ ├── SyncGTPEngineCommand.h
│ │ └── SyncGTPEngineCommand.m
│ ├── boardsetup
│ │ ├── DiscardAllSetupCommand.h
│ │ ├── DiscardAllSetupCommand.m
│ │ ├── HandleBoardSetupInteractionCommand.h
│ │ ├── HandleBoardSetupInteractionCommand.m
│ │ ├── SetupFirstMoveColorCommand.h
│ │ └── SetupFirstMoveColorCommand.m
│ ├── diagnostics
│ │ ├── GenerateDiagnosticsInformationFileCommand.h
│ │ ├── GenerateDiagnosticsInformationFileCommand.m
│ │ ├── RestoreBugReportApplicationStateCommand.h
│ │ ├── RestoreBugReportApplicationStateCommand.m
│ │ ├── RestoreBugReportUserDefaultsCommand.h
│ │ └── RestoreBugReportUserDefaultsCommand.m
│ ├── game
│ │ ├── ContinueGameCommand.h
│ │ ├── ContinueGameCommand.m
│ │ ├── DeleteGameCommand.h
│ │ ├── DeleteGameCommand.m
│ │ ├── LoadGameCommand.h
│ │ ├── LoadGameCommand.m
│ │ ├── NewGameCommand.h
│ │ ├── NewGameCommand.m
│ │ ├── PauseGameCommand.h
│ │ ├── PauseGameCommand.m
│ │ ├── RenameGameCommand.h
│ │ ├── RenameGameCommand.m
│ │ ├── ResumePlayCommand.h
│ │ ├── ResumePlayCommand.m
│ │ ├── SaveGameCommand.h
│ │ └── SaveGameCommand.m
│ ├── gtp
│ │ ├── InterruptComputerCommand.h
│ │ ├── InterruptComputerCommand.m
│ │ ├── LoadOpeningBookCommand.h
│ │ ├── LoadOpeningBookCommand.m
│ │ ├── SetAdditiveKnowledgeTypeCommand.h
│ │ └── SetAdditiveKnowledgeTypeCommand.mm
│ ├── markup
│ │ ├── DiscardAllMarkupCommand.h
│ │ ├── DiscardAllMarkupCommand.m
│ │ ├── HandleMarkupEditingInteractionCommand.h
│ │ └── HandleMarkupEditingInteractionCommand.m
│ ├── move
│ │ ├── ComputerPlayMoveCommand.h
│ │ ├── ComputerPlayMoveCommand.m
│ │ ├── ComputerSuggestMoveCommand.h
│ │ ├── ComputerSuggestMoveCommand.m
│ │ ├── PlayMoveCommand.h
│ │ └── PlayMoveCommand.m
│ ├── node
│ │ ├── ChangeAnnotationDataCommand.h
│ │ ├── ChangeAnnotationDataCommand.m
│ │ ├── ChangeGameVariationCommand.h
│ │ ├── ChangeGameVariationCommand.m
│ │ ├── ChangeNodeSelectionAsyncCommand.h
│ │ └── ChangeNodeSelectionAsyncCommand.m
│ ├── playerinfluence
│ │ ├── GenerateTerritoryStatisticsCommand.h
│ │ ├── GenerateTerritoryStatisticsCommand.m
│ │ ├── ToggleTerritoryStatisticsCommand.h
│ │ ├── ToggleTerritoryStatisticsCommand.m
│ │ ├── UpdateTerritoryStatisticsCommand.h
│ │ └── UpdateTerritoryStatisticsCommand.m
│ ├── scoring
│ │ ├── ToggleScoringStateOfStoneGroupCommand.h
│ │ └── ToggleScoringStateOfStoneGroupCommand.m
│ └── sgf
│ │ ├── LoadSgfCommand.h
│ │ ├── LoadSgfCommand.m
│ │ ├── SaveSgfCommand.h
│ │ └── SaveSgfCommand.m
├── diagnostics
│ ├── BugReportUtilities.h
│ ├── BugReportUtilities.m
│ ├── CrashReportingHandler.h
│ ├── CrashReportingHandler.m
│ ├── CrashReportingModel.h
│ ├── CrashReportingModel.m
│ ├── CrashReportingSettingsController.h
│ ├── CrashReportingSettingsController.m
│ ├── DiagnosticsViewController.h
│ ├── DiagnosticsViewController.m
│ ├── GtpCommandModel.h
│ ├── GtpCommandModel.m
│ ├── GtpCommandViewController.h
│ ├── GtpCommandViewController.m
│ ├── GtpLogItem.h
│ ├── GtpLogItem.m
│ ├── GtpLogItemViewController.h
│ ├── GtpLogItemViewController.m
│ ├── GtpLogModel.h
│ ├── GtpLogModel.m
│ ├── GtpLogSettingsController.h
│ ├── GtpLogSettingsController.m
│ ├── GtpLogViewController.h
│ ├── GtpLogViewController.m
│ ├── LoggingModel.h
│ ├── LoggingModel.m
│ ├── SendBugReportController.h
│ ├── SendBugReportController.m
│ ├── SubmitGtpCommandViewController.h
│ └── SubmitGtpCommandViewController.m
├── go
│ ├── GoBoard.h
│ ├── GoBoard.m
│ ├── GoBoardPosition.h
│ ├── GoBoardPosition.m
│ ├── GoBoardRegion.h
│ ├── GoBoardRegion.m
│ ├── GoGame.h
│ ├── GoGame.m
│ ├── GoGameAdditions.h
│ ├── GoGameDocument.h
│ ├── GoGameDocument.m
│ ├── GoGameRules.h
│ ├── GoGameRules.m
│ ├── GoMove.h
│ ├── GoMove.m
│ ├── GoMoveAdditions.h
│ ├── GoMoveNodeCreationOptions.h
│ ├── GoMoveNodeCreationOptions.m
│ ├── GoNode.h
│ ├── GoNode.m
│ ├── GoNodeAdditions.h
│ ├── GoNodeAnnotation.h
│ ├── GoNodeAnnotation.m
│ ├── GoNodeCreationOptions.h
│ ├── GoNodeCreationOptions.m
│ ├── GoNodeMarkup.h
│ ├── GoNodeMarkup.m
│ ├── GoNodeModel.h
│ ├── GoNodeModel.m
│ ├── GoNodeSetup.h
│ ├── GoNodeSetup.m
│ ├── GoPlayer.h
│ ├── GoPlayer.m
│ ├── GoPoint.h
│ ├── GoPoint.m
│ ├── GoScore.h
│ ├── GoScore.m
│ ├── GoUtilities.h
│ ├── GoUtilities.m
│ ├── GoVertex.h
│ ├── GoVertex.m
│ ├── GoVertexNumeric.h
│ ├── GoVertexNumeric.m
│ ├── GoZobristTable.h
│ └── GoZobristTable.mm
├── gtp
│ ├── GtpClient.h
│ ├── GtpClient.mm
│ ├── GtpCommand.h
│ ├── GtpCommand.m
│ ├── GtpEngine.h
│ ├── GtpEngine.mm
│ ├── GtpResponse.h
│ ├── GtpResponse.m
│ ├── GtpUtilities.h
│ ├── GtpUtilities.m
│ ├── PipeStreamBuffer.cpp
│ └── PipeStreamBuffer.h
├── help
│ ├── UserManualUtilities.h
│ ├── UserManualUtilities.m
│ ├── UserManualViewController.h
│ └── UserManualViewController.m
├── main
│ ├── ApplicationDelegate.h
│ ├── ApplicationDelegate.mm
│ ├── Constants.h
│ ├── Constants.m
│ ├── DocumentViewController.h
│ ├── DocumentViewController.m
│ ├── LicensesViewController.h
│ ├── LicensesViewController.m
│ ├── MagnifyingGlassOwner.h
│ ├── MainTabBarController.h
│ ├── MainTabBarController.m
│ ├── MainUtility.h
│ ├── MainUtility.m
│ ├── Prefix.pch
│ ├── SectionedDocumentViewController.h
│ ├── SectionedDocumentViewController.m
│ ├── UIAreaInfo.h
│ ├── UIAreaInfo.m
│ └── main.m
├── newgame
│ ├── HandicapSelectionController.h
│ ├── HandicapSelectionController.m
│ ├── KomiSelectionController.h
│ ├── KomiSelectionController.m
│ ├── NewGameAdvancedController.h
│ ├── NewGameAdvancedController.m
│ ├── NewGameController.h
│ ├── NewGameController.m
│ ├── NewGameModel.h
│ └── NewGameModel.m
├── play
│ ├── annotationview
│ │ ├── AnnotationViewController.h
│ │ ├── AnnotationViewController.m
│ │ ├── EditEstimatedScoreController.h
│ │ ├── EditEstimatedScoreController.m
│ │ ├── EditNodeDescriptionController.h
│ │ └── EditNodeDescriptionController.m
│ ├── boardposition
│ │ ├── BoardPositionButtonBoxDataSource.h
│ │ ├── BoardPositionButtonBoxDataSource.m
│ │ ├── BoardPositionCollectionViewCell.h
│ │ ├── BoardPositionCollectionViewCell.m
│ │ ├── BoardPositionCollectionViewController.h
│ │ ├── BoardPositionCollectionViewController.m
│ │ ├── BoardPositionNavigationManager.h
│ │ └── BoardPositionNavigationManager.m
│ ├── boardview
│ │ ├── BoardAnimationController.h
│ │ ├── BoardAnimationController.m
│ │ ├── BoardTileView.h
│ │ ├── BoardTileView.m
│ │ ├── BoardView.h
│ │ ├── BoardView.m
│ │ ├── BoardViewAccessibility.h
│ │ ├── BoardViewAccessibility.m
│ │ ├── BoardViewController.h
│ │ ├── BoardViewController.m
│ │ ├── CoordinateLabelsTileView.h
│ │ ├── CoordinateLabelsTileView.m
│ │ ├── StoneView.h
│ │ ├── StoneView.m
│ │ └── layer
│ │ │ ├── BoardViewCGLayerCache.h
│ │ │ ├── BoardViewCGLayerCache.m
│ │ │ ├── BoardViewDrawingHelper.h
│ │ │ ├── BoardViewDrawingHelper.m
│ │ │ ├── BoardViewLayerDelegate.h
│ │ │ ├── BoardViewLayerDelegateBase.h
│ │ │ ├── BoardViewLayerDelegateBase.m
│ │ │ ├── CoordinatesLayerDelegate.h
│ │ │ ├── CoordinatesLayerDelegate.m
│ │ │ ├── CrossHairLinesLayerDelegate.h
│ │ │ ├── CrossHairLinesLayerDelegate.m
│ │ │ ├── GridLayerDelegate.h
│ │ │ ├── GridLayerDelegate.m
│ │ │ ├── InfluenceLayerDelegate.h
│ │ │ ├── InfluenceLayerDelegate.m
│ │ │ ├── LabelsLayerDelegate.h
│ │ │ ├── LabelsLayerDelegate.m
│ │ │ ├── RectangleLayerDelegate.h
│ │ │ ├── RectangleLayerDelegate.m
│ │ │ ├── StonesLayerDelegate.h
│ │ │ ├── StonesLayerDelegate.m
│ │ │ ├── SymbolsLayerDelegate.h
│ │ │ ├── SymbolsLayerDelegate.m
│ │ │ ├── TerritoryLayerDelegate.h
│ │ │ └── TerritoryLayerDelegate.m
│ ├── controller
│ │ ├── AutoLayoutConstraintHelper.h
│ │ ├── AutoLayoutConstraintHelper.m
│ │ ├── DiscardFutureNodesAlertController.h
│ │ ├── DiscardFutureNodesAlertController.m
│ │ ├── GameInfoViewController.h
│ │ ├── GameInfoViewController.m
│ │ ├── MoreGameActionsController.h
│ │ ├── MoreGameActionsController.m
│ │ ├── SoundHandling.h
│ │ ├── SoundHandling.m
│ │ ├── StatusViewController.h
│ │ └── StatusViewController.m
│ ├── gameaction
│ │ ├── GameActionButtonBoxDataSource.h
│ │ ├── GameActionButtonBoxDataSource.m
│ │ ├── GameActionManager.h
│ │ └── GameActionManager.m
│ ├── gesture
│ │ ├── BoardViewTapGestureController.h
│ │ ├── BoardViewTapGestureController.m
│ │ ├── DoubleTapGestureController.h
│ │ ├── DoubleTapGestureController.m
│ │ ├── PanGestureController.h
│ │ ├── PanGestureController.m
│ │ ├── TwoFingerTapGestureController.h
│ │ ├── TwoFingerTapGestureController.m
│ │ └── handler
│ │ │ ├── EraseMarkupInRectanglePanGestureHandler.h
│ │ │ ├── EraseMarkupInRectanglePanGestureHandler.m
│ │ │ ├── MoveMarkupPanGestureHandler.h
│ │ │ ├── MoveMarkupPanGestureHandler.m
│ │ │ ├── PanGestureHandler.h
│ │ │ ├── PanGestureHandler.m
│ │ │ ├── PlaceMarkupConnectionPanGestureHandler.h
│ │ │ ├── PlaceMarkupConnectionPanGestureHandler.m
│ │ │ ├── PlayStonePanGestureHandler.h
│ │ │ └── PlayStonePanGestureHandler.m
│ ├── model
│ │ ├── BoardPositionModel.h
│ │ ├── BoardPositionModel.m
│ │ ├── BoardSetupModel.h
│ │ ├── BoardSetupModel.m
│ │ ├── BoardViewIntersection.h
│ │ ├── BoardViewIntersection.m
│ │ ├── BoardViewMetrics.h
│ │ ├── BoardViewMetrics.m
│ │ ├── BoardViewModel.h
│ │ ├── BoardViewModel.m
│ │ ├── GameVariationModel.h
│ │ ├── GameVariationModel.m
│ │ ├── MarkupModel.h
│ │ ├── MarkupModel.m
│ │ ├── NavigationBarButtonModel.h
│ │ ├── NavigationBarButtonModel.m
│ │ ├── NodeTreeViewModel.h
│ │ ├── NodeTreeViewModel.m
│ │ ├── ScoringModel.h
│ │ └── ScoringModel.m
│ ├── nodetreeview
│ │ ├── NodeNumbersTileView.h
│ │ ├── NodeNumbersTileView.m
│ │ ├── NodeNumbersView.h
│ │ ├── NodeNumbersView.m
│ │ ├── NodeTreeTileView.h
│ │ ├── NodeTreeTileView.m
│ │ ├── NodeTreeView.h
│ │ ├── NodeTreeView.m
│ │ ├── NodeTreeViewController.h
│ │ ├── NodeTreeViewController.m
│ │ ├── NodeTreeViewIntegration.h
│ │ ├── NodeTreeViewIntegration.m
│ │ ├── NodeTreeViewMetrics.h
│ │ ├── NodeTreeViewMetrics.m
│ │ ├── NodeTreeViewMetricsUpdater.h
│ │ ├── NodeTreeViewMetricsUpdater.m
│ │ ├── NodeTreeViewTapGestureController.h
│ │ ├── NodeTreeViewTapGestureController.m
│ │ ├── canvas
│ │ │ ├── NodeNumbersViewCell.h
│ │ │ ├── NodeNumbersViewCell.m
│ │ │ ├── NodeTreeViewBranch.h
│ │ │ ├── NodeTreeViewBranch.m
│ │ │ ├── NodeTreeViewBranchTuple.h
│ │ │ ├── NodeTreeViewBranchTuple.m
│ │ │ ├── NodeTreeViewCanvas.h
│ │ │ ├── NodeTreeViewCanvas.m
│ │ │ ├── NodeTreeViewCanvasAdditions.h
│ │ │ ├── NodeTreeViewCanvasData.h
│ │ │ ├── NodeTreeViewCanvasData.m
│ │ │ ├── NodeTreeViewCanvasDataProvider.h
│ │ │ ├── NodeTreeViewCell.h
│ │ │ ├── NodeTreeViewCell.m
│ │ │ ├── NodeTreeViewCellPosition.h
│ │ │ └── NodeTreeViewCellPosition.m
│ │ └── layer
│ │ │ ├── LinesLayerDelegate.h
│ │ │ ├── LinesLayerDelegate.m
│ │ │ ├── NodeNumbersLayerDelegate.h
│ │ │ ├── NodeNumbersLayerDelegate.m
│ │ │ ├── NodeSymbolLayerDelegate.h
│ │ │ ├── NodeSymbolLayerDelegate.m
│ │ │ ├── NodeTreeViewCGLayerCache.h
│ │ │ ├── NodeTreeViewCGLayerCache.m
│ │ │ ├── NodeTreeViewDrawingHelper.h
│ │ │ ├── NodeTreeViewDrawingHelper.m
│ │ │ ├── NodeTreeViewLayerDelegate.h
│ │ │ ├── NodeTreeViewLayerDelegateBase.h
│ │ │ ├── NodeTreeViewLayerDelegateBase.m
│ │ │ ├── SelectedNodeLayerDelegate.h
│ │ │ └── SelectedNodeLayerDelegate.m
│ ├── rootview
│ │ ├── PlayRootViewController.h
│ │ ├── PlayRootViewController.m
│ │ ├── PlayRootViewControllerPhoneAndPad.h
│ │ ├── PlayRootViewControllerPhoneAndPad.m
│ │ ├── PlayRootViewControllerPhonePortraitOnly.h
│ │ ├── PlayRootViewControllerPhonePortraitOnly.m
│ │ ├── PlayRootViewNavigationController.h
│ │ └── PlayRootViewNavigationController.m
│ └── splitview
│ │ ├── LeftPaneViewController.h
│ │ ├── LeftPaneViewController.m
│ │ ├── RightPaneViewController.h
│ │ └── RightPaneViewController.m
├── player
│ ├── GtpEngineProfile.h
│ ├── GtpEngineProfile.m
│ ├── GtpEngineProfileModel.h
│ ├── GtpEngineProfileModel.m
│ ├── Player.h
│ ├── Player.m
│ ├── PlayerModel.h
│ ├── PlayerModel.m
│ ├── PlayerStatistics.h
│ └── PlayerStatistics.m
├── settings
│ ├── BoardPositionSettingsController.h
│ ├── BoardPositionSettingsController.m
│ ├── BoardSetupSettingsController.h
│ ├── BoardSetupSettingsController.m
│ ├── ComputerAssistanceSettingsController.h
│ ├── ComputerAssistanceSettingsController.m
│ ├── DisplaySettingsController.h
│ ├── DisplaySettingsController.m
│ ├── EditPlayerProfileController.h
│ ├── EditPlayerProfileController.m
│ ├── EditPlayingStrengthSettingsController.h
│ ├── EditPlayingStrengthSettingsController.m
│ ├── EditResignBehaviourSettingsController.h
│ ├── EditResignBehaviourSettingsController.m
│ ├── GameVariationSettingsController.h
│ ├── GameVariationSettingsController.m
│ ├── MagnifyingGlassSettingsController.h
│ ├── MagnifyingGlassSettingsController.m
│ ├── MarkupSettingsController.h
│ ├── MarkupSettingsController.m
│ ├── MaxMemoryController.h
│ ├── MaxMemoryController.m
│ ├── NodeTreeViewSettingsController.h
│ ├── NodeTreeViewSettingsController.m
│ ├── PlayerProfileSettingsController.h
│ ├── PlayerProfileSettingsController.m
│ ├── ScoringSettingsController.h
│ ├── ScoringSettingsController.m
│ ├── SettingsViewController.h
│ ├── SettingsViewController.m
│ ├── SgfDisabledMessagesController.h
│ ├── SgfDisabledMessagesController.m
│ ├── SgfSettingsController.h
│ ├── SgfSettingsController.m
│ ├── SgfSyntaxCheckingLevelSettingsController.h
│ ├── SgfSyntaxCheckingLevelSettingsController.m
│ ├── SoundSettingsController.h
│ └── SoundSettingsController.m
├── sgf
│ ├── SgfSettingsModel.h
│ ├── SgfSettingsModel.m
│ ├── SgfUtilities.h
│ └── SgfUtilities.m
├── shared
│ ├── ApplicationStateManager.h
│ ├── ApplicationStateManager.m
│ ├── LayoutManager.h
│ ├── LayoutManager.m
│ ├── LongRunningActionCounter.h
│ └── LongRunningActionCounter.m
├── ui
│ ├── AutoLayoutUtility.h
│ ├── AutoLayoutUtility.m
│ ├── ButtonBoxCell.h
│ ├── ButtonBoxCell.m
│ ├── ButtonBoxController.h
│ ├── ButtonBoxController.m
│ ├── CGDrawingHelper.h
│ ├── CGDrawingHelper.m
│ ├── EditTextController.h
│ ├── EditTextController.m
│ ├── GoDrawingHelper.h
│ ├── GoDrawingHelper.m
│ ├── ItemPickerController.h
│ ├── ItemPickerController.m
│ ├── KeyboardHeightAdjustment.h
│ ├── KeyboardHeightAdjustment.m
│ ├── MagnifyingView.h
│ ├── MagnifyingView.m
│ ├── MagnifyingViewController.h
│ ├── MagnifyingViewController.m
│ ├── MagnifyingViewModel.h
│ ├── MagnifyingViewModel.m
│ ├── OrientationChangeNotifyingView.h
│ ├── OrientationChangeNotifyingView.m
│ ├── PageViewController.h
│ ├── PageViewController.m
│ ├── PlaceholderView.h
│ ├── PlaceholderView.m
│ ├── ResizableStackViewController.h
│ ├── ResizableStackViewController.m
│ ├── SliderInputController.h
│ ├── SliderInputController.m
│ ├── SpacerView.h
│ ├── SpacerView.m
│ ├── SplitViewController.h
│ ├── SplitViewController.m
│ ├── StaticTableView.h
│ ├── StaticTableView.m
│ ├── TableViewCellFactory.h
│ ├── TableViewCellFactory.m
│ ├── TableViewGridCell.h
│ ├── TableViewGridCell.m
│ ├── TableViewSliderCell.h
│ ├── TableViewSliderCell.m
│ ├── TableViewVariableHeightCell.h
│ ├── TableViewVariableHeightCell.m
│ ├── Tile.h
│ ├── TiledScrollView.h
│ ├── TiledScrollView.m
│ ├── UIViewControllerAdditions.h
│ ├── UIViewControllerAdditions.m
│ ├── UiElementMetrics.h
│ ├── UiElementMetrics.m
│ ├── UiSettingsModel.h
│ ├── UiSettingsModel.m
│ ├── UiUtilities.h
│ ├── UiUtilities.m
│ ├── WebBrowserViewController.h
│ └── WebBrowserViewController.m
└── utility
│ ├── AccessibilityUtility.h
│ ├── AccessibilityUtility.m
│ ├── DocumentGenerator.h
│ ├── DocumentGenerator.m
│ ├── ExceptionUtility.h
│ ├── ExceptionUtility.m
│ ├── FontRange.h
│ ├── FontRange.m
│ ├── LogFormatter.h
│ ├── LogFormatter.m
│ ├── MarkupUtilities.h
│ ├── MarkupUtilities.mm
│ ├── NSArrayAdditions.h
│ ├── NSArrayAdditions.m
│ ├── NSObjectAdditions.h
│ ├── NSObjectAdditions.m
│ ├── NSStringAdditions.h
│ ├── NSStringAdditions.m
│ ├── PathUtilities.h
│ ├── PathUtilities.m
│ ├── UIColorAdditions.h
│ ├── UIColorAdditions.m
│ ├── UIDebugging.h
│ ├── UIDebugging.m
│ ├── UIDeviceAdditions.h
│ ├── UIDeviceAdditions.m
│ ├── UIImageAdditions.h
│ ├── UIImageAdditions.m
│ ├── UserDefaultsUpdater.h
│ ├── UserDefaultsUpdater.m
│ ├── VersionInfoUtilities.h
│ └── VersionInfoUtilities.m
├── test
├── resource
│ └── Info.plist
└── src
│ ├── BaseTestCase.h
│ ├── BaseTestCase.m
│ ├── GoBoardPositionTest.h
│ ├── GoBoardPositionTest.m
│ ├── GoBoardRegionTest.h
│ ├── GoBoardRegionTest.m
│ ├── GoBoardTest.h
│ ├── GoBoardTest.m
│ ├── GoGameRulesTest.h
│ ├── GoGameRulesTest.m
│ ├── GoGameTest.h
│ ├── GoGameTest.m
│ ├── GoMoveTest.h
│ ├── GoMoveTest.m
│ ├── GoNodeAnnotationTest.h
│ ├── GoNodeAnnotationTest.m
│ ├── GoNodeMarkupTest.h
│ ├── GoNodeMarkupTest.m
│ ├── GoNodeModelTest.h
│ ├── GoNodeModelTest.m
│ ├── GoNodeSetupTest.h
│ ├── GoNodeSetupTest.m
│ ├── GoNodeTest.h
│ ├── GoNodeTest.m
│ ├── GoPlayerTest.h
│ ├── GoPlayerTest.m
│ ├── GoPointTest.h
│ ├── GoPointTest.m
│ ├── GoVertexTest.h
│ ├── GoVertexTest.m
│ ├── GoZobristTableTest.h
│ ├── GoZobristTableTest.m
│ ├── NodeTreeViewCanvasTest.h
│ ├── NodeTreeViewCanvasTest.m
│ ├── NodeTreeViewLayerDelegateBaseTest.h
│ └── NodeTreeViewLayerDelegateBaseTest.m
└── uitest
├── Info.plist
├── PortraitBasicTest.m
├── UiElementFinder.h
├── UiElementFinder.m
├── UiTestDeviceInfo.h
├── UiTestDeviceInfo.m
├── UiTestHelper.h
└── UiTestHelper.m
/.gitignore:
--------------------------------------------------------------------------------
1 | # Build products
2 | DerivedData/
3 | build/
4 | doxygen/html
5 |
6 | # Xcode workspace
7 | Little Go.xcworkspace/xcuserdata
8 |
9 | # Xcode project
10 | Little Go.xcodeproj/*.pbxuser
11 | Little Go.xcodeproj/*.mode1v3
12 | Little Go.xcodeproj/xcuserdata
13 | # Xcode creates this hidden workspace when someone opens just the
14 | # project (top-level .xcodeproj folder) instead of the workspace
15 | # (top-level .xcworkspace folder). Because the hidden workspace never
16 | # contains anything but the enclosing project, it can be safely ignored.
17 | Little Go.xcodeproj/project.xcworkspace
18 |
19 | # Firebase/Crashlytics files
20 | GoogleService-Info.plist
21 |
22 | # CocoaPods files
23 | Pods/
24 |
25 | # Folders for local/manual storage of beta test .ipa bundles,
26 | # crash reports and bug reports
27 | dist/
28 | crash/
29 | bugreport/
30 |
31 | # Other files
32 | 3rdparty/src/usermanual/
33 | 3rdparty/install/
34 | .DS_Store
35 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "3rdparty/src/fuego-on-ios"]
2 | path = 3rdparty/src/fuego-on-ios
3 | url = git@github.com:herzbube/fuego-on-ios.git
4 | [submodule "3rdparty/src/SgfcKit"]
5 | path = 3rdparty/src/SgfcKit
6 | url = https://github.com/herzbube/SgfcKit
7 |
--------------------------------------------------------------------------------
/3rdparty/src/usermanual/.placeholder:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/3rdparty/src/usermanual/.placeholder
--------------------------------------------------------------------------------
/AUTHORS:
--------------------------------------------------------------------------------
1 | Principal authors
2 | -----------------
3 | Patrick Näf
4 |
5 |
6 | Contributors
7 | ------------
8 | Dan Hassin (in-app usability improvements, make the software build simpler for new contributors)
9 |
10 |
--------------------------------------------------------------------------------
/Little Go.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Little Go.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/doc/Class diagram of packages go + player.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/doc/Class diagram of packages go + player.jpg
--------------------------------------------------------------------------------
/doc/littlego.asta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/doc/littlego.asta
--------------------------------------------------------------------------------
/resource/icon/about/about.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/about/about.png
--------------------------------------------------------------------------------
/resource/icon/about/about@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/about/about@2x.png
--------------------------------------------------------------------------------
/resource/icon/about/about@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/about/about@3x.png
--------------------------------------------------------------------------------
/resource/icon/about/noun_55404_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/archive/archive.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/archive/archive.png
--------------------------------------------------------------------------------
/resource/icon/archive/archive@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/archive/archive@2x.png
--------------------------------------------------------------------------------
/resource/icon/archive/archive@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/archive/archive@3x.png
--------------------------------------------------------------------------------
/resource/icon/changelog/changelog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/changelog/changelog.png
--------------------------------------------------------------------------------
/resource/icon/changelog/changelog@2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/changelog/changelog@2.png
--------------------------------------------------------------------------------
/resource/icon/changelog/changelog@3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/changelog/changelog@3.png
--------------------------------------------------------------------------------
/resource/icon/changelog/noun_Changelog_365219.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/computer-play/computer-play.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/computer-play/computer-play.png
--------------------------------------------------------------------------------
/resource/icon/computer-play/computer-play@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/computer-play/computer-play@2x.png
--------------------------------------------------------------------------------
/resource/icon/computer-play/computer-play@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/computer-play/computer-play@3x.png
--------------------------------------------------------------------------------
/resource/icon/computer-play/noun_123922_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/computer-play/noun_2873_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/computer-suggest-move/computer-suggest-move.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/computer-suggest-move/computer-suggest-move.png
--------------------------------------------------------------------------------
/resource/icon/computer-suggest-move/computer-suggest-move@2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/computer-suggest-move/computer-suggest-move@2.png
--------------------------------------------------------------------------------
/resource/icon/computer-suggest-move/computer-suggest-move@3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/computer-suggest-move/computer-suggest-move@3.png
--------------------------------------------------------------------------------
/resource/icon/continue/continue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/continue/continue.png
--------------------------------------------------------------------------------
/resource/icon/continue/continue.svg:
--------------------------------------------------------------------------------
1 |
2 |
49 |
--------------------------------------------------------------------------------
/resource/icon/continue/continue@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/continue/continue@2x.png
--------------------------------------------------------------------------------
/resource/icon/continue/continue@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/continue/continue@3x.png
--------------------------------------------------------------------------------
/resource/icon/credits/credits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/credits/credits.png
--------------------------------------------------------------------------------
/resource/icon/credits/credits@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/credits/credits@2x.png
--------------------------------------------------------------------------------
/resource/icon/credits/credits@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/credits/credits@3x.png
--------------------------------------------------------------------------------
/resource/icon/diagnostics/diagnostics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/diagnostics/diagnostics.png
--------------------------------------------------------------------------------
/resource/icon/diagnostics/diagnostics@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/diagnostics/diagnostics@2x.png
--------------------------------------------------------------------------------
/resource/icon/diagnostics/diagnostics@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/diagnostics/diagnostics@3x.png
--------------------------------------------------------------------------------
/resource/icon/discard/discard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/discard/discard.png
--------------------------------------------------------------------------------
/resource/icon/discard/discard@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/discard/discard@2x.png
--------------------------------------------------------------------------------
/resource/icon/discard/discard@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/discard/discard@3x.png
--------------------------------------------------------------------------------
/resource/icon/discard/noun_3715.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/dot-symbol/dot-symbol.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/dot-symbol/dot-symbol.png
--------------------------------------------------------------------------------
/resource/icon/dot-symbol/dot-symbol@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/dot-symbol/dot-symbol@2x.png
--------------------------------------------------------------------------------
/resource/icon/dot-symbol/dot-symbol@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/dot-symbol/dot-symbol@3x.png
--------------------------------------------------------------------------------
/resource/icon/doubtful/doubtful.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/doubtful/doubtful.png
--------------------------------------------------------------------------------
/resource/icon/doubtful/doubtful@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/doubtful/doubtful@2x.png
--------------------------------------------------------------------------------
/resource/icon/doubtful/doubtful@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/doubtful/doubtful@3x.png
--------------------------------------------------------------------------------
/resource/icon/edit/edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/edit/edit.png
--------------------------------------------------------------------------------
/resource/icon/edit/edit@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/edit/edit@2x.png
--------------------------------------------------------------------------------
/resource/icon/edit/edit@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/edit/edit@3x.png
--------------------------------------------------------------------------------
/resource/icon/game-info/game-info.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-info/game-info.png
--------------------------------------------------------------------------------
/resource/icon/game-info/game-info@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-info/game-info@2x.png
--------------------------------------------------------------------------------
/resource/icon/game-info/game-info@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-info/game-info@3x.png
--------------------------------------------------------------------------------
/resource/icon/game-info/noun_50837_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/game-types/computer-vs-computer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/computer-vs-computer.png
--------------------------------------------------------------------------------
/resource/icon/game-types/computer-vs-computer@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/computer-vs-computer@2x.png
--------------------------------------------------------------------------------
/resource/icon/game-types/computer-vs-computer@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/computer-vs-computer@3x.png
--------------------------------------------------------------------------------
/resource/icon/game-types/human-vs-computer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/human-vs-computer.png
--------------------------------------------------------------------------------
/resource/icon/game-types/human-vs-computer@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/human-vs-computer@2x.png
--------------------------------------------------------------------------------
/resource/icon/game-types/human-vs-computer@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/human-vs-computer@3x.png
--------------------------------------------------------------------------------
/resource/icon/game-types/human-vs-human.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/human-vs-human.png
--------------------------------------------------------------------------------
/resource/icon/game-types/human-vs-human@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/human-vs-human@2x.png
--------------------------------------------------------------------------------
/resource/icon/game-types/human-vs-human@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/game-types/human-vs-human@3x.png
--------------------------------------------------------------------------------
/resource/icon/game-types/noun_17845_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/go-motifs/nounproject-originals/noun_go_181272.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/go-motifs/nounproject-originals/noun_go_181273.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/go-motifs/nounproject-originals/noun_go_181276.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/go-motifs/nounproject-originals/noun_go_181277.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/go-motifs/nounproject-originals/noun_go_181279.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-black-and-white-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-black-and-white-icon.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-black-and-white-icon@2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-black-and-white-icon@2.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-black-and-white-icon@3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-black-and-white-icon@3.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-black-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-black-icon.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-black-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-black-icon@2x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-black-icon@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-black-icon@3x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-white-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-white-icon.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-white-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-white-icon@2x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stone-white-icon@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stone-white-icon@3x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-black-and-white-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-black-and-white-icon.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-black-and-white-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-black-and-white-icon@2x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-black-and-white-icon@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-black-and-white-icon@3x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-black-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-black-icon.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-black-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-black-icon@2x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-black-icon@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-black-icon@3x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-white-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-white-icon.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-white-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-white-icon@2x.png
--------------------------------------------------------------------------------
/resource/icon/go-motifs/stones-overlapping-white-icon@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/go-motifs/stones-overlapping-white-icon@3x.png
--------------------------------------------------------------------------------
/resource/icon/gogrid2x2/gogrid2x2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/gogrid2x2/gogrid2x2.png
--------------------------------------------------------------------------------
/resource/icon/gogrid2x2/gogrid2x2@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/gogrid2x2/gogrid2x2@2x.png
--------------------------------------------------------------------------------
/resource/icon/gogrid2x2/gogrid2x2@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/gogrid2x2/gogrid2x2@3x.png
--------------------------------------------------------------------------------
/resource/icon/help/help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/help/help.png
--------------------------------------------------------------------------------
/resource/icon/help/help@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/help/help@2x.png
--------------------------------------------------------------------------------
/resource/icon/help/help@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/help/help@3x.png
--------------------------------------------------------------------------------
/resource/icon/hotspot/hotspot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/hotspot/hotspot.png
--------------------------------------------------------------------------------
/resource/icon/hotspot/hotspot@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/hotspot/hotspot@2x.png
--------------------------------------------------------------------------------
/resource/icon/hotspot/hotspot@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/hotspot/hotspot@3x.png
--------------------------------------------------------------------------------
/resource/icon/interesting/interesting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/interesting/interesting.png
--------------------------------------------------------------------------------
/resource/icon/interesting/interesting@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/interesting/interesting@2x.png
--------------------------------------------------------------------------------
/resource/icon/interesting/interesting@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/interesting/interesting@3x.png
--------------------------------------------------------------------------------
/resource/icon/interrupt/interrupt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/interrupt/interrupt.png
--------------------------------------------------------------------------------
/resource/icon/interrupt/interrupt@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/interrupt/interrupt@2x.png
--------------------------------------------------------------------------------
/resource/icon/interrupt/interrupt@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/interrupt/interrupt@3x.png
--------------------------------------------------------------------------------
/resource/icon/licenses/licenses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/licenses/licenses.png
--------------------------------------------------------------------------------
/resource/icon/licenses/licenses@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/licenses/licenses@2x.png
--------------------------------------------------------------------------------
/resource/icon/licenses/licenses@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/licenses/licenses@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/arrow.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/arrow@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/arrow@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/arrow@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/arrow@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/check-mark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/check-mark.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/check-mark@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/check-mark@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/check-mark@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/check-mark@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/circle.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/circle@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/circle@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/circle@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/circle@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/cross-mark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/cross-mark.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/cross-mark@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/cross-mark@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/cross-mark@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/cross-mark@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/label.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/label.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/label@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/label@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/label@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/label@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/letter-marker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/letter-marker.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/letter-marker@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/letter-marker@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/letter-marker@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/letter-marker@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/line.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/line.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/line@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/line@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/line@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/line@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/nounproject-originals/noun-circle-4148559.svg:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/resource/icon/markup-types/nounproject-originals/noun-detail-4148592.svg:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/resource/icon/markup-types/nounproject-originals/noun-square-4148585.svg:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/resource/icon/markup-types/number-marker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/number-marker.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/number-marker@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/number-marker@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/number-marker@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/number-marker@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/square.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/square.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/square@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/square@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/square@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/square@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/triangle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/triangle.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/triangle@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/triangle@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup-types/triangle@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup-types/triangle@3x.png
--------------------------------------------------------------------------------
/resource/icon/markup/markup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup/markup.png
--------------------------------------------------------------------------------
/resource/icon/markup/markup@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup/markup@2x.png
--------------------------------------------------------------------------------
/resource/icon/markup/markup@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/markup/markup@3x.png
--------------------------------------------------------------------------------
/resource/icon/menu/menu-hamburger/menu-hamburger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/menu/menu-hamburger/menu-hamburger.png
--------------------------------------------------------------------------------
/resource/icon/menu/menu-hamburger/menu-hamburger@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/menu/menu-hamburger/menu-hamburger@2x.png
--------------------------------------------------------------------------------
/resource/icon/menu/menu-hamburger/menu-hamburger@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/menu/menu-hamburger/menu-hamburger@3x.png
--------------------------------------------------------------------------------
/resource/icon/menu/menu-hamburger/noun_36901_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/more-game-actions/more-game-actions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/more-game-actions/more-game-actions.png
--------------------------------------------------------------------------------
/resource/icon/more-game-actions/more-game-actions@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/more-game-actions/more-game-actions@2x.png
--------------------------------------------------------------------------------
/resource/icon/more-game-actions/more-game-actions@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/more-game-actions/more-game-actions@3x.png
--------------------------------------------------------------------------------
/resource/icon/more-game-actions/more-game-actons.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/more-game-actions/noun_61422.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/navigation/back.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/back.png
--------------------------------------------------------------------------------
/resource/icon/navigation/back@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/back@2x.png
--------------------------------------------------------------------------------
/resource/icon/navigation/back@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/back@3x.png
--------------------------------------------------------------------------------
/resource/icon/navigation/forward.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/forward.png
--------------------------------------------------------------------------------
/resource/icon/navigation/forward@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/forward@2x.png
--------------------------------------------------------------------------------
/resource/icon/navigation/forward@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/forward@3x.png
--------------------------------------------------------------------------------
/resource/icon/navigation/forwardtoend.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/forwardtoend.png
--------------------------------------------------------------------------------
/resource/icon/navigation/forwardtoend@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/forwardtoend@2x.png
--------------------------------------------------------------------------------
/resource/icon/navigation/forwardtoend@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/forwardtoend@3x.png
--------------------------------------------------------------------------------
/resource/icon/navigation/noun_45526_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/navigation/rewindtostart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/rewindtostart.png
--------------------------------------------------------------------------------
/resource/icon/navigation/rewindtostart@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/rewindtostart@2x.png
--------------------------------------------------------------------------------
/resource/icon/navigation/rewindtostart@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/navigation/rewindtostart@3x.png
--------------------------------------------------------------------------------
/resource/icon/node-tree/node-sequence.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/node-tree/node-sequence.png
--------------------------------------------------------------------------------
/resource/icon/node-tree/node-sequence@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/node-tree/node-sequence@2x.png
--------------------------------------------------------------------------------
/resource/icon/node-tree/node-sequence@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/node-tree/node-sequence@3x.png
--------------------------------------------------------------------------------
/resource/icon/node-tree/node-tree-small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/node-tree/node-tree-small.png
--------------------------------------------------------------------------------
/resource/icon/node-tree/node-tree-small@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/node-tree/node-tree-small@2x.png
--------------------------------------------------------------------------------
/resource/icon/node-tree/node-tree-small@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/node-tree/node-tree-small@3x.png
--------------------------------------------------------------------------------
/resource/icon/none/none.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/none/none.png
--------------------------------------------------------------------------------
/resource/icon/none/none@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/none/none@2x.png
--------------------------------------------------------------------------------
/resource/icon/none/none@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/none/none@3x.png
--------------------------------------------------------------------------------
/resource/icon/pass/noun_10554_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/pass/pass.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/pass/pass.png
--------------------------------------------------------------------------------
/resource/icon/pass/pass.svg:
--------------------------------------------------------------------------------
1 |
2 |
56 |
--------------------------------------------------------------------------------
/resource/icon/pass/pass@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/pass/pass@2x.png
--------------------------------------------------------------------------------
/resource/icon/pass/pass@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/pass/pass@3x.png
--------------------------------------------------------------------------------
/resource/icon/pause/noun_2866_cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resource/icon/pause/pause.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/pause/pause.png
--------------------------------------------------------------------------------
/resource/icon/pause/pause.svg:
--------------------------------------------------------------------------------
1 |
2 |
52 |
--------------------------------------------------------------------------------
/resource/icon/pause/pause@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/pause/pause@2x.png
--------------------------------------------------------------------------------
/resource/icon/pause/pause@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/pause/pause@3x.png
--------------------------------------------------------------------------------
/resource/icon/position-valuation/unclear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/position-valuation/unclear.png
--------------------------------------------------------------------------------
/resource/icon/position-valuation/unclear@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/position-valuation/unclear@2x.png
--------------------------------------------------------------------------------
/resource/icon/position-valuation/unclear@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/position-valuation/unclear@3x.png
--------------------------------------------------------------------------------
/resource/icon/position-valuation/very-unclear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/position-valuation/very-unclear.png
--------------------------------------------------------------------------------
/resource/icon/position-valuation/very-unclear@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/position-valuation/very-unclear@2x.png
--------------------------------------------------------------------------------
/resource/icon/position-valuation/very-unclear@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/position-valuation/very-unclear@3x.png
--------------------------------------------------------------------------------
/resource/icon/scoring/scoring.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/scoring/scoring.png
--------------------------------------------------------------------------------
/resource/icon/scoring/scoring@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/scoring/scoring@2x.png
--------------------------------------------------------------------------------
/resource/icon/scoring/scoring@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/scoring/scoring@3x.png
--------------------------------------------------------------------------------
/resource/icon/settings/settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/settings/settings.png
--------------------------------------------------------------------------------
/resource/icon/settings/settings@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/settings/settings@2x.png
--------------------------------------------------------------------------------
/resource/icon/settings/settings@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/settings/settings@3x.png
--------------------------------------------------------------------------------
/resource/icon/source-code/source-code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/source-code/source-code.png
--------------------------------------------------------------------------------
/resource/icon/source-code/source-code@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/source-code/source-code@2x.png
--------------------------------------------------------------------------------
/resource/icon/source-code/source-code@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/source-code/source-code@3x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/bad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/bad.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/bad@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/bad@2x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/bad@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/bad@3x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/good.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/good.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/good@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/good@2x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/good@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/good@3x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/very-bad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/very-bad.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/very-bad@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/very-bad@2x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/very-bad@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/very-bad@3x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/very-good.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/very-good.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/very-good@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/very-good@2x.png
--------------------------------------------------------------------------------
/resource/icon/thumbs-up-down/very-good@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/thumbs-up-down/very-good@3x.png
--------------------------------------------------------------------------------
/resource/icon/trashcan/noun-trash-428421.svg:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/resource/icon/trashcan/trashcan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/trashcan/trashcan.png
--------------------------------------------------------------------------------
/resource/icon/trashcan/trashcan@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/trashcan/trashcan@2x.png
--------------------------------------------------------------------------------
/resource/icon/trashcan/trashcan@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/icon/trashcan/trashcan@3x.png
--------------------------------------------------------------------------------
/resource/image/stones/stone-black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/image/stones/stone-black.png
--------------------------------------------------------------------------------
/resource/image/stones/stone-crosshair.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/image/stones/stone-crosshair.png
--------------------------------------------------------------------------------
/resource/image/stones/stone-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/image/stones/stone-white.png
--------------------------------------------------------------------------------
/resource/image/wooden-background-tile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/image/wooden-background-tile.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/appicon-appstore@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/appicon-appstore@2x.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/appicon-ipad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/appicon-ipad.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/appicon-ipad@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/appicon-ipad@2x.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/appicon-ipadpro@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/appicon-ipadpro@2x.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/appicon-iphone@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/appicon-iphone@2x.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/appicon-iphone@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/appicon-iphone@3x.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/spotlighticon-ipad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/spotlighticon-ipad.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/spotlighticon-ipad@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/spotlighticon-ipad@2x.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/spotlighticon-iphone@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/spotlighticon-iphone@2x.png
--------------------------------------------------------------------------------
/resource/images.xcassets/AppIcon.appiconset/spotlighticon-iphone@3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/images.xcassets/AppIcon.appiconset/spotlighticon-iphone@3.png
--------------------------------------------------------------------------------
/resource/images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/resource/plist/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | keychain-access-groups
6 |
7 | $(AppIdentifierPrefix)$(CFBundleIdentifier)
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/resource/sound/wood-on-wood-01.aiff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/sound/wood-on-wood-01.aiff
--------------------------------------------------------------------------------
/resource/sound/wood-on-wood-12.aiff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/herzbube/littlego/b043b89bf58569d5c0fb3dd94a5be2371efd87e9/resource/sound/wood-on-wood-12.aiff
--------------------------------------------------------------------------------
/resource/text/bug-report-message-template.txt:
--------------------------------------------------------------------------------
1 | Hi,
2 |
3 | I believe I have found a bug in your iOS app Little Go. This is what I have found out about the problem.
4 |
5 | Description: %@
6 |
7 | Steps to reproduce:
8 | %@
9 |
10 | Thanks for having a look at this.
11 |
--------------------------------------------------------------------------------
/script/render-readme.rb:
--------------------------------------------------------------------------------
1 | #/usr/bin/env ruby
2 |
3 | # Run this script with the following command line
4 | # ruby -rubygems script/render-readme.rb >README.html
5 | # in the project's top-level folder. View the resulting README.html in a browser
6 | # to see how GitHub will render README.mediawiki once it has been pushed.
7 | #
8 | # To install the "github/markup" Ruby gem:
9 | # git clone git://github.com/github/markup.git
10 | # cd markup
11 | # gem install github-markup
12 | # gem install wikicloth
13 | #
14 | # See: https://github.com/github/markup
15 |
16 | require 'github/markup'
17 | file = "README.mediawiki"
18 | renderedOutput = GitHub::Markup.render(file, File.read(file))
19 | print renderedOutput
20 |
--------------------------------------------------------------------------------
/sgf/19x19/handicap-7-komi-0-with-pass-moves.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]CA[UTF-8]AP[GoGui:1.4.9]
2 | HA[7]DT[2015-06-08]
3 | AB[dp][pd][dd][pp][jj][dj][pj]PL[W];W[hc];B[ib];W[ic];B[jb];W[jc];B[];W[kb];
4 | B[])
5 |
--------------------------------------------------------------------------------
/sgf/19x19/pu2-gokifu-20110910-Melkisheva_Anastasia-Shikshina_Svetlana.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1]SZ[19]ST[2]CA[UTF-8]AP[SGFC:1.16]GN[Russian Women's Championship 2011]EV[Russian Women's Championship 2011]RO[2 round]PB[Shikshina Svetlana]BR[7d]PW[Melkisheva Anastasia]WR[1d]KM[6.5]DT[2011-09-10]PC[Moscow,Russia]RE[B+Resign]TM[3600]OT[3x30 byo-yomi]RU[Japanese]SO[gokifu.com]WC[ru]BC[ru];B[pd];W[dp];B[fq];W[dc];B[qp];W[op];B[mq];W[qq];B[qm];W[rp];B[pq];W[pp];B[qo];W[pr];B[rq];W[oq];B[rr];W[kq];B[iq];W[mp];B[cn];W[cq];B[eo];W[cl];B[em];W[ci];B[bp];W[bq];B[jc];W[qf];B[re];W[qe];B[qd];W[rf];B[rd];W[qj];B[gc];W[ce];B[lq];W[kp];B[lp];W[lo];B[mo];W[np];B[kr];W[ko];B[jr];W[mn];B[md];W[bo];B[co];W[cp];B[bn];W[ap];B[dk];W[ck];B[io];W[fn];B[en];W[hn];B[in];W[gl];B[fo];W[kc];B[jd];W[mc];B[nc];W[ld];B[mb];W[lc];B[me];W[ke];B[je];W[kf];B[ig];W[mf];B[od];W[ne];B[nd];W[nf];B[of];W[og];B[le];W[kd];B[lf];W[kh];B[lg];W[jf];B[if];W[jh];B[il];W[mh];B[lh];W[kj];B[li];W[ij];B[hk];W[dj];B[qh];W[pi];B[pf];W[rh];B[pg];W[qi];B[fk];W[hd];B[hc];W[he];B[ec];W[eb];B[gf];W[ed];B[fe];W[fc];B[df];W[cf];B[dh];W[ch];B[ki];W[ji];B[jk];W[gi];B[hj];W[hi];B[ej];W[jj];B[ll];W[lk];B[on];W[nn];B[kl];W[mk];B[ml];W[om];B[nk];W[hg];B[hf];W[nj];B[ih];W[mj];B[ii];W[ef];B[eg];W[di];B[ei];W[cg];B[oh];W[nh];B[qg];W[rg];B[ol];W[rl];B[nm];W[nr];B[dr];W[cr];B[qr];W[lm];B[mr];W[oo];B[pn];W[dg];B[kn])
--------------------------------------------------------------------------------
/sgf/25x25/25x25_single_black_move.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]CA[UTF-8]AP[GoGui:1.4.9]SZ[25]
2 | KM[6.5]DT[2015-05-18]
3 | ;B[dd])
4 |
--------------------------------------------------------------------------------
/sgf/7x7/play-b-b7-for-superko.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[7]KM[6.5]
2 | DT[2013-07-26];B[dd];W[dc];B[gf];W[ed];B[ec];W[eb];B[fc];W[cd];B[de]
3 | ;W[cc];B[ef];W[ce];B[bf];W[fb];B[gb];W[fd];B[gd];W[fe];B[ff]
4 | ;W[gc];B[ee];W[cf];B[fc];W[ec];B[fa];W[ea];B[ge];W[bg];B[gc]
5 | ;W[cg];B[db];W[];B[ga];W[];B[da];W[];B[ag];W[];B[af]
6 | ;W[];B[df];W[];B[dg];W[];B[be];W[];B[bd];W[bc];B[ad]
7 | ;W[];B[ac];W[ab];B[cb];W[bb];B[ba];W[ca];B[cb];W[];B[da]
8 | ;W[];B[aa];W[ca])
9 |
--------------------------------------------------------------------------------
/sgf/7x7/seki-9b.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[7]
2 | DT[2013-12-07]KM[6.5];B[ab];W[ac];B[bb];W[bc];B[ba];W[cc];B[cb];W[db]
3 | ;B[dc];W[da];B[ec];W[eb];B[fc];W[fb];B[gc];W[fa];B[gb];W[dd]
4 | ;B[ga];W[cd])
5 |
--------------------------------------------------------------------------------
/sgf/9x9/2-passes.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]KM[6.5]
2 | DT[2015-05-25];B[];W[])
3 |
--------------------------------------------------------------------------------
/sgf/9x9/3-passes.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]KM[6.5]
2 | DT[2015-05-25];B[];W[];B[])
3 |
--------------------------------------------------------------------------------
/sgf/9x9/4-passes.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]KM[6.5]
2 | DT[2015-05-25];B[];W[];B[];W[])
3 |
--------------------------------------------------------------------------------
/sgf/9x9/5-passes.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]KM[6.5]
2 | DT[2015-05-25];B[];W[];B[];W[];B[])
3 |
--------------------------------------------------------------------------------
/sgf/9x9/9x9_2.sgf:
--------------------------------------------------------------------------------
1 | (
2 | ;
3 | SZ[9]
4 | EV[Special event]
5 | RO[2]
6 | PB[Go Seigen]
7 | PW[Miyamoto Naoki]
8 | KM[0]
9 | DT[1968]
10 | PC[Japan]
11 | RE[B+4]
12 | C[This was the second and last game in a two game match on 9x9,
13 | played to try to decide the proper komi for this board size.
14 | ]
15 | ;
16 | B[ee]
17 | ;
18 | W[cc]
19 | ;
20 | B[cd]
21 | ;
22 | W[bd]
23 | ;
24 | B[dc]
25 | ;
26 | W[db]
27 | ;
28 | B[dd]
29 | ;
30 | W[bb]
31 | ;
32 | B[be]
33 | ;
34 | W[fc]
35 | ;
36 | B[ad]
37 | ;
38 | W[bc]
39 | ;
40 | B[gc]
41 | ;
42 | W[fb]
43 | ;
44 | B[fd]
45 | ;
46 | W[eg]
47 | ;
48 | B[dh]
49 | ;
50 | W[dg]
51 | ;
52 | B[cg]
53 | ;
54 | W[eh]
55 | ;
56 | B[gg]
57 | ;
58 | W[ch]
59 | ;
60 | B[bh]
61 | ;
62 | W[di]
63 | ;
64 | B[bg]
65 | ;
66 | W[gh]
67 | ;
68 | B[hh]
69 | ;
70 | W[fg]
71 | ;
72 | B[hg]
73 | ;
74 | W[hi]
75 | ;
76 | B[gb]
77 | ;
78 | W[gf]
79 | ;
80 | B[hf]
81 | ;
82 | W[ge]
83 | ;
84 | B[he]
85 | ;
86 | W[ff]
87 | ;
88 | B[ga]
89 | ;
90 | W[gd]
91 | ;
92 | B[hd]
93 | ;
94 | W[df]
95 | ;
96 | B[cf]
97 | ;
98 | W[fa]
99 | ;
100 | B[ba]
101 | ;
102 | W[cb]
103 | ;
104 | B[da]
105 | ;
106 | W[eb]
107 | ;
108 | B[bi]
109 | ;
110 | W[ci]
111 | ;
112 | B[ac]
113 | ;
114 | W[ab]
115 | ;
116 | B[ae]
117 | ;
118 | W[ca]
119 | ;
120 | B[ih]
121 | ;
122 | )
123 |
--------------------------------------------------------------------------------
/sgf/9x9/Anonymous vs. Fuego 1.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]
2 | DT[2011-12-22]KM[6.5]
3 | PW[GoUctPlayer];B[fb];W[dg])
4 |
--------------------------------------------------------------------------------
/sgf/9x9/annotations.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]CA[UTF-8]GM[1]SZ[9]AP[SGFC:1.18]
2 | N[This game contains node annotation and move annotation properties]
3 | ;B[aa]N[Good for black node annotation]GB[1]
4 | ;W[ab]N[Very good for black node annotation]GB[2]
5 | ;B[ac]N[Good for white node annotation]GW[1]
6 | ;W[ad]N[Very good for white node annotation]GW[2]
7 | ;B[ae]N[Even node annotation]DM[1]
8 | ;W[af]N[Very even node annotation]DM[2]
9 | ;B[ag]N[Unclear node annotation]UC[1]
10 | ;W[ah]N[Very unclear node annotation]UC[2]
11 | ;B[ba]N[Good move annotation]TE[1]
12 | ;W[bb]N[Very good move annotation]TE[2]
13 | ;B[bc]N[Bad move annotation]BM[1]
14 | ;W[bd]N[Very bad move annotation]BM[2]
15 | ;B[be]N[Interesting move annotation]IT[]
16 | ;W[bg]N[Doubtful move annotation]DO[]
17 | ;B[ca]N[Node name]C[Comment]
18 | ;W[cb]N[Hotspot node annotation]HO[1]
19 | ;B[cc]N[Emphasized hotspot node annotation]HO[2]
20 | ;W[cd]N[Estimated score (black wins) node annotation]V[42.5]
21 | ;B[ce]N[Estimated score (white wins) node annotation]V[-42.5]
22 | ;W[cf]N[Estimated score (game is tied) node annotation]V[0]
23 | ;B[cg]N[Combined annotations]C[Node with a combination of all possible node and move annotations]GB[2]IT[]V[42.5]HO[2]
24 | ;W[da]N[Hotspot node annotation and move that captures stones]HO[1]
25 | ;N[Nodes from here on contain no moves and no node title]
26 | ;GB[1]
27 | ;HO[1]
28 | ;GW[2]HO[2]
29 | )
30 |
--------------------------------------------------------------------------------
/sgf/9x9/game_050.sgf:
--------------------------------------------------------------------------------
1 | (
2 | ;
3 | FF[4]
4 | SZ[9]
5 | PB[Kurahashi Masayuki]
6 | BR[2p]
7 | PW[Sasaka Shiro]
8 | WR[1p]
9 | KM[5.5]
10 | DT[1988-10-08]
11 | PC[Japan]
12 | RE[B+R]
13 | SO[http://gobase.org/9x9/book/]
14 | AP[sgf2misc:3.1.9]
15 | ;B[ee];W[gd];B[fc];W[gg];B[eg];W[gc];B[gh];W[ff];B[ef];W[ce]
16 | ;B[cc];W[bc];B[bb];W[cd];B[dc];W[ch];B[be];W[bf];B[bd];W[ae]
17 | ;B[ac];W[eh];B[fh];W[dg];B[ei];W[df];B[hf];W[fb];B[dh];W[ci]
18 | ;B[eb];W[fd];B[ec];W[hg];B[gf];W[if];B[he];W[hd];B[fe];W[ge]
19 | ;B[fg];W[ie];B[ff];W[ha];B[fa];W[ib];B[gb];W[hb];B[ih];W[ig]
20 | ;B[hh];W[id];B[di];W[ga];B[bh];W[cg];B[de]
21 | )
22 |
--------------------------------------------------------------------------------
/sgf/9x9/illegal-board-setup-test.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]
2 | DT[2019-01-30]KM[0.5];
3 | AB[hi][ch][gh][ih][bg][cg][dg][eg][cf][hf][if][hd][id][ab][aa]
4 | AW[ci][bh][dh][hh][ag][bf][df][ce][he][ie][ac][hc][bb][gb][ib][ca][ha])
5 |
--------------------------------------------------------------------------------
/sgf/9x9/non-alternating-play.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]
2 | DT[2012-02-10]KM[6.5]
3 | PW[GoUctPlayer];B[df];W[ee];B[cd];W[ef];B[ed];W[de];B[ce];W[dd];B[ec]
4 | ;W[dc];B[cc];W[dg];B[ge];W[fd];B[fc];W[gd];B[fe];W[he];B[fg]
5 | ;W[ff];B[gf];W[gg];B[gc];W[hf];B[cg];W[db];B[eb];W[dh];B[ch]
6 | ;W[cf];B[bf];W[hc];B[hb];W[ib];B[gb];W[ha];B[da];W[ca]
7 | (;B[cb];W[ea];B[fa];W[da];B[ba];W[bb];W[ge]
8 | (;B[di];W[ei];B[ci];W[eh];B[bc];W[];B[ab];W[bg];B[bh];W[ah]
9 | ;B[ag];W[];B[df];W[eg];B[cf];W[];B[ga];W[];B[ia];W[ic]
10 | ;B[];W[])
11 | (;B[eh];W[ei]))
12 | (;B[ea];W[cb])
13 | (;B[df];W[cb]))
14 |
--------------------------------------------------------------------------------
/sgf/9x9/seki-9b.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[7]
2 | DT[2013-12-07]KM[6.5];B[ab];W[ac];B[bb];W[bc];B[ba];W[cc];B[cb];W[db]
3 | ;B[dc];W[da];B[ec];W[eb];B[fc];W[fb];B[gc];W[fa];B[gb];W[dd]
4 | ;B[ga];W[cd])
5 |
--------------------------------------------------------------------------------
/sgf/Famous games/Lee's Broken Ladder Game.sgf:
--------------------------------------------------------------------------------
1 | (;DT[2003-04-23]EV[3rd Korean KAT Cup]
2 | PB[Lee Sedol]PW[Hong Jansik]
3 | KM[6.5]RE[B+R]SO[Go4Go.net]
4 | ;B[pd];W[dd];B[pq];W[po];B[pl];W[mp];B[oo];W[on];B[no];W[pp]
5 | ;B[nq];W[nn];B[mo];W[qq];B[oq];W[qr];B[pn];W[pm];B[qn];W[qm]
6 | ;B[ro];W[qo];B[rn];W[rm];B[rp];W[qp];B[om];W[rk];B[qk];W[rl]
7 | ;B[rq];W[rr];B[sr];W[sn];B[sm];W[sl];B[rj];W[so];B[sq];W[rs]
8 | ;B[fd];W[ol];B[df];W[db];B[nm];W[mn];B[lo];W[mm];B[nl];W[dq]
9 | ;B[ok];W[km];B[iq];W[co];B[nc];W[cf];B[ec];W[de];B[dc];W[cc]
10 | ;B[cb];W[bb];B[cg];W[dg];B[ef];W[ce];B[dh];W[eg];B[fg];W[eh]
11 | ;B[ei];W[fh];B[lm];W[ml];B[gh];W[fi];B[fj];W[gi];B[hi];W[gj]
12 | ;B[gk];W[hj];B[ij];W[hk];B[hl];W[ik];B[jk];W[il];B[im];W[jl]
13 | ;B[kl];W[jm];B[jn];W[kn];B[ln];W[ko];B[mk];W[kk];B[lk];W[cl]
14 | ;B[kj];W[kp];B[dl];W[cm];B[eq];W[ep];B[fp];W[fq];B[er];W[gp]
15 | ;B[fo];W[gq];B[go];W[dr];B[dn];W[eo];B[cn];W[en];B[dm];W[cj]
16 | ;B[do];W[dp];B[ck];W[bk];B[dk];W[bl];B[cp];W[di];B[bo];W[bq]
17 | ;B[cq];W[br];B[cr];W[cs];B[bp];W[bn];B[em];W[fn];B[an];W[bm]
18 | ;B[bs];W[as];B[gn];W[fm];B[fl];W[gm];B[hm];W[ho];B[hn];W[fr]
19 | ;B[gl];W[es];B[io];W[ek];B[ej];W[hp];B[kq];W[jp];B[ip];W[jq]
20 | ;B[jr];W[kr];B[hr];W[lq];B[dj];W[ci];B[aq];W[gs];B[ap];W[ds]
21 | ;B[gr];W[js];B[ir];W[qc];B[qd];W[rd];B[re];W[rb];B[sd];W[sc]
22 | ;B[rc];W[ss];B[ll];W[rd];B[bj];W[bi];B[rc];W[on];B[nn];W[rd]
23 | ;B[se];W[pc];B[oc];W[hd];B[eb];W[ca];B[jd];W[qe];B[rc];W[jc]
24 | ;B[sb];W[kd];B[ic];W[id];B[je];W[hc];B[kc];W[ib];B[kb];W[hg]
25 | ;B[jg])
26 |
--------------------------------------------------------------------------------
/sgf/Illegal games/encoding-detection-fails.sgf:
--------------------------------------------------------------------------------
1 | (CA[UTF-8])(;FF[4]CA[ISO-8859-3])
2 |
--------------------------------------------------------------------------------
/sgf/Illegal games/encoding-multiple.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1]CA[UTF-8])
2 | (;FF[4]GM[1]CA[ISO-8859-1])
3 |
--------------------------------------------------------------------------------
/sgf/Illegal games/encoding-unsupported.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1]CA[foo]
2 |
--------------------------------------------------------------------------------
/sgf/Illegal games/illegal-move.sgf:
--------------------------------------------------------------------------------
1 | (;SZ[9]
2 | DT[2012-06-27]KM[0.5]
3 | PW[GoUctPlayer];B[df];W[ee];B[gc];W[de];B[ef];W[fe];B[gg];W[gf];B[ec]
4 | ;W[fg];B[ff];W[gh]
5 | (;B[hg];W[gd];B[hd];W[hd];B[eg];W[fh];B[ce];W[cd];B[be];W[eh]
6 | (;B[cg];W[fc];B[fb];W[dc];B[fd];W[ge];B[hc];W[ch];B[bh];W[db]
7 | ;B[dh];W[bd];B[ad];W[ac];B[ae];W[cf];B[bf];W[hb];B[ib];W[ha]
8 | ;B[eb];W[ea]
9 | (;B[ga];W[gb];B[fa];W[ed];B[ia];W[id];B[hb];W[bb];B[hh];
10 | C[White resigned])
11 | (;B[fa];W[ed]))
12 | (;B[ch];W[cf];B[dg];W[bf]))
13 | (;B[hh];W[hg]))
14 |
--------------------------------------------------------------------------------
/sgf/Illegal games/illegal-setup.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1]AB[aa][ab]AW[ac][ba][bb])
2 |
--------------------------------------------------------------------------------
/sgf/Illegal games/not-an-sgf-file.sgf:
--------------------------------------------------------------------------------
1 | this is not an .sgf file
--------------------------------------------------------------------------------
/sgf/Illegal games/not-enough-handicap-stones.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1]HA[3])
2 |
--------------------------------------------------------------------------------
/sgf/Illegal games/positional-superko.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]CA[UTF-8]AP[GoGui:1.4.9]SZ[11]
2 | KM[6.5]DT[2014-01-04]
3 | ;B[dc];W[ef];B[dd];W[ff];B[de];W[gf];B[df];W[hf];B[cg];W[eh]
4 | ;B[eg];W[fh];B[dh];W[gh];B[di];W[hh];B[dj];W[gg];B[dk];W[ig]
5 | ;B[fg];W[dg];B[eg])
6 |
--------------------------------------------------------------------------------
/sgf/Illegal games/setup-after-first-move.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1];B[aa];AB[bb])
2 |
--------------------------------------------------------------------------------
/sgf/Illegal games/setup-before-handicap-setup.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1]AB[bb];HA[1]AB[aa])
2 |
--------------------------------------------------------------------------------
/sgf/Illegal games/setup-player-after-first-move.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]GM[1];B[aa];PL[B])
2 |
--------------------------------------------------------------------------------
/sgf/Illegal games/situational-superko.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]CA[UTF-8]AP[GoGui:1.4.9]SZ[9]
2 | KM[6.5]DT[2014-01-04]
3 | ;B[ad];W[ac];B[bd];W[ab];B[cd];W[ba];B[cc];W[ae];B[cb];W[be]
4 | ;B[bb];W[ce];B[db];W[dd];B[da];W[dc];B[];W[eb];B[];W[ea]
5 | ;B[];W[ca];B[aa];W[ba])
6 |
--------------------------------------------------------------------------------
/sgf/Illegal games/suicide.sgf:
--------------------------------------------------------------------------------
1 | (;FF[4]CA[UTF-8]AP[GoGui:1.4.9]
2 | KM[6.5]DT[2015-06-08]
3 | ;B[ab];W[];B[ba];W[aa])
4 |
--------------------------------------------------------------------------------
/sgf/sgfc/test-reorder.sgf:
--------------------------------------------------------------------------------
1 | (;GM[1]C[a](;B[ab]C[a11](;W[cc]C[a21])
2 | (;W[fb]C[a22](;C[a221])
3 | (;C[a222]))
4 | (;B[fb]C[a23]))
5 | (;W[ab]C[a12])
6 | (;B[ab]C[a13]))
7 |
8 | (;GM[1]C[b];B[aa]C[b01];W[cg]C[b02]
9 | (;B[ab]C[b11];M[aa]C[e1];M[aa]C[e2]
10 | (;W[cc]C[b21];M[aa]C[e3];M[aa]C[e4])
11 | (;W[fb]C[b22];M[aa]C[e5];M[aa]C[e6])
12 | (;B[fb]C[b23];M[aa]C[e7];M[aa]C[e8]))
13 | (;W[ab]C[b12];M[aa]C[e9];M[aa]C[e10])
14 | (;B[ab]C[b13];M[aa]C[e11];M[aa]C[e12]))
15 |
16 |
--------------------------------------------------------------------------------
/sgf/sgfc/test-strict.sgf:
--------------------------------------------------------------------------------
1 | (;GM[1]HA[2])
2 | (;GM[1]HA[2]AB[aa][bb])
3 | (;GM[1]AB[aa][ab])
4 | (;GM[1]HA[2]AB[aa][ab]AW[cc])
5 | (;GM[1]HA[2]AW[aa][ab])
6 |
7 | (;GM[1];B[aa];W[cc];B[dd])
8 | (;GM[1];W[bb];B[aa];C[empty];W[cc];B[dd])
9 | (;GM[1];B[aa];W[cc];B[dd];C[empty];B[ee])
10 | (;GM[1];B[aa];W[cc];B[dd];C[empty];AB[ee])
11 | (;GM[1];B[aa];W[cc];AE[cc];B[ee])
12 | (;GM[1];B[aa];W[cg](;B[ab];W[cc];AE[ab];W[gh])
13 | (;W[ab];B[cc];AW[cb];W[ff])
14 | (;B[ab];W[cc];AE[ab];W[dd];B[ee]))
15 |
16 |
--------------------------------------------------------------------------------
/src/archive/ArchiveUtility.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2014-2016 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The ArchiveUtility class is a container for various utility functions
20 | /// related to handling of archived games
21 | ///
22 | /// All functions in ArchiveUtility are class methods, so there is no need to
23 | /// create an instance of ArchiveUtility.
24 | // -----------------------------------------------------------------------------
25 | @interface ArchiveUtility : NSObject
26 | {
27 | }
28 |
29 | + (enum ArchiveGameNameValidationResult) validateGameName:(NSString*)name;
30 | + (void) showAlertForFailedGameNameValidation:(enum ArchiveGameNameValidationResult)validationResult
31 | alertPresenter:(UIViewController*)presenter;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/archive/ArchiveViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2016 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class ArchiveViewModel;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The ArchiveViewController class is responsible for managing user
24 | /// interaction on the "Archive" view.
25 | // -----------------------------------------------------------------------------
26 | @interface ArchiveViewController : UIViewController
27 | {
28 | }
29 |
30 | /// @brief The model that manages data used by the ArchiveView.
31 | @property(nonatomic, assign) ArchiveViewModel* archiveViewModel;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/archive/GameInfoItemController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2021 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class GameInfoItem;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GameInfoItemController class is responsible for managing user
24 | /// interaction on the "Game info item" view.
25 | ///
26 | /// The "Game info item" view displays information associated with a
27 | /// GameInfoItem object. The view is a generic UITableView whose input elements
28 | /// are created dynamically by GameInfoItemController.
29 | // -----------------------------------------------------------------------------
30 | @interface GameInfoItemController : UITableViewController
31 | {
32 | }
33 |
34 | + (GameInfoItemController*) controllerWithGameInfoItem:(GameInfoItem*)gameInfoItem;
35 |
36 | @end
37 |
--------------------------------------------------------------------------------
/src/command/SetupApplicationCommand.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "CommandBase.h"
20 | #import "AsynchronousCommand.h"
21 |
22 |
23 | // -----------------------------------------------------------------------------
24 | /// @brief The SetupApplicationCommand class is responsible for setting up the
25 | /// application environment during the application launch cycle.
26 | ///
27 | /// SetupApplicationCommand is executed asynchronously (unless the executor is
28 | /// another asynchronous command).
29 | // -----------------------------------------------------------------------------
30 | @interface SetupApplicationCommand : CommandBase
31 | {
32 | }
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/src/command/backup/CleanBackupSgfCommand.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "CommandBase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The CleanBackupSgfCommand class is responsible for removing the
24 | /// backup file created by BackupGameToSgfCommand.
25 | // -----------------------------------------------------------------------------
26 | @interface CleanBackupSgfCommand : CommandBase
27 | {
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/src/command/backup/RestoreGameFromSgfCommand.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../CommandBase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The RestoreGameFromSgfCommand class is responsible for restoring a
24 | /// game during application startup from an .sgf file that was previously
25 | /// created by BackupGameToSgfCommand.
26 | ///
27 | /// RestoreGameFromSgfCommand fails if no backup .sgf file exists.
28 | ///
29 | /// @see BackupGameToSgfCommand.
30 | /// @see ApplicationStateManager.
31 | // -----------------------------------------------------------------------------
32 | @interface RestoreGameFromSgfCommand : CommandBase
33 | {
34 | }
35 |
36 | @end
37 |
--------------------------------------------------------------------------------
/src/command/game/ContinueGameCommand.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../CommandBase.h"
20 |
21 | // Forward declarations
22 | @class GoGame;
23 |
24 |
25 | // -----------------------------------------------------------------------------
26 | /// @brief The ContinueGameCommand class is responsible for continuing the game
27 | /// if it is paused while two computer players play against each other.
28 | ///
29 | /// @see PauseGameCommand.
30 | // -----------------------------------------------------------------------------
31 | @interface ContinueGameCommand : CommandBase
32 | {
33 | }
34 |
35 | - (id) init;
36 |
37 | @property(nonatomic, retain) GoGame* game;
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/src/command/game/DeleteGameCommand.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "CommandBase.h"
20 |
21 | // Forward declarations
22 | @class ArchiveGame;
23 |
24 |
25 | // -----------------------------------------------------------------------------
26 | /// @brief The DeleteGameCommand class is responsible for deleting an .sgf file
27 | /// in the documents folder.
28 | // -----------------------------------------------------------------------------
29 | @interface DeleteGameCommand : CommandBase
30 | {
31 | }
32 |
33 | - (id) initWithGame:(ArchiveGame*)aGame;
34 |
35 | @property(nonatomic, retain) ArchiveGame* game;
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/src/command/game/PauseGameCommand.m:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "PauseGameCommand.h"
20 | #import "../../go/GoGame.h"
21 |
22 |
23 | @implementation PauseGameCommand
24 |
25 | // -----------------------------------------------------------------------------
26 | /// @brief Executes this command. See the class documentation for details.
27 | // -----------------------------------------------------------------------------
28 | - (bool) doIt
29 | {
30 | GoGame* game = [GoGame sharedGame];
31 | if (GoGameTypeComputerVsComputer != game.type)
32 | {
33 | DDLogError(@"%@: Unexpected game type %d", [self shortDescription], game.type);
34 | return false;
35 | }
36 | [game pause];
37 | return true;
38 | }
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/src/command/game/RenameGameCommand.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "CommandBase.h"
20 |
21 | // Forward declarations
22 | @class ArchiveGame;
23 |
24 |
25 | // -----------------------------------------------------------------------------
26 | /// @brief The RenameGameCommand class is responsible for renaming an .sgf file
27 | /// in the documents folder.
28 | // -----------------------------------------------------------------------------
29 | @interface RenameGameCommand : CommandBase
30 | {
31 | }
32 |
33 | - (id) initWithGame:(ArchiveGame*)aGame newName:(NSString*)aNewName;
34 |
35 | @property(nonatomic, retain) ArchiveGame* game;
36 | @property(nonatomic, retain) NSString* theNewName;
37 |
38 | @end
39 |
--------------------------------------------------------------------------------
/src/command/gtp/InterruptComputerCommand.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "CommandBase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The InterruptComputerCommand class is responsible for interrupting
24 | /// the computer if it is currently thinking.
25 | ///
26 | /// The Research document has detailed information on how Fuego handles
27 | /// interrupts.
28 | // -----------------------------------------------------------------------------
29 | @interface InterruptComputerCommand : CommandBase
30 | {
31 | }
32 |
33 | - (id) init;
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/src/diagnostics/CrashReportingHandler.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2016-2021 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class CrashReportingModel;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The CrashReportingHandler class customizes the default process for
24 | /// submitting crash reports according to the user preferences in
25 | /// CrashReportingModel.
26 | // -----------------------------------------------------------------------------
27 | @interface CrashReportingHandler : NSObject
28 | {
29 | }
30 |
31 | - (id) initWithModel:(CrashReportingModel*)crashReportingModel;
32 |
33 | - (void) handleUnsentCrashReportsOrDoNothing;
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/src/diagnostics/CrashReportingModel.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The CrashReportingModel class provides user defaults data to its
20 | /// clients that describes the behaviour of the crash reporting service.
21 | // -----------------------------------------------------------------------------
22 | @interface CrashReportingModel : NSObject
23 | {
24 | }
25 |
26 | - (id) init;
27 | - (void) readUserDefaults;
28 | - (void) writeUserDefaults;
29 |
30 | @property(nonatomic, assign) bool collectCrashData;
31 | @property(nonatomic, assign) bool automaticReport;
32 | @property(nonatomic, assign) bool allowContact;
33 | @property(nonatomic, retain) NSString* contactEmail;
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/src/diagnostics/CrashReportingSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/EditTextController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The CrashReportingSettingsController class is responsible for
24 | /// managing user interaction on the "Crash Report" user preferences view.
25 | // -----------------------------------------------------------------------------
26 | @interface CrashReportingSettingsController : UITableViewController
27 | {
28 | }
29 |
30 | + (CrashReportingSettingsController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/diagnostics/DiagnosticsViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The DiagnosticsViewController class is responsible for managing user
20 | /// interaction on the "Diagnostics" view.
21 | // -----------------------------------------------------------------------------
22 | @interface DiagnosticsViewController : UITableViewController
23 | {
24 | }
25 |
26 | + (DiagnosticsViewController*) controller;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/diagnostics/GtpCommandViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/EditTextController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GtpCommandViewController class is responsible for managing user
24 | /// interaction on the "GTP Commands" view.
25 | // -----------------------------------------------------------------------------
26 | @interface GtpCommandViewController : UITableViewController
27 | {
28 | }
29 |
30 | + (GtpCommandViewController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/diagnostics/GtpLogSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2012 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The GtpLogSettingsController class is responsible for managing user
20 | /// interaction on the "Gtp Log Settings" view.
21 | // -----------------------------------------------------------------------------
22 | @interface GtpLogSettingsController : UITableViewController
23 | {
24 | }
25 |
26 | + (GtpLogSettingsController*) controller;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/diagnostics/LoggingModel.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The LoggingModel class provides user defaults data to its clients
20 | /// that is relevant for the logging service.
21 | // -----------------------------------------------------------------------------
22 | @interface LoggingModel : NSObject
23 | {
24 | }
25 |
26 | - (void) readUserDefaults;
27 | - (void) writeUserDefaults;
28 |
29 | @property(nonatomic, assign) bool loggingEnabled;
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/src/diagnostics/SubmitGtpCommandViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/EditTextController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The SubmitGtpCommandViewController class is responsible for managing
24 | /// user interaction on the "Submit GTP command" view.
25 | // -----------------------------------------------------------------------------
26 | @interface SubmitGtpCommandViewController : UIViewController
27 | {
28 | }
29 |
30 | + (SubmitGtpCommandViewController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/go/GoGameAdditions.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2023-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "GoGame.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoGameAdditions category enhances GoGame by adding methods for
24 | /// unit testing support.
25 | ///
26 | /// @ingroup go
27 | // -----------------------------------------------------------------------------
28 | @interface GoGame(GoGameAdditions)
29 |
30 | /// @name Unit testing
31 | //@{
32 | - (void) play:(GoPoint*)point;
33 | - (void) pass;
34 | //@}
35 |
36 | @end
37 |
--------------------------------------------------------------------------------
/src/go/GoMoveAdditions.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "GoMove.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoMoveAdditions category enhances GoMove by adding methods for
24 | /// unit testing support.
25 | ///
26 | /// @ingroup go
27 | // -----------------------------------------------------------------------------
28 | @interface GoMove(GoMoveAdditions)
29 |
30 | /// @name Unit testing
31 | //@{
32 | - (void) setMoveNumber:(int)moveNumber;
33 | //@}
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/src/go/GoVertexNumeric.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief Helper struct to bind the numeric compounds of a GoVertex together.
20 | ///
21 | /// @ingroup go
22 | // -----------------------------------------------------------------------------
23 | struct GoVertexNumeric
24 | {
25 | int x; ///< @brief Horizontal axis compound of the vertex.
26 | int y; ///< @brief Vertical axis compound of the vertex.
27 | };
28 |
29 | // Helper functions
30 | extern bool GoVertexNumericEqualToVertex(struct GoVertexNumeric vertex1, struct GoVertexNumeric vertex2);
31 |
--------------------------------------------------------------------------------
/src/go/GoVertexNumeric.m:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "GoVertexNumeric.h"
20 |
21 |
22 | bool GoVertexNumericEqualToVertex(struct GoVertexNumeric vertex1, struct GoVertexNumeric vertex2)
23 | {
24 | if (vertex1.x != vertex2.x)
25 | return false;
26 | if (vertex1.y != vertex2.y)
27 | return false;
28 | return true;
29 | }
30 |
--------------------------------------------------------------------------------
/src/gtp/GtpUtilities.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward classes
19 | @class Player;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GtpUtilities class is a container for various utility functions
24 | /// related to the GTP module.
25 | ///
26 | /// @ingroup gtp
27 | ///
28 | /// All functions in GtpUtilities are class methods, so there is no need to
29 | /// create an instance of GtpUtilities.
30 | // -----------------------------------------------------------------------------
31 | @interface GtpUtilities : NSObject
32 | {
33 | }
34 |
35 | + (Player*) playerProvidingActiveProfile;
36 | + (void) setupComputerPlayer;
37 | + (void) startPondering;
38 | + (void) stopPondering;
39 | + (void) restorePondering;
40 |
41 | @end
42 |
--------------------------------------------------------------------------------
/src/help/UserManualUtilities.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The UserManualUtilities class is a container for various utility
20 | /// functions related to managing the user manual.
21 | ///
22 | /// All functions in UserManualUtilities are class methods, so there is no need
23 | /// to create an instance of UserManualUtilities.
24 | // -----------------------------------------------------------------------------
25 | @interface UserManualUtilities : NSObject
26 | {
27 | }
28 |
29 | + (NSString*) userManualBaseFolderPath;
30 | + (NSString*) filePathForUserManualFileNamed:(NSString*)fileName fileExists:(BOOL*)fileExists;
31 | + (NSString*) userManualEntryPointFilePath;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/help/UserManualViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 |
19 | // -----------------------------------------------------------------------------
20 | /// @brief The UserManualViewController class is responsible for displaying the
21 | /// user manual and managing user interaction on the "Help" view.
22 | // -----------------------------------------------------------------------------
23 | @interface UserManualViewController : UIViewController
24 | {
25 | }
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/src/main/LicensesViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 |
19 | // -----------------------------------------------------------------------------
20 | /// @brief The LicensesViewController class is responsible for managing a table
21 | /// view that lists license documents.
22 | // -----------------------------------------------------------------------------
23 | @interface LicensesViewController : UITableViewController
24 | {
25 | }
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/src/main/Prefix.pch:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 | #ifdef __OBJC__
18 | // System includes
19 | #import
20 | #import
21 | #import
22 | #if defined(LITTLEGO_UNITTESTS) || defined(LITTLEGO_UITESTS)
23 | #import
24 | #endif
25 | #import
26 |
27 | // Library includes
28 | #ifndef LITTLEGO_UITESTS
29 | #import
30 | #import
31 | #endif
32 | #if ! defined(LITTLEGO_UNITTESTS) && ! defined(LITTLEGO_UITESTS)
33 | #import // for FIRApp
34 | #import // for FIRCrashlytics
35 | #endif
36 |
37 | // Project includes
38 | #import "Constants.h"
39 | #endif
40 |
--------------------------------------------------------------------------------
/src/main/SectionedDocumentViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2015 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 |
19 | // -----------------------------------------------------------------------------
20 | /// @brief The SectionedDocumentViewController class is responsible for managing
21 | /// a table view that lists the sections in a structured text file. The text
22 | /// file is parsed internally by a DocumentGenerator instance.
23 | // -----------------------------------------------------------------------------
24 | @interface SectionedDocumentViewController : UITableViewController
25 | {
26 | }
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/main/UIAreaInfo.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2015 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The UIAreaInfo category adds a property to UIViewController that
20 | /// allows to associate the view controller with an UIArea value.
21 | // -----------------------------------------------------------------------------
22 | @interface UIViewController(UIAreaInfo)
23 |
24 | /// @brief The UIArea value associated with this view controller. If not
25 | /// explicitly set the default value of this property is #UIAreaUnknown.
26 | @property(nonatomic, assign) enum UIArea uiArea;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/main/UIAreaInfo.m:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2015 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "UIAreaInfo.h"
20 |
21 | // System includes
22 | #import
23 |
24 | // Constants
25 | NSString* associatedUIAreaObjectKey = @"AssociatedUIAreaObject";
26 |
27 |
28 | @implementation UIViewController(UIAreaInfo)
29 |
30 | - (enum UIArea) uiArea
31 | {
32 | NSNumber* uiAreaAsNumber = objc_getAssociatedObject(self, associatedUIAreaObjectKey);
33 | if (uiAreaAsNumber)
34 | return [uiAreaAsNumber intValue];
35 | else
36 | return UIAreaUnknown;
37 | }
38 |
39 | - (void) setUiArea:(enum UIArea)uiArea
40 | {
41 | objc_setAssociatedObject(self, associatedUIAreaObjectKey, [NSNumber numberWithInt:uiArea], OBJC_ASSOCIATION_RETAIN);
42 | }
43 |
44 | @end
--------------------------------------------------------------------------------
/src/main/main.m:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 | // Project includes
18 | #import "ApplicationDelegate.h"
19 |
20 |
21 | int main(int argc, char *argv[])
22 | {
23 | @autoreleasepool
24 | {
25 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([ApplicationDelegate class]));
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/play/boardview/StoneView.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2021 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class BoardViewMetrics;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The StoneView class is a custom view that draws a single black or
24 | /// white stone without symbols of any kind, in exactly the same size and
25 | /// appearance as does the BoardView.
26 | // -----------------------------------------------------------------------------
27 | @interface StoneView : UIView
28 | {
29 | }
30 |
31 | - (id) initWithFrame:(CGRect)frame stoneColor:(enum GoColor)stoneColor metrics:(BoardViewMetrics*)metrics;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/play/boardview/layer/CrossHairLinesLayerDelegate.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BoardViewLayerDelegateBase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The CrossHairLinesLayerDelegate class is responsible for drawing the
24 | /// lines of the cross-hair that indicates to the user during stone placement
25 | /// where the stone would be placed.
26 | // -----------------------------------------------------------------------------
27 | @interface CrossHairLinesLayerDelegate : BoardViewLayerDelegateBase
28 | {
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/src/play/boardview/layer/GridLayerDelegate.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BoardViewLayerDelegateBase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GridLayerDelegate class is responsible for drawing the line grid
24 | /// on the Go board.
25 | // -----------------------------------------------------------------------------
26 | @interface GridLayerDelegate : BoardViewLayerDelegateBase
27 | {
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/src/play/boardview/layer/StonesLayerDelegate.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BoardViewLayerDelegateBase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The StonesLayerDelegate class is responsible for drawing stones on
24 | /// the Go board.
25 | // -----------------------------------------------------------------------------
26 | @interface StonesLayerDelegate : BoardViewLayerDelegateBase
27 | {
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/src/play/controller/DiscardFutureNodesAlertController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../gameaction/GameActionManager.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The DiscardFutureNodesAlertController class displays an alert and
24 | /// executes a command, working as a delegate on behalf of GameActionManager.
25 | // -----------------------------------------------------------------------------
26 | @interface DiscardFutureNodesAlertController : NSObject
27 | {
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/src/play/gesture/BoardViewTapGestureController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class BoardView;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The BoardViewTapGestureController class is responsible for managing
24 | /// the tap gesture on the Go board. Tapping is used to place stones during game
25 | /// setup prior to the first move, and to mark dead stones during scoring.
26 | // -----------------------------------------------------------------------------
27 | @interface BoardViewTapGestureController : NSObject
28 | {
29 | }
30 |
31 | @property(nonatomic, assign) BoardView* boardView;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/play/gesture/handler/PlayStonePanGestureHandler.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "PanGestureHandler.h"
20 |
21 | // Forward declarations
22 | @class BoardView;
23 |
24 |
25 | NS_ASSUME_NONNULL_BEGIN
26 |
27 | // -----------------------------------------------------------------------------
28 | /// @brief The PlayStonePanGestureHandler class implements handling of a pan
29 | /// gesture that attempts to place a stone on the board.
30 | // -----------------------------------------------------------------------------
31 | @interface PlayStonePanGestureHandler : PanGestureHandler
32 | {
33 | }
34 |
35 | - (id) initWithBoardView:(BoardView*)boardView;
36 |
37 | @end
38 |
39 | NS_ASSUME_NONNULL_END
40 |
--------------------------------------------------------------------------------
/src/play/model/BoardPositionModel.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2012-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The BoardPositionModel class provides user defaults data to its
20 | /// clients that is related to board position viewing.
21 | // -----------------------------------------------------------------------------
22 | @interface BoardPositionModel : NSObject
23 | {
24 | }
25 |
26 | - (id) init;
27 | - (void) readUserDefaults;
28 | - (void) writeUserDefaults;
29 |
30 | @property(nonatomic, assign) bool discardFutureNodesAlert;
31 | @property(nonatomic, assign) bool markNextMove;
32 | @property(nonatomic, assign) bool discardMyLastMove;
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/src/play/model/GameVariationModel.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2023-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The GameVariationModel class provides user defaults data and other
20 | /// values to its clients that are related to game variations.
21 | // -----------------------------------------------------------------------------
22 | @interface GameVariationModel : NSObject
23 | {
24 | }
25 |
26 | - (id) init;
27 |
28 | - (void) readUserDefaults;
29 | - (void) writeUserDefaults;
30 |
31 | @property(nonatomic, assign) enum GoNewMoveInsertPolicy newMoveInsertPolicy;
32 | @property(nonatomic, assign) enum GoNewMoveInsertPosition newMoveInsertPosition;
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/src/play/nodetreeview/NodeNumbersView.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2023-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../../ui/TiledScrollView.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The NodeNumbersView class subclasses TiledScrollView to add updater
24 | /// methods that initiate redrawing of tiles.
25 | // -----------------------------------------------------------------------------
26 | @interface NodeNumbersView : TiledScrollView
27 | {
28 | }
29 |
30 | - (void) updateColors;
31 | - (void) removeNotificationResponders;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/play/nodetreeview/NodeTreeViewTapGestureController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class NodeTreeView;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The NodeTreeViewTapGestureController class is responsible for
24 | /// managing the tap gesture on the node tree view. Tapping is used to change
25 | /// the node selection.
26 | // -----------------------------------------------------------------------------
27 | @interface NodeTreeViewTapGestureController : NSObject
28 | {
29 | }
30 |
31 | @property(nonatomic, assign) NodeTreeView* nodeTreeView;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/play/nodetreeview/layer/LinesLayerDelegate.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "NodeTreeViewLayerDelegateBase.h"
20 |
21 | // Forward declarations
22 | @class NodeTreeViewCanvas;
23 |
24 |
25 | // -----------------------------------------------------------------------------
26 | /// @brief The LinesLayerDelegate class is responsible for drawing the
27 | /// connection lines between the nodes of the node tree.
28 | // -----------------------------------------------------------------------------
29 | @interface LinesLayerDelegate : NodeTreeViewLayerDelegateBase
30 | {
31 | }
32 |
33 | - (id) initWithTile:(id)tile
34 | metrics:(NodeTreeViewMetrics*)metrics
35 | canvas:(NodeTreeViewCanvas*)nodeTreeViewCanvas;
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/src/play/nodetreeview/layer/NodeSymbolLayerDelegate.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "NodeTreeViewLayerDelegateBase.h"
20 |
21 | // Forward declarations
22 | @class NodeTreeViewCanvas;
23 |
24 |
25 | // -----------------------------------------------------------------------------
26 | /// @brief The NodeSymbolLayerDelegate class is responsible for drawing the
27 | /// symbols that represent nodes.
28 | // -----------------------------------------------------------------------------
29 | @interface NodeSymbolLayerDelegate : NodeTreeViewLayerDelegateBase
30 | {
31 | }
32 |
33 | - (id) initWithTile:(id)tile
34 | metrics:(NodeTreeViewMetrics*)metrics
35 | canvas:(NodeTreeViewCanvas*)nodeTreeViewCanvas;
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/src/play/rootview/PlayRootViewNavigationController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2015-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../gameaction/GameActionManager.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The PlayRootViewNavigationController class is a
24 | /// UINavigationController that handles the special navigational needs of
25 | /// #UIAreaPlay for #UITypePhonePortraitOnly and #UITypePad.
26 | // -----------------------------------------------------------------------------
27 | @interface PlayRootViewNavigationController : UINavigationController
28 | {
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/src/play/splitview/LeftPaneViewController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013-2021 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The LeftPaneViewController class manages a simple container view
20 | /// intended to be displayed as the left pane of a split view (i.e. the view
21 | /// managed by UISplitViewController).
22 | ///
23 | /// LeftPaneViewController is a container view controller. It is used for
24 | /// #UITypePad (both Portrait and Landscape) and #UITypePhone (Landscape only).
25 | // -----------------------------------------------------------------------------
26 | @interface LeftPaneViewController : UIViewController
27 | {
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/src/settings/BoardPositionSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2012-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The BoardPositionSettingsController class is responsible for managing
20 | /// user interaction on the "Board position" user preferences view.
21 | // -----------------------------------------------------------------------------
22 | @interface BoardPositionSettingsController : UITableViewController
23 | {
24 | }
25 |
26 | + (BoardPositionSettingsController*) controller;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/settings/BoardSetupSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2019 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The BoardSetupSettingsController class is responsible for managing
20 | /// user interaction on the "Board setup" user preferences view.
21 | // -----------------------------------------------------------------------------
22 | @interface BoardSetupSettingsController : UITableViewController
23 | {
24 | }
25 |
26 | + (BoardSetupSettingsController*) controller;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/settings/ComputerAssistanceSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2021 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/ItemPickerController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The ComputerAssistanceSettingsController class is responsible for
24 | /// managing user interaction on the "Computer assistance" user preferences
25 | /// view.
26 | // -----------------------------------------------------------------------------
27 | @interface ComputerAssistanceSettingsController : UITableViewController
28 | {
29 | }
30 |
31 | + (ComputerAssistanceSettingsController*) controller;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/settings/DisplaySettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2014 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The DisplaySettingsController class is responsible for managing user
20 | /// interaction on the "Display" user preferences view.
21 | // -----------------------------------------------------------------------------
22 | @interface DisplaySettingsController : UITableViewController
23 | {
24 | }
25 |
26 | + (DisplaySettingsController*) controller;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/settings/GameVariationSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2023-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/ItemPickerController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GameVariationSettingsController class is responsible for
24 | /// managing user interaction on the "Game variation" user preferences view.
25 | // -----------------------------------------------------------------------------
26 | @interface GameVariationSettingsController : UITableViewController
27 | {
28 | }
29 |
30 | + (GameVariationSettingsController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/settings/MagnifyingGlassSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013-2015 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/ItemPickerController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The MagnifyingGlassSettingsController class is responsible for
24 | /// managing user interaction on the "Magnifying Glass" user preferences view.
25 | // -----------------------------------------------------------------------------
26 | @interface MagnifyingGlassSettingsController : UITableViewController
27 | {
28 | }
29 |
30 | + (MagnifyingGlassSettingsController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/settings/MarkupSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/ItemPickerController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The MarkupSettingsController class is responsible for managing user
24 | /// interaction on the "Markup" user preferences view.
25 | // -----------------------------------------------------------------------------
26 | @interface MarkupSettingsController : UITableViewController
27 | {
28 | }
29 |
30 | + (MarkupSettingsController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/settings/NodeTreeViewSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/ItemPickerController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The NodeTreeViewSettingsController class is responsible for managing
24 | /// user interaction on the "Tree view" user preferences view.
25 | // -----------------------------------------------------------------------------
26 | @interface NodeTreeViewSettingsController : UITableViewController
27 | {
28 | }
29 |
30 | + (NodeTreeViewSettingsController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/settings/PlayerProfileSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2021 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "EditPlayerProfileController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The PlayerProfileSettingsController class is responsible for managing
24 | /// user interaction on the "Players & Profiles" user preferences view.
25 | // -----------------------------------------------------------------------------
26 | @interface PlayerProfileSettingsController : UITableViewController
27 | {
28 | }
29 |
30 | + (PlayerProfileSettingsController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/settings/ScoringSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "../ui/ItemPickerController.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The ScoringSettingsController class is responsible for managing user
24 | /// interaction on the "Scoring" user preferences view.
25 | // -----------------------------------------------------------------------------
26 | @interface ScoringSettingsController : UITableViewController
27 | {
28 | }
29 |
30 | + (ScoringSettingsController*) controller;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/settings/SoundSettingsController.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The SoundSettingsController class is responsible for managing user
20 | /// interaction on the "Sound & Vibration" user preferences view.
21 | // -----------------------------------------------------------------------------
22 | @interface SoundSettingsController : UITableViewController
23 | {
24 | }
25 |
26 | + (SoundSettingsController*) controller;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/ui/ButtonBoxCell.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2015 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The ButtonBoxCell class is a private class used by
20 | /// ButtonBoxController to host a single UIButton.
21 | // -----------------------------------------------------------------------------
22 | @interface ButtonBoxCell : UICollectionViewCell
23 | {
24 | }
25 |
26 | - (void) setupWithButton:(UIButton*)button;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/src/ui/Tile.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2014-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The Tile protocol defines the interface that tile views displayed
20 | /// by TiledScrollView must implement.
21 | ///
22 | /// The tile with row/column = 0/0 is in the upper-left corner.
23 | // -----------------------------------------------------------------------------
24 | @protocol Tile
25 |
26 | /// @brief Invalidates the content currently displayed by the tile.
27 | ///
28 | /// The tile should redraw its content in response to this method being invoked.
29 | - (void) invalidateContent;
30 |
31 | @property(nonatomic, assign) int row;
32 | @property(nonatomic, assign) int column;
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/src/utility/NSArrayAdditions.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class NSArray;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The NSArrayAdditions category enhances NSArray by adding a number
24 | /// of useful class and instance methods.
25 | ///
26 | /// @ingroup utility
27 | // -----------------------------------------------------------------------------
28 | @interface NSArray(NSArrayAdditions)
29 | + (NSArray*) arrayWithArrayInReverseOrder:(NSArray*)otherArray;
30 | - (BOOL) isEqualToArrayIgnoringOrder:(NSArray*)otherArray;
31 | - (NSArray*) intersectionWithArray:(NSArray*)otherArray;
32 | @end
33 |
--------------------------------------------------------------------------------
/src/utility/NSObjectAdditions.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2022-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class NSObject;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The NSObjectAdditions category enhances NSObject by adding a number
24 | /// of useful class and instance methods.
25 | ///
26 | /// @ingroup utility
27 | // -----------------------------------------------------------------------------
28 | @interface NSObject(NSObjectAdditions)
29 |
30 | - (void) performBlockOnMainThread:(void(^)(void))callback afterDelay:(double)delayInSeconds;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/src/utility/UIDebugging.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 |
19 | // -----------------------------------------------------------------------------
20 | /// @brief The UIDebugging class is a container for functions that help with
21 | /// debugging and inspecting UI elements.
22 | ///
23 | /// @ingroup utility
24 | // -----------------------------------------------------------------------------
25 | @interface UIDebugging : NSObject
26 | {
27 | }
28 |
29 | + (void) inspect:(UIView*)view;
30 | + (void) inspectWithSubviews:(UIView*)view;
31 | + (void) inspectWithTree:(UIView*)view;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/src/utility/UIDeviceAdditions.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Forward declarations
19 | @class UIDevice;
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The UIDeviceAdditions category enhances UIDevice by adding a number
24 | /// of useful class methods.
25 | ///
26 | /// @ingroup utility
27 | // -----------------------------------------------------------------------------
28 | @interface UIDevice(UIDeviceAdditions)
29 | + (NSArray*) deviceSuffixes;
30 | + (NSString*) currentDeviceSuffix;
31 | + (int) systemVersionMajor;
32 | + (int) physicalMemoryMegabytes;
33 | @end
34 |
--------------------------------------------------------------------------------
/src/utility/VersionInfoUtilities.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The VersionInfoUtilities class is a container for various utility
20 | /// functions that provide version information about the application bundle.
21 | ///
22 | /// All functions in VersionInfoUtilities are class methods, so there is no
23 | /// need to create an instance of VersionInfoUtilities.
24 | // -----------------------------------------------------------------------------
25 | @interface VersionInfoUtilities : NSObject
26 | {
27 | }
28 |
29 | + (NSString*) applicationName;
30 | + (NSString*) applicationVersion;
31 | + (NSString*) applicationCopyright;
32 | + (NSDate*) buildDateTime;
33 | + (NSString*) buildDateTimeString;
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/test/resource/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundlePackageType
14 | BNDL
15 | CFBundleSignature
16 | ????
17 | CFBundleVersion
18 | 1.0
19 |
20 |
21 |
--------------------------------------------------------------------------------
/test/src/GoBoardPositionTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BaseTestCase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoBoardPositionTest class contains unit tests that exercise the
24 | /// GoBoardPosition class.
25 | // -----------------------------------------------------------------------------
26 | @interface GoBoardPositionTest : BaseTestCase
27 | {
28 | }
29 |
30 | - (void) testInitialState;
31 | - (void) testChangeToLastBoardPositionWithoutUpdatingGoObjects;
32 | - (void) testCurrentBoardPosition;
33 | - (void) testCurrentNode;
34 | - (void) testIsFirstPosition;
35 | - (void) testIsLastPosition;
36 | - (void) testNumberOfBoardPositions;
37 | - (void) testBoardPositionChangeProgress;
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/test/src/GoBoardTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2012 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BaseTestCase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoBoardTest class contains unit tests that exercise the GoBoard
24 | /// class.
25 | // -----------------------------------------------------------------------------
26 | @interface GoBoardTest : BaseTestCase
27 | {
28 | }
29 |
30 | - (void) testInitialState;
31 | - (void) testBoardWithDefaultSize;
32 | - (void) testBoardWithSize;
33 | - (void) testStringForSize;
34 | - (void) testPointEnumerator;
35 | - (void) testPointAtVertex;
36 | - (void) testNeighbourOfInDirection;
37 | - (void) testPointAtCorner;
38 | - (void) testStarPoints;
39 | - (void) testRegions;
40 |
41 | @end
42 |
--------------------------------------------------------------------------------
/test/src/GoGameRulesTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2013 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BaseTestCase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoGameRulesTest class contains unit tests that exercise the
24 | /// GoGameRules class.
25 | // -----------------------------------------------------------------------------
26 | @interface GoGameRulesTest : BaseTestCase
27 | {
28 | }
29 |
30 | - (void) testInitialState;
31 | - (void) testNonDefaultRules;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/test/src/GoMoveTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BaseTestCase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoMoveTest class contains unit tests that exercise the GoMove
24 | /// class.
25 | // -----------------------------------------------------------------------------
26 | @interface GoMoveTest : BaseTestCase
27 | {
28 | }
29 |
30 | - (void) testMoveByAfter;
31 | - (void) testPoint;
32 | - (void) testCapturedStones;
33 | - (void) testCapturedStonesHandicapAndSetup;
34 | - (void) testDoIt;
35 | - (void) testUndo;
36 | - (void) testMoveNumber;
37 | - (void) testGoMoveValuation;
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/test/src/GoPlayerTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2012 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BaseTestCase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoPlayerTest class contains unit tests that exercise the GoPlayer
24 | /// class.
25 | // -----------------------------------------------------------------------------
26 | @interface GoPlayerTest : BaseTestCase
27 | {
28 | }
29 |
30 | - (void) testInitialState;
31 | - (void) testDefaultBlackWhitePlayer;
32 | - (void) testInvalidDefaultBlackWhitePlayer;
33 | - (void) testBlackWhitePlayer;
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/test/src/GoPointTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2012 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BaseTestCase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoPointTest class contains unit tests that exercise the GoPoint
24 | /// class.
25 | // -----------------------------------------------------------------------------
26 | @interface GoPointTest : BaseTestCase
27 | {
28 | }
29 |
30 | - (void) testInitialState;
31 | - (void) testPointAtVertexOnBoard;
32 | - (void) testNeighbours;
33 | - (void) testStarPoint;
34 | - (void) testStoneState;
35 | - (void) testLiberties;
36 | - (void) testIsEqualToPoint;
37 | - (void) testNeighbourRegionsWithColor;
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/test/src/GoVertexTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2019 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The GoVertexTest class contains unit tests that exercise the
20 | /// GoVertex class.
21 | // -----------------------------------------------------------------------------
22 | @interface GoVertexTest : XCTestCase
23 | {
24 | }
25 |
26 | - (void) testVertexFromNumeric;
27 | - (void) testVertexFromString;
28 | - (void) testIsEqualToVertex;
29 | - (void) testUnusedLetterI;
30 | - (void) testLowerCaseString;
31 | - (void) testBorderCases;
32 | - (void) testIllegalInputValues;
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/test/src/GoZobristTableTest.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2011-2024 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // Project includes
19 | #import "BaseTestCase.h"
20 |
21 |
22 | // -----------------------------------------------------------------------------
23 | /// @brief The GoZobristTableTest class contains unit tests that exercise the
24 | /// GoZobristTable class.
25 | // -----------------------------------------------------------------------------
26 | @interface GoZobristTableTest : BaseTestCase
27 | {
28 | }
29 |
30 | - (void) testInitialState;
31 | - (void) testHashForBoard;
32 | - (void) testHashForHandicapStonesInGame;
33 | - (void) testHashForNodeInGame;
34 | - (void) testHashForSetup;
35 | - (void) testHashForStone;
36 | - (void) testHashForLastMoveEqualsHashForBoard;
37 | - (void) testHashAfterPass;
38 | - (void) testHashAfterUndoAndRedo;
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/uitest/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleVersion
20 | 1
21 |
22 |
23 |
--------------------------------------------------------------------------------
/uitest/UiTestDeviceInfo.h:
--------------------------------------------------------------------------------
1 | // -----------------------------------------------------------------------------
2 | // Copyright 2019 Patrick Näf (herzbube@herzbube.ch)
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | // -----------------------------------------------------------------------------
16 |
17 |
18 | // -----------------------------------------------------------------------------
19 | /// @brief The UiTestDeviceInfo class is used by user interface tests (UI tests)
20 | /// to obtain characteristics about the device under test.
21 | // -----------------------------------------------------------------------------
22 |
23 | @interface UiTestDeviceInfo : NSObject
24 |
25 | - (id) initWithUiApplication:(XCUIApplication*)app;
26 |
27 | @property(nonatomic, assign, readonly) enum UIType uiType;
28 | @property(nonatomic, assign, readonly) UIInterfaceOrientationMask supportedInterfaceOrientations;
29 |
30 | @end
31 |
--------------------------------------------------------------------------------