[+] Add comments to AlarmActivationViewController
This commit is contained in:
@@ -8,28 +8,34 @@
|
|||||||
import UIKit
|
import UIKit
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
|
||||||
|
/**
|
||||||
|
View controlling alarm activation and dismissal
|
||||||
|
*/
|
||||||
class AlarmActivationViewController: UIViewController
|
class AlarmActivationViewController: UIViewController
|
||||||
{
|
{
|
||||||
var timer: Timer?
|
var timer: Timer?
|
||||||
var currentAlarm: Alarm?
|
var currentAlarm: Alarm?
|
||||||
|
|
||||||
//Puzzle outlets
|
// Puzzle outlets
|
||||||
@IBOutlet weak var puzzleView: UIView!
|
@IBOutlet weak var puzzleView: UIView!
|
||||||
@IBOutlet weak var puzzleQuestionLabel: UILabel!
|
@IBOutlet weak var puzzleQuestionLabel: UILabel!
|
||||||
@IBOutlet weak var puzzleAnswerInput: UITextField!
|
@IBOutlet weak var puzzleAnswerInput: UITextField!
|
||||||
var puzzleAnswers: [Int] = []
|
var puzzleAnswers: [Int] = []
|
||||||
|
|
||||||
//RPS Outlets
|
// RPS Outlets
|
||||||
@IBOutlet weak var rpsView: UIView!
|
@IBOutlet weak var rpsView: UIView!
|
||||||
@IBOutlet weak var rpsResult: UILabel!
|
@IBOutlet weak var rpsResult: UILabel!
|
||||||
|
|
||||||
//Shake Outlets
|
// Shake Outlets
|
||||||
@IBOutlet weak var shakeView: UIView!
|
@IBOutlet weak var shakeView: UIView!
|
||||||
|
|
||||||
//Other Outlets
|
// Other Outlets
|
||||||
@IBOutlet weak var timeLabel: UILabel!
|
@IBOutlet weak var timeLabel: UILabel!
|
||||||
@IBOutlet weak var dateLabel: UILabel!
|
@IBOutlet weak var dateLabel: UILabel!
|
||||||
|
|
||||||
|
/**
|
||||||
|
Constructor to receive alarm data from segue
|
||||||
|
*/
|
||||||
init?(coder: NSCoder, currentAlarm: Alarm)
|
init?(coder: NSCoder, currentAlarm: Alarm)
|
||||||
{
|
{
|
||||||
self.currentAlarm = currentAlarm
|
self.currentAlarm = currentAlarm
|
||||||
@@ -37,10 +43,14 @@ class AlarmActivationViewController: UIViewController
|
|||||||
super.init(coder: coder)
|
super.init(coder: coder)
|
||||||
}
|
}
|
||||||
|
|
||||||
required init?(coder: NSCoder) {
|
/**
|
||||||
fatalError("init(coder:) has not been implemented")
|
Unused init
|
||||||
}
|
*/
|
||||||
|
required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") }
|
||||||
|
|
||||||
|
/**
|
||||||
|
Called when the alarm activates
|
||||||
|
*/
|
||||||
override func viewDidLoad()
|
override func viewDidLoad()
|
||||||
{
|
{
|
||||||
super.viewDidLoad()
|
super.viewDidLoad()
|
||||||
@@ -61,19 +71,26 @@ class AlarmActivationViewController: UIViewController
|
|||||||
runAlarm()
|
runAlarm()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Play alarm sound
|
||||||
|
*/
|
||||||
@objc func playSound()
|
@objc func playSound()
|
||||||
{
|
{
|
||||||
AudioServicesPlayAlertSound(currentAlarm!.alarmTone)
|
AudioServicesPlayAlertSound(currentAlarm!.alarmTone)
|
||||||
AudioServicesPlayAlertSound(kSystemSoundID_Vibrate)
|
AudioServicesPlayAlertSound(kSystemSoundID_Vibrate)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Run alarm dismissal logic
|
||||||
|
*/
|
||||||
func runAlarm()
|
func runAlarm()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
if let alarm = currentAlarm
|
if let alarm = currentAlarm
|
||||||
{
|
{
|
||||||
switch alarm.wakeMethod.name {
|
switch alarm.wakeMethod.name
|
||||||
|
{
|
||||||
case "Walk":
|
case "Walk":
|
||||||
walkAction()
|
walkAction()
|
||||||
case "Jump":
|
case "Jump":
|
||||||
@@ -99,7 +116,9 @@ class AlarmActivationViewController: UIViewController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//Verfies and ends factoring WVM
|
/**
|
||||||
|
Verfies and ends factoring WVM
|
||||||
|
*/
|
||||||
@IBAction func checkBinomialSolution(_ sender: Any) {
|
@IBAction func checkBinomialSolution(_ sender: Any) {
|
||||||
if let input = puzzleAnswerInput.text {
|
if let input = puzzleAnswerInput.text {
|
||||||
if let numericalInput = Int(input) {
|
if let numericalInput = Int(input) {
|
||||||
@@ -110,7 +129,9 @@ class AlarmActivationViewController: UIViewController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//Gets RPS choice
|
/**
|
||||||
|
Gets RPS choice
|
||||||
|
*/
|
||||||
@IBAction func rockChoice(_ sender: Any) {
|
@IBAction func rockChoice(_ sender: Any) {
|
||||||
if rpsAction(choice: .rock)! {
|
if rpsAction(choice: .rock)! {
|
||||||
endAlarm()
|
endAlarm()
|
||||||
@@ -118,7 +139,6 @@ class AlarmActivationViewController: UIViewController
|
|||||||
rpsResult.text = "Paper: You lost, try again"
|
rpsResult.text = "Paper: You lost, try again"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@IBAction func paperChoice(_ sender: Any) {
|
@IBAction func paperChoice(_ sender: Any) {
|
||||||
if rpsAction(choice: .paper)! {
|
if rpsAction(choice: .paper)! {
|
||||||
endAlarm()
|
endAlarm()
|
||||||
@@ -134,10 +154,11 @@ class AlarmActivationViewController: UIViewController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Standard way to turn off and close the alarm
|
||||||
//Standard way to turn off and close the alarm
|
*/
|
||||||
func endAlarm() {
|
func endAlarm()
|
||||||
|
{
|
||||||
timer?.invalidate()
|
timer?.invalidate()
|
||||||
print("Alarm solved")
|
print("Alarm solved")
|
||||||
dismiss(animated: true, completion: nil)
|
dismiss(animated: true, completion: nil)
|
||||||
|
|||||||
Reference in New Issue
Block a user