Claire
2 years ago
5 changed files with 34 additions and 23 deletions
@ -1,7 +1,24 @@ |
|||||||
# LunaMac |
# LunaMac |
||||||
|
|
||||||
![](LunaMac/Assets.xcassets/AppIcon.appiconset/fullmoon128.png) |
<img src="LunaMac/Assets.xcassets/AppIcon.appiconset/fullmoon128.png" align="left"> |
||||||
|
|
||||||
A MacOS menu bar app for the phases of the moon. LunaMac calculates the current moon phase using your computer's system time. If the menu bar icon is a Ⓧ, something went wrong and LunaMac couldn't calculate the moon phase. You can try reloading from the icon's menu. |
A MacOS menu bar app for the phases of the moon. LunaMac calculates the current moon phase using your computer's system time. If the menu bar icon is a Ⓧ, something went wrong and LunaMac couldn't calculate the moon phase. You can try reloading from the icon's menu. |
||||||
|
<br clear="left"/> |
||||||
|
|
||||||
For a comprehensive breakdown of this project's code, check out the [wiki](/ABG/LunaMac/wiki). |
<img src="https://abettergeek.com/_media/wiki/git/lunamac/prefmenu.png" align="right"> |
||||||
|
|
||||||
|
This project covers a number of basic use cases: |
||||||
|
|
||||||
|
* Programmatically creating a status icon in the system menu bar |
||||||
|
* Working with datetime objects, including datetime math |
||||||
|
* Loading contents of a file packaged with the application |
||||||
|
* Using a timer to run periodic background updates |
||||||
|
* Setting and using user preferences to build the UI |
||||||
|
|
||||||
|
There are some useful implementations for those new to Apple's programming paradigms. Swift adopts a lot of Objective-C concepts, which themselves are likely foreign if don't already have a working knowledge of Objective-C. |
||||||
|
|
||||||
|
* Using interface builder **actions** and **outlets** to work with window elements |
||||||
|
* Working with **object delegation** |
||||||
|
* Implementing a **view controller** to interact with windows |
||||||
|
|
||||||
|
For a comprehensive breakdown of this project's code, check out the [wiki](/ABG/LunaMac/wiki). |
Loading…
issues.context.reference_issue